|
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, 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, simulation) |
| Initialize the MMA optimizer from JSON file. | |
| procedure, pass(this) | run (this, problem, design, simulation) |
| Define the optimization loop for MMA. | |
| procedure, pass(this) | validate (this, problem, design) |
| Validate the solution for the MMA optimizer. | |
| 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(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(optimizer_validate), deferred, pass, public | validate (this, problem, design) |
| Validate the solution. | |
| procedure, pass(this) | init_base (this, max_iterations, tolerance) |
| The base initializer. | |
Public Attributes | |
| type(mma_t) | mma |
| real(kind=rp) | scale |
| Scaling constraint_valuex and constraint_sensitivitiesx. (if auto_scale then constraint_valuex=scale else constraint_valuex=scale*constraint_valuex) When auto_scale is true, we use an adaptable scale for constraint_valuex and constraint_sensitivitiesx in every iteration (variable scale factors) | |
| logical | auto_scale |
| logical | enable_output |
| 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. | |
Definition at line 43 of file mma_optimizer.f90.
| procedure, pass(this) mma_optimizer::mma_optimizer_t::free | ( | class(mma_optimizer_t), intent(inout) | this | ) |
Definition at line 69 of file mma_optimizer.f90.
|
pure virtualinherited |
Definition at line 35 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(in) | problem, | ||
| class(design_t), intent(in) | design, | ||
| type(simulation_t), intent(in), optional | simulation | ||
| ) |
Definition at line 62 of file mma_optimizer.f90.
| generic mma_optimizer::mma_optimizer_t::init | ( | class(mma_optimizer_t), intent(inout) | this, |
| class(problem_t), intent(in) | problem, | ||
| class(design_t), intent(in) | design, | ||
| integer, intent(in) | max_iterations, | ||
| real(kind=rp), intent(in) | tolerance, | ||
| logical, intent(in) | enable_output, | ||
| type(simulation_t), intent(in), optional | simulation | ||
| ) |
Definition at line 62 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 41 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(in) | problem, | ||
| class(design_t), intent(in) | design, | ||
| integer, intent(in) | max_iterations, | ||
| real(kind=rp), intent(in) | tolerance, | ||
| logical, intent(in) | enable_output, | ||
| type(simulation_t), intent(in), optional | simulation | ||
| ) |
Definition at line 64 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(in) | problem, | ||
| class(design_t), intent(in) | design, | ||
| type(simulation_t), intent(in), optional | simulation | ||
| ) |
Definition at line 63 of file mma_optimizer.f90.
|
pure virtualinherited |
Definition at line 30 of file optimizer.f90.
| procedure, pass(this) mma_optimizer::mma_optimizer_t::run | ( | 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 67 of file mma_optimizer.f90.
|
pure virtualinherited |
Definition at line 33 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 68 of file mma_optimizer.f90.
|
pure virtualinherited |
Definition at line 38 of file optimizer.f90.
| logical mma_optimizer::mma_optimizer_t::auto_scale |
Definition at line 54 of file mma_optimizer.f90.
| logical mma_optimizer::mma_optimizer_t::enable_output |
Definition at line 57 of file mma_optimizer.f90.
|
inherited |
Definition at line 26 of file optimizer.f90.
|
inherited |
Definition at line 22 of file optimizer.f90.
| type(mma_t) mma_optimizer::mma_optimizer_t::mma |
Definition at line 45 of file mma_optimizer.f90.
| real(kind=rp) mma_optimizer::mma_optimizer_t::scale |
Definition at line 53 of file mma_optimizer.f90.
|
inherited |
Definition at line 24 of file optimizer.f90.