Neko-TOP
A portable framework for high-order spectral element flow toplogy optimization.
|
A topology optimization design variable. More...
Public Member Functions | |
generic, public | init init_from_json_sim |
Initialize the design. | |
generic, public | init init_from_components |
Initialize the design. | |
procedure, pass, public | init_from_json_sim (this, parameters, simulation) |
Initialize the design from a JSON file. | |
procedure, pass, public | init_from_components (this, simulation) |
Initialize the design from components. | |
procedure, pass(this) | get_values (this) |
Retrieve the design variables. | |
procedure, pass(this) | get_x (this) |
Retrieve the x location of the design variables. | |
procedure, pass(this) | get_y (this) |
Retrieve the y location of the design variables. | |
procedure, pass(this) | get_z (this) |
Retrieve the z location of the design variables. | |
procedure, pass(this) | update_design (this, values) |
Update the design. | |
procedure, pass(this) | map_forward (this) |
map (this will include everything from mapping | |
procedure, pass(this) | map_backward (this, sensitivity) |
this will contain chain rule for going backwards | |
procedure, pass(this) | write (this, idx) |
procedure, pass(this) | free (this) |
Destructor. | |
procedure, pass(this) | init_from_json_sim (this, parameters, simulation) |
Initialize the design. | |
procedure, pass(this) | init_from_json (this, parameters) |
Initialize the design. | |
procedure(design_free), deferred, pass, public | free (this) |
Free the design. | |
procedure(design_get_values), deferred, pass, public | get_values (this) |
Retrieve the design variables. | |
procedure, pass(this), public | get_x (this) |
Retrieve the x location of the design variables. | |
procedure, pass(this), public | get_y (this) |
Retrieve the y location of the design variables. | |
procedure, pass(this), public | get_z (this) |
Retrieve the z location of the design variables. | |
procedure(design_update_design), deferred, pass, public | update_design (this, values) |
Update the design variables. | |
procedure(design_map_forward), deferred, pass, public | map_forward (this) |
Run the forward mapping of the design. | |
procedure(design_map_backward), deferred, pass, public | map_backward (this, sensitivity) |
Run the backward mapping of the design. | |
procedure(design_write), deferred, pass, public | write (this, idx) |
Write the design. | |
procedure, pass(this) | init_base (this, n) |
Initialize the base design. | |
procedure, pass(this) | free_base (this) |
Free the base design. | |
procedure, pass(this), public | size (this) |
Return the number of design variables. | |
procedure, pass(this), public | size_global (this) |
Return the number of global design variables. | |
Public Attributes | |
type(field_t), pointer | brinkman_amplitude |
the mapped coefficient (Brinkman term) | |
type(field_t), pointer | sensitivity |
type(mapping_handler_t) | mapping |
A mapper to map the design into coefficients in the PDE. | |
class(point_zone_t), pointer | optimization_domain |
A mask indicating the optimization domain. | |
logical | if_mask |
A logical if we're restricting the optimization domain. | |
integer | n_global = 0 |
The global number of design variables. | |
Definition at line 65 of file design_brinkman.f90.
|
pure virtualinherited |
Definition at line 86 of file design.f90.
procedure, pass(this) brinkman_design::brinkman_design_t::free | ( | class(brinkman_design_t), intent(inout) | this | ) |
Definition at line 226 of file design_brinkman.f90.
|
inherited |
this | The design object. |
Definition at line 116 of file design.f90.
|
pure virtualinherited |
Definition at line 89 of file design.f90.
procedure, pass(this) brinkman_design::brinkman_design_t::get_values | ( | class(brinkman_design_t), intent(in) | this | ) |
Definition at line 196 of file design_brinkman.f90.
|
inherited |
Definition at line 91 of file design.f90.
procedure, pass(this) brinkman_design::brinkman_design_t::get_x | ( | class(brinkman_design_t), intent(in) | this | ) |
Definition at line 199 of file design_brinkman.f90.
|
inherited |
Definition at line 93 of file design.f90.
procedure, pass(this) brinkman_design::brinkman_design_t::get_y | ( | class(brinkman_design_t), intent(in) | this | ) |
Definition at line 201 of file design_brinkman.f90.
|
inherited |
Definition at line 95 of file design.f90.
procedure, pass(this) brinkman_design::brinkman_design_t::get_z | ( | class(brinkman_design_t), intent(in) | this | ) |
Definition at line 203 of file design_brinkman.f90.
generic, public brinkman_design::brinkman_design_t::init |
Definition at line 187 of file design_brinkman.f90.
generic, public brinkman_design::brinkman_design_t::init |
Definition at line 187 of file design_brinkman.f90.
|
inherited |
this | The design object. |
n | The number of design variables. |
Definition at line 114 of file design.f90.
procedure, pass, public brinkman_design::brinkman_design_t::init_from_components | ( | class(brinkman_design_t), intent(inout) | this, |
type(simulation_t), intent(inout) | simulation | ||
) |
Definition at line 192 of file design_brinkman.f90.
|
inherited |
This method is used to initialize the design from a JSON file. The design object will be initialized based on the parameters provided in the JSON file.
this | The design object. |
parameters | The JSON parameters. |
Definition at line 83 of file design.f90.
|
inherited |
This method is used to initialize the design from a JSON file. The design object will be initialized based on the parameters provided in the JSON file. The simulation object is also provided to allow for any additional setup.
this | The design object. |
parameters | The JSON parameters. |
simulation | The simulation object. |
Definition at line 73 of file design.f90.
procedure, pass, public brinkman_design::brinkman_design_t::init_from_json_sim | ( | class(brinkman_design_t), intent(inout) | this, |
type(json_file), intent(inout) | parameters, | ||
type(simulation_t), intent(inout) | simulation | ||
) |
Definition at line 189 of file design_brinkman.f90.
|
pure virtualinherited |
Definition at line 105 of file design.f90.
procedure, pass(this) brinkman_design::brinkman_design_t::map_backward | ( | class(brinkman_design_t), intent(inout) | this, |
type(vector_t), intent(in) | sensitivity | ||
) |
Definition at line 215 of file design_brinkman.f90.
|
pure virtualinherited |
Definition at line 102 of file design.f90.
procedure, pass(this) brinkman_design::brinkman_design_t::map_forward | ( | class(brinkman_design_t), intent(inout) | this | ) |
Definition at line 211 of file design_brinkman.f90.
|
inherited |
this | The design object. |
Definition at line 118 of file design.f90.
|
inherited |
Definition at line 120 of file design.f90.
|
pure virtualinherited |
Definition at line 98 of file design.f90.
procedure, pass(this) brinkman_design::brinkman_design_t::update_design | ( | class(brinkman_design_t), intent(inout) | this, |
type(vector_t), intent(inout) | values | ||
) |
Definition at line 206 of file design_brinkman.f90.
|
pure virtualinherited |
Definition at line 108 of file design.f90.
procedure, pass(this) brinkman_design::brinkman_design_t::write | ( | class(brinkman_design_t), intent(inout) | this, |
integer, intent(in) | idx | ||
) |
Definition at line 223 of file design_brinkman.f90.
type(field_t), pointer brinkman_design::brinkman_design_t::brinkman_amplitude |
Definition at line 82 of file design_brinkman.f90.
logical brinkman_design::brinkman_design_t::if_mask |
Definition at line 172 of file design_brinkman.f90.
type(mapping_handler_t) brinkman_design::brinkman_design_t::mapping |
Definition at line 167 of file design_brinkman.f90.
|
inherited |
Definition at line 56 of file design.f90.
class(point_zone_t), pointer brinkman_design::brinkman_design_t::optimization_domain |
Definition at line 170 of file design_brinkman.f90.
type(field_t), pointer brinkman_design::brinkman_design_t::sensitivity |
Definition at line 114 of file design_brinkman.f90.