|
Neko-TOP
A portable framework for high-order spectral element flow toplogy optimization.
|


Public Member Functions | |
| generic | init (this, parameters, problem, design, simulation) |
| Initialize the MMA optimizer from JSON file. | |
| generic | init (this, problem, design, max_iterations, tolerance, enable_output, solver_parameters, simulation) |
| Initialize the MMA optimizer from JSON file. | |
| procedure, pass(this) | init_from_json (this, parameters, problem, design, simulation) |
| Initialize the MMA optimizer from JSON file. | |
| procedure, pass(this) | init_from_components (this, problem, design, max_iterations, tolerance, enable_output, solver_parameters, simulation) |
| Initialize the MMA optimizer from JSON file. | |
| procedure, pass(this) | initialize (this, problem, design, simulation) |
| Prepare the MMA optimizer before starting the optimization loop. | |
| procedure, pass(this) | step (this, iter, problem, design, simulation) |
| Function for computing a step in the optimization loop. | |
| procedure, pass(this) | validate (this, problem, design) |
| Validate the solution for the MMA optimizer. | |
| procedure, pass(this) | write (this, iter, problem) |
| Write the progress of the MMA optimizer to the log file This subroutine logs the current iteration, objective values, constraint values, and convergence metrics to a CSV file. | |
| procedure, pass(this) | free (this) |
| procedure(optimizer_init_from_json), deferred, pass, public | init_from_json (this, parameters, problem, design, simulation) |
| Initialize the optimizer, associate it with a specific problem. | |
| procedure, pass, public | run (this, problem, design, simulation) |
| Run the optimization loop. | |
| procedure(optimizer_initialize), deferred, pass, public | initialize (this, problem, design, simulation) |
| Prepare the optimizer before starting the optimization loop. | |
| procedure(optimizer_step), deferred, pass, public | step (this, iter, problem, design, simulation) |
| Perform a single optimization step. | |
| procedure(optimizer_free), deferred, pass, public | free (this) |
| Free resources. | |
| procedure(optimizer_validate), deferred, pass, public | validate (this, problem, design) |
| Validate the solution. | |
| procedure(optimizer_write), deferred, pass, public | write (this, iter, problem) |
| Write the progress of the optimizer to the log file. | |
| procedure, pass(this) | init_base (this, max_iterations, tolerance) |
| The base initializer. | |
| procedure, pass(this) | free_base (this) |
| Free base resources. | |
Public Attributes | |
| integer, public | max_iterations |
| The maximum number of iterations. | |
| real(kind=rp), public | tolerance |
| The tolerance for the optimization loop. | |
Definition at line 66 of file mma_optimizer.f90.
| procedure, pass(this) mma_optimizer::mma_optimizer_t::free | ( | class(mma_optimizer_t), intent(inout) | this | ) |
Definition at line 98 of file mma_optimizer.f90.
|
pure virtualinherited |
Definition at line 74 of file optimizer.f90.
|
inherited |
| this | The optimizer object. |
Definition at line 84 of file optimizer.f90.
| generic mma_optimizer::mma_optimizer_t::init | ( | class(mma_optimizer_t), intent(inout) | this, |
| type(json_file), intent(inout) | parameters, | ||
| class(problem_t), intent(inout) | problem, | ||
| class(design_t), intent(in) | design, | ||
| type(simulation_t), intent(in), optional | simulation | ||
| ) |
Definition at line 89 of file mma_optimizer.f90.
| generic mma_optimizer::mma_optimizer_t::init | ( | class(mma_optimizer_t), intent(inout) | this, |
| class(problem_t), intent(inout) | problem, | ||
| class(design_t), intent(in) | design, | ||
| integer, intent(in) | max_iterations, | ||
| real(kind=rp), intent(in) | tolerance, | ||
| logical, intent(in) | enable_output, | ||
| type(json_file), intent(inout), optional | solver_parameters, | ||
| type(simulation_t), intent(in), optional | simulation | ||
| ) |
Definition at line 89 of file mma_optimizer.f90.
|
inherited |
| this | The optimizer object. |
| max_iterations | The maximum number of iterations. |
| tolerance | The tolerance for the optimization loop. |
Definition at line 82 of file optimizer.f90.
| procedure, pass(this) mma_optimizer::mma_optimizer_t::init_from_components | ( | class(mma_optimizer_t), intent(inout) | this, |
| class(problem_t), intent(inout) | problem, | ||
| class(design_t), intent(in) | design, | ||
| integer, intent(in) | max_iterations, | ||
| real(kind=rp), intent(in) | tolerance, | ||
| logical, intent(in) | enable_output, | ||
| type(json_file), intent(inout), optional | solver_parameters, | ||
| type(simulation_t), intent(in), optional | simulation | ||
| ) |
Definition at line 91 of file mma_optimizer.f90.
| procedure, pass(this) mma_optimizer::mma_optimizer_t::init_from_json | ( | class(mma_optimizer_t), intent(inout) | this, |
| type(json_file), intent(inout) | parameters, | ||
| class(problem_t), intent(inout) | problem, | ||
| class(design_t), intent(in) | design, | ||
| type(simulation_t), intent(in), optional | simulation | ||
| ) |
Definition at line 90 of file mma_optimizer.f90.
|
pure virtualinherited |
Definition at line 64 of file optimizer.f90.
| procedure, pass(this) mma_optimizer::mma_optimizer_t::initialize | ( | class(mma_optimizer_t), intent(inout) | this, |
| class(problem_t), intent(inout) | problem, | ||
| class(design_t), intent(inout) | design, | ||
| type(simulation_t), intent(inout), optional | simulation | ||
| ) |
Definition at line 94 of file mma_optimizer.f90.
|
pure virtualinherited |
Definition at line 69 of file optimizer.f90.
|
inherited |
| this | The optimizer object. |
| problem | The problem object. |
| design | The design object. |
| simulation | The simulation object. |
Definition at line 67 of file optimizer.f90.
| procedure, pass(this) mma_optimizer::mma_optimizer_t::step | ( | class(mma_optimizer_t), intent(inout) | this, |
| integer, intent(in) | iter, | ||
| class(problem_t), intent(inout) | problem, | ||
| class(design_t), intent(inout) | design, | ||
| type(simulation_t), intent(inout), optional | simulation | ||
| ) |
Definition at line 95 of file mma_optimizer.f90.
|
pure virtualinherited |
Definition at line 72 of file optimizer.f90.
| procedure, pass(this) mma_optimizer::mma_optimizer_t::validate | ( | class(mma_optimizer_t), intent(inout) | this, |
| class(problem_t), intent(in) | problem, | ||
| class(design_t), intent(in) | design | ||
| ) |
Definition at line 96 of file mma_optimizer.f90.
|
pure virtualinherited |
Definition at line 77 of file optimizer.f90.
| procedure, pass(this) mma_optimizer::mma_optimizer_t::write | ( | class(mma_optimizer_t), intent(inout) | this, |
| integer, intent(in) | iter, | ||
| class(problem_t), intent(in) | problem | ||
| ) |
| this | The MMA optimizer object. |
| iter | The current iteration number. |
| problem | The problem object. |
Definition at line 97 of file mma_optimizer.f90.
|
pure virtualinherited |
Definition at line 79 of file optimizer.f90.
Definition at line 58 of file optimizer.f90.
Definition at line 60 of file optimizer.f90.