yaeos__optimizers_powell_wrap Module



Variables

Type Visibility Attributes Name Initial
class(*), private, pointer :: priv_data
procedure(obj_func), private, pointer :: priv_foo

Derived Types

type, public, extends(Optimizer) ::  PowellWrapper

Wrapper derived type to optimize with the Powell method

Components

Type Visibility Attributes Name Initial
real(kind=pr), public, allocatable :: parameter_step(:)
real(kind=pr), public :: solver_tolerance = 1e-9_pr
logical, public :: verbose

Type-Bound Procedures

procedure, public :: optimize => powell_optimize

Subroutines

private subroutine foo_wrap(n, x, f)

Arguments

Type IntentOptional Attributes Name
integer :: n
real(kind=pr) :: x(*)
real(kind=pr) :: f

private subroutine powell_optimize(self, foo, X, F, data)

Arguments

Type IntentOptional Attributes Name
class(PowellWrapper), intent(inout) :: self
procedure(obj_func) :: foo
real(kind=pr), intent(inout) :: X(:)
real(kind=pr), intent(out) :: F
class(*), intent(inout), optional, target :: data