Neko-TOP
A portable framework for high-order spectral element flow toplogy optimization.
Loading...
Searching...
No Matches
lube_term_objective Module Reference

Implements the lube_term_objective_t type.

Data Types

type  lube_term_objective_t
 An objective function corresponding to minimum dissipation $ F = \int_\Omega |\nabla u|^2 d \Omega + K \int_Omega \frac{1}{2} \chi |\mathbf{u}|^2 d \Omega $. More...
 

Functions/Subroutines

subroutine lube_term_init_json (this, json, design, simulation)
 The common constructor using a JSON object.
 
subroutine lube_term_init_attributes (this, design, simulation, weight, name, mask_name, k)
 The actual constructor.
 
subroutine lube_term_free (this)
 Destructor.
 
subroutine lube_term_update_value (this, design)
 Compute the objective function.
 
subroutine lube_term_update_sensitivity (this, design)
 update_value the sensitivity of the objective function with respect to $\chi$
 

Function/Subroutine Documentation

◆ lube_term_free()

subroutine lube_term_objective::lube_term_free ( class(lube_term_objective_t), intent(inout this)
private

Definition at line 209 of file lube_term_objective.f90.

◆ lube_term_init_attributes()

subroutine lube_term_objective::lube_term_init_attributes ( class(lube_term_objective_t), intent(inout this,
class(design_t), intent(in design,
type(simulation_t), intent(inout), target  simulation,
real(kind=rp), intent(in weight,
character(len=*), intent(in name,
character(len=*), intent(in mask_name,
real(kind=rp), intent(in k 
)
private
Parameters
designthe design.
simulationthe simulation.
weightthe weight of the objective function.
mask_namethe name of the mask.
Kthe coefficient for the lube term.

Definition at line 156 of file lube_term_objective.f90.

◆ lube_term_init_json()

subroutine lube_term_objective::lube_term_init_json ( class(lube_term_objective_t), intent(inout this,
type(json_file), intent(inout json,
class(design_t), intent(in design,
type(simulation_t), intent(inout), target  simulation 
)
Parameters
designthe design.
fluidthe fluid scheme.
adjointthe fluid adjoint.

Definition at line 132 of file lube_term_objective.f90.

◆ lube_term_update_sensitivity()

subroutine lube_term_objective::lube_term_update_sensitivity ( class(lube_term_objective_t), intent(inout this,
class(design_t), intent(in design 
)
private
Parameters
designthe design.

Definition at line 267 of file lube_term_objective.f90.

◆ lube_term_update_value()

subroutine lube_term_objective::lube_term_update_value ( class(lube_term_objective_t), intent(inout this,
class(design_t), intent(in design 
)
private
Parameters
designthe design.
fluidthe fluid scheme.
adjointthe fluid adjoint.

Definition at line 225 of file lube_term_objective.f90.