Neko-TOP
A portable framework for high-order spectral element flow toplogy optimization.
Loading...
Searching...
No Matches
optimizer::optimizer_t Type Referenceabstract

Abstract optimizer class. More...

Inheritance diagram for optimizer::optimizer_t:
Collaboration diagram for optimizer::optimizer_t:

Public Member Functions

procedure(optimizer_init_from_json), deferred, pass, public init_from_json (this, parameters, problem, design, max_iterations, tolerance, simulation)
 Initialize the optimizer, associate it with a specific problem.
 
procedure(optimizer_run), deferred, pass, public run (this, problem, design, simulation)
 Run the optimization loop.
 
procedure(optimizer_free), deferred, pass, public free (this)
 Free resources.
 
procedure, pass(this) init_base (this, max_iterations, tolerance)
 The base initializer.
 

Public Attributes

integer, public max_iterations
 The maximum number of iterations.
 
real(kind=rp), public tolerance
 The tolerance for the optimization loop.
 
type(csv_file_t), public logger
 A file writer to document the convergence history.
 

Detailed Description

Definition at line 18 of file optimizer.f90.

Member Function/Subroutine Documentation

◆ free()

procedure(optimizer_free), deferred, pass, public optimizer::optimizer_t::free ( class(optimizer_t), intent(inout)  this)
pure virtual

Definition at line 35 of file optimizer.f90.

◆ init_base()

procedure, pass(this) optimizer::optimizer_t::init_base ( class(optimizer_t), intent(inout)  this,
integer, intent(in)  max_iterations,
real(kind=rp), intent(in)  tolerance 
)
Parameters
thisThe optimizer object.
max_iterationsThe maximum number of iterations.
toleranceThe tolerance for the optimization loop.

Definition at line 38 of file optimizer.f90.

◆ init_from_json()

procedure(optimizer_init_from_json), deferred, pass, public optimizer::optimizer_t::init_from_json ( class(optimizer_t), intent(inout)  this,
type(json_file), intent(inout)  parameters,
class(problem_t), intent(in)  problem,
class(design_t), intent(in)  design,
integer, intent(in)  max_iterations,
real(kind=rp), intent(in)  tolerance,
type(simulation_t), intent(in), optional  simulation 
)
pure virtual

Definition at line 30 of file optimizer.f90.

◆ run()

procedure(optimizer_run), deferred, pass, public optimizer::optimizer_t::run ( class(optimizer_t), intent(inout)  this,
class(problem_t), intent(inout)  problem,
class(design_t), intent(inout)  design,
type(simulation_t), intent(inout), optional  simulation 
)
pure virtual

Definition at line 33 of file optimizer.f90.

Member Data Documentation

◆ logger

type(csv_file_t), public optimizer::optimizer_t::logger

Definition at line 26 of file optimizer.f90.

◆ max_iterations

integer, public optimizer::optimizer_t::max_iterations

Definition at line 22 of file optimizer.f90.

◆ tolerance

real(kind=rp), public optimizer::optimizer_t::tolerance

Definition at line 24 of file optimizer.f90.


The documentation for this type was generated from the following file: