Neko-TOP
A portable framework for high-order spectral element flow toplogy optimization.
|
Abstract class for handling mapping_cascade. More...
Public Member Functions | |
procedure, pass(this) | init_base (this, coef) |
Constructor. | |
procedure, pass(this) | free (this) |
Destructor. | |
procedure, pass(this) | apply_forward (this, x_out, x_in) |
Cycle through all the mapping_cascade and return the final field. | |
procedure, pass(this) | apply_backward (this, sens_out, sens_in) |
Cycle backwards through all the mapping_cascade and return the sensitivity. | |
generic | add (this, mapping) |
Generic interface to add a mapping to the list. | |
generic | add (this, json, name) |
Generic interface to add a mapping to the list. | |
procedure, pass(this) | add_mapping (this, mapping) |
Append a new mapping to the mapping_cascade array. | |
procedure, pass(this) | add_json_mappings (this, json, name) |
Read from the json file and initialize the mapping_cascade. | |
Public Attributes | |
class(mapping_wrapper_t), dimension(:), allocatable | mapping_cascade |
Array of mapping_cascade. | |
type(field_list_t) | rhs_fields |
The right-hand side. | |
type(coef_t), pointer | coef |
The coefficients of the (space, mesh) pair. | |
This class is responsible for managing the mapping_cascade in a sequential manor. It is also responsible for using the chain rule to propogate sensitivity backwards throughout the system.
Definition at line 60 of file mapping_handler.f90.
generic mapping_handler::mapping_handler_t::add | ( | class(mapping_handler_t), intent(inout) | this, |
type(json_file), intent(inout) | json, | ||
character(len=*), intent(in) | name | ||
) |
Definition at line 81 of file mapping_handler.f90.
generic mapping_handler::mapping_handler_t::add | ( | class(mapping_handler_t), intent(inout) | this, |
class(mapping_t), intent(in) | mapping | ||
) |
this | The handler object |
mapping | The mapping to be added. |
Definition at line 81 of file mapping_handler.f90.
procedure, pass(this) mapping_handler::mapping_handler_t::add_json_mappings | ( | class(mapping_handler_t), intent(inout) | this, |
type(json_file), intent(inout) | json, | ||
character(len=*), intent(in) | name | ||
) |
Definition at line 86 of file mapping_handler.f90.
procedure, pass(this) mapping_handler::mapping_handler_t::add_mapping | ( | class(mapping_handler_t), intent(inout) | this, |
class(mapping_t), intent(in) | mapping | ||
) |
this | The handler object |
mapping | The mapping to be added. |
Definition at line 83 of file mapping_handler.f90.
procedure, pass(this) mapping_handler::mapping_handler_t::apply_backward | ( | class(mapping_handler_t), intent(inout) | this, |
type(field_t), intent(inout) | sens_out, | ||
type(field_t), intent(in) | sens_in | ||
) |
this | The handler object |
sens_out | The sensitivity after applying the chain rule ( \(\frac{\partial F}{\partial \rho}\)) |
sens_in | The sensitivity before applying the chain rule ( \(\frac{\partial F}{\partial \tilde{\rho}}\)) |
Definition at line 79 of file mapping_handler.f90.
procedure, pass(this) mapping_handler::mapping_handler_t::apply_forward | ( | class(mapping_handler_t), intent(inout) | this, |
type(field_t), intent(inout) | x_out, | ||
type(field_t), intent(in) | x_in | ||
) |
this | The handler object |
X_out | The mapped field ( \(\tilde{\rho}\)) |
X_in | The unmapped field ( \(\rho\)) |
Definition at line 76 of file mapping_handler.f90.
procedure, pass(this) mapping_handler::mapping_handler_t::free | ( | class(mapping_handler_t), intent(inout) | this | ) |
Definition at line 74 of file mapping_handler.f90.
procedure, pass(this) mapping_handler::mapping_handler_t::init_base | ( | class(mapping_handler_t), intent(inout) | this, |
type(coef_t), intent(in), target | coef | ||
) |
Definition at line 72 of file mapping_handler.f90.
type(coef_t), pointer mapping_handler::mapping_handler_t::coef |
Definition at line 68 of file mapping_handler.f90.
class(mapping_wrapper_t), dimension(:), allocatable mapping_handler::mapping_handler_t::mapping_cascade |
Definition at line 64 of file mapping_handler.f90.
type(field_list_t) mapping_handler::mapping_handler_t::rhs_fields |
Definition at line 66 of file mapping_handler.f90.