(git:3add494)
|
routines that optimize a functional using the limited memory bfgs quasi-newton method. The process set up so that a master runs the real optimizer and the others help then to calculate the objective function. The arguments for the objective function are physically present in every processor (nedeed in the actual implementation of pao). In the future tha arguments themselves could be distributed. More...
Functions/Subroutines | |
subroutine, public | cp_opt_gopt_create (optimizer, para_env, obj_funct, x0, m, print_every, wanted_relative_f_delta, wanted_projected_gradient, lower_bound, upper_bound, kind_of_bound, master, max_f_per_iter, trust_radius) |
initializes the optimizer More... | |
subroutine, public | cp_opt_gopt_release (optimizer) |
releases the optimizer (see doc/ReferenceCounting.html) More... | |
logical function, public | cp_opt_gopt_next (optimizer, n_iter, f, last_f, projected_gradient, converged, geo_section, force_env, gopt_param, spgr) |
goes to the next optimal point (after an optimizer iteration) returns true if converged More... | |
subroutine, public | cp_opt_gopt_stop (optimizer) |
stops the optimization More... | |
routines that optimize a functional using the limited memory bfgs quasi-newton method. The process set up so that a master runs the real optimizer and the others help then to calculate the objective function. The arguments for the objective function are physically present in every processor (nedeed in the actual implementation of pao). In the future tha arguments themselves could be distributed.
subroutine, public cp_lbfgs_optimizer_gopt::cp_opt_gopt_create | ( | type(cp_lbfgs_opt_gopt_type), intent(out) | optimizer, |
type(mp_para_env_type), pointer | para_env, | ||
type(gopt_f_type), pointer | obj_funct, | ||
real(kind=dp), dimension(:), intent(in) | x0, | ||
integer, intent(in), optional | m, | ||
integer, intent(in), optional | print_every, | ||
real(kind=dp), intent(in), optional | wanted_relative_f_delta, | ||
real(kind=dp), intent(in), optional | wanted_projected_gradient, | ||
real(kind=dp), dimension(size(x0)), intent(in), optional | lower_bound, | ||
real(kind=dp), dimension(size(x0)), intent(in), optional | upper_bound, | ||
integer, dimension(size(x0)), intent(in), optional | kind_of_bound, | ||
integer, intent(in), optional | master, | ||
integer, intent(in), optional | max_f_per_iter, | ||
real(kind=dp), intent(in), optional | trust_radius | ||
) |
initializes the optimizer
optimizer | ... |
para_env | ... |
obj_funct | ... |
x0 | ... |
m | ... |
print_every | ... |
wanted_relative_f_delta | ... |
wanted_projected_gradient | ... |
lower_bound | ... |
upper_bound | ... |
kind_of_bound | ... |
master | ... |
max_f_per_iter | ... |
trust_radius | ... |
Definition at line 202 of file cp_lbfgs_optimizer_gopt.F.
subroutine, public cp_lbfgs_optimizer_gopt::cp_opt_gopt_release | ( | type(cp_lbfgs_opt_gopt_type), intent(inout) | optimizer | ) |
releases the optimizer (see doc/ReferenceCounting.html)
optimizer | the object that should be released |
Definition at line 303 of file cp_lbfgs_optimizer_gopt.F.
logical function, public cp_lbfgs_optimizer_gopt::cp_opt_gopt_next | ( | type(cp_lbfgs_opt_gopt_type), intent(inout) | optimizer, |
integer, intent(out), optional | n_iter, | ||
real(kind=dp), intent(out), optional | f, | ||
real(kind=dp), intent(out), optional | last_f, | ||
real(kind=dp), intent(out), optional | projected_gradient, | ||
logical, intent(out) | converged, | ||
type(section_vals_type), pointer | geo_section, | ||
type(force_env_type), pointer | force_env, | ||
type(gopt_param_type), pointer | gopt_param, | ||
type(spgr_type), optional, pointer | spgr | ||
) |
goes to the next optimal point (after an optimizer iteration) returns true if converged
optimizer | the optimizer that goes to the next point |
n_iter | ... |
f | ... |
last_f | ... |
projected_gradient | ... |
converged | ... |
geo_section | ... |
force_env | ... |
gopt_param | ... |
spgr | ... |
Definition at line 771 of file cp_lbfgs_optimizer_gopt.F.
subroutine, public cp_lbfgs_optimizer_gopt::cp_opt_gopt_stop | ( | type(cp_lbfgs_opt_gopt_type), intent(inout) | optimizer | ) |
stops the optimization
optimizer | ... |
Definition at line 801 of file cp_lbfgs_optimizer_gopt.F.