Neko-TOP
A portable framework for high-order spectral element flow toplogy optimization.
|
Type to manage multiple adjoint scalar transport equations. More...
Public Member Functions | |
generic | init (this, n_adjoint_scalars, n_primal_scalars, msh, coef, gs, params_adjoint, params_primal, numerics_params, user, chkp, ulag, vlag, wlag, time_scheme, rho) |
Initialize the adjoint_scalars container. | |
generic | init (this, msh, coef, gs, params_adjoint, params_primal, numerics_params, user, chkp, ulag, vlag, wlag, time_scheme, rho) |
Initialize the adjoint_scalars container. | |
procedure | step (this, time, ext_bdf, dt_controller) |
Perform a time step for all scalar fields. | |
procedure | restart (this, chkp) |
Restart from checkpoint data. | |
procedure | validate (this) |
Check if the configuration is valid. | |
procedure | free (this) |
Clean up all resources. | |
Public Attributes | |
class(adjoint_scalar_scheme_t), dimension(:), allocatable | adjoint_scalar_fields |
The scalar fields. | |
class(ksp_t), allocatable | shared_ksp |
Shared KSP solver for all scalar fields. | |
Definition at line 61 of file adjoint_scalars.f90.
procedure adjoint_scalars::adjoint_scalars_t::free | ( | class(adjoint_scalars_t), intent(inout) | this | ) |
Definition at line 78 of file adjoint_scalars.f90.
generic adjoint_scalars::adjoint_scalars_t::init | ( | class(adjoint_scalars_t), intent(inout) | this, |
type(mesh_t), intent(in), target | msh, | ||
type(coef_t), intent(in), target | coef, | ||
type(gs_t), intent(inout), target | gs, | ||
type(json_file), intent(inout), target | params_adjoint, | ||
type(json_file), intent(inout), target | params_primal, | ||
type(json_file), intent(inout), target | numerics_params, | ||
type(user_t), intent(in), target | user, | ||
type(chkp_t), intent(inout), target | chkp, | ||
type(field_series_t), intent(in), target | ulag, | ||
type(field_series_t), intent(in), target | vlag, | ||
type(field_series_t), intent(in), target | wlag, | ||
type(time_scheme_controller_t), intent(in), target | time_scheme, | ||
type(field_t), intent(in), target | rho | ||
) |
Initialize a single adjoint_scalar for backwards compatibility.
[in,out] | this | The adjoint_scalars container. |
[in] | msh | The mesh structure used to define the field topology. |
coef | The SEM coefficients. | |
[in,out] | gs | Gather scatter object. |
[in,out] | params_adjoint | JSON parameters specific to the adjoint scalars. |
[in,out] | params_primal | JSON parameters specific to the primal scalars. |
[in,out] | numerics_params | JSON structure containing numerics parameters. |
[in] | user | User-defined interface. |
[in,out] | chkp | Checkpointing structure. |
[in] | ulag,vlag,wlag | Field history of the primal velocity fields. |
[in] | time_scheme | Time scheme controller. |
[in] | rho | Density field. |
Definition at line 68 of file adjoint_scalars.f90.
generic adjoint_scalars::adjoint_scalars_t::init | ( | class(adjoint_scalars_t), intent(inout) | this, |
integer, intent(in) | n_adjoint_scalars, | ||
integer, intent(in) | n_primal_scalars, | ||
type(mesh_t), intent(in), target | msh, | ||
type(coef_t), intent(in), target | coef, | ||
type(gs_t), intent(inout), target | gs, | ||
type(json_file), intent(inout), target | params_adjoint, | ||
type(json_file), intent(inout), target | params_primal, | ||
type(json_file), intent(inout), target | numerics_params, | ||
type(user_t), intent(in), target | user, | ||
type(chkp_t), intent(inout), target | chkp, | ||
type(field_series_t), intent(in), target | ulag, | ||
type(field_series_t), intent(in), target | vlag, | ||
type(field_series_t), intent(in), target | wlag, | ||
type(time_scheme_controller_t), intent(in), target | time_scheme, | ||
type(field_t), intent(in), target | rho | ||
) |
Initialize the adjoint_scalars container.
[in,out] | this | The adjoint_scalars container. |
[in] | n_adjoint_scalars | The number of adjoint scalars. |
[in] | n_primal_scalars | The number of primal scalars. |
[in] | msh | The mesh structure used to define the field topology. |
coef | The SEM coefficients. | |
[in,out] | gs | Gather scatter object. |
[in,out] | params_adjoint | JSON parameters specific to the adjoint scalars. |
[in,out] | params_primal | JSON parameters specific to the primal scalars. |
[in,out] | numerics_params | JSON structure containing numerics parameters. |
[in] | user | User-defined interface. |
[in,out] | chkp | Checkpointing structure. |
[in] | ulag,vlag,wlag | Field history of the primal velocity fields. |
[in] | time_scheme | Time scheme controller. |
[in] | rho | Density field. |
Definition at line 68 of file adjoint_scalars.f90.
procedure adjoint_scalars::adjoint_scalars_t::restart | ( | class(adjoint_scalars_t), intent(inout) | this, |
type(chkp_t), intent(inout) | chkp | ||
) |
Definition at line 74 of file adjoint_scalars.f90.
procedure adjoint_scalars::adjoint_scalars_t::step | ( | class(adjoint_scalars_t), intent(inout) | this, |
type(time_state_t), intent(in) | time, | ||
type(time_scheme_controller_t), intent(inout) | ext_bdf, | ||
type(time_step_controller_t), intent(inout) | dt_controller | ||
) |
Definition at line 72 of file adjoint_scalars.f90.
procedure adjoint_scalars::adjoint_scalars_t::validate | ( | class(adjoint_scalars_t), intent(inout) | this | ) |
Definition at line 76 of file adjoint_scalars.f90.
class(adjoint_scalar_scheme_t), dimension(:), allocatable adjoint_scalars::adjoint_scalars_t::adjoint_scalar_fields |
Definition at line 63 of file adjoint_scalars.f90.
class(ksp_t), allocatable adjoint_scalars::adjoint_scalars_t::shared_ksp |
Definition at line 65 of file adjoint_scalars.f90.