Neko-TOP
A portable framework for high-order spectral element flow toplogy optimization.
Loading...
Searching...
No Matches
adjoint_fluid_scheme::adjoint_fluid_scheme_t Type Referenceabstract

Base type of all fluid formulations. More...

Inheritance diagram for adjoint_fluid_scheme::adjoint_fluid_scheme_t:
Collaboration diagram for adjoint_fluid_scheme::adjoint_fluid_scheme_t:

Public Member Functions

procedure(adjoint_fluid_scheme_init_intrf), deferred, pass init (this, msh, lx, params, user, chkp)
 Constructor.
 
procedure(adjoint_fluid_scheme_free_intrf), deferred, pass free (this)
 Destructor.
 
procedure(adjoint_fluid_scheme_step_intrf), deferred, pass step (this, time, dt_controller)
 Advance one step in time.
 
procedure(adjoint_fluid_scheme_restart_intrf), deferred, pass restart (this, chkp)
 Restart from a checkpoint.
 
procedure(adjoint_fluid_scheme_setup_bcs_intrf), deferred, pass setup_bcs (this, user, params)
 Setup boundary conditions.
 
procedure(validate_intrf), deferred, pass validate (this)
 Set the user inflow.
 
procedure(fluid_scheme_base_compute_cfl_intrf), deferred, pass compute_cfl (this, dt)
 Compute the CFL number.
 
procedure(update_material_properties), deferred, pass update_material_properties (this, t, tstep)
 Set rho and mu.
 

Public Attributes

character(len=:), allocatable name
 A name that can be used to distinguish this solver in e.g. user routines.
 
type(space_t) xh
 Function space \( X_h \).
 
type(dofmap_t) dm_xh
 Dofmap associated with \( X_h \).
 
type(gs_t) gs_xh
 Gather-scatter associated with \( X_h \).
 
type(coef_t) c_xh
 Coefficients associated with \( X_h \).
 
type(time_scheme_controller_t), allocatable ext_bdf
 
type(field_t), pointer u_adj => null()
 The velocity field.
 
type(field_t), pointer v_adj => null()
 y-component of Velocity
 
type(field_t), pointer w_adj => null()
 z-component of Velocity
 
type(field_t), pointer p_adj => null()
 Pressure.
 
type(field_series_t) ulag
 
type(field_series_t) vlag
 
type(field_series_t) wlag
 fluid field (lag)
 
type(chkp_t), pointer chkp => null()
 Checkpoint.
 
type(field_t), pointer f_adj_x => null()
 X-component of the right-hand side.
 
type(field_t), pointer f_adj_y => null()
 Y-component of the right-hand side.
 
type(field_t), pointer f_adj_z => null()
 Z-component of the right-hand side.
 
type(bc_list_t) bcs_prs
 Boundary conditions.
 
type(bc_list_t) bcs_vel
 
type(json_file), pointer params
 Parameters.
 
type(mesh_t), pointer msh => null()
 Mesh.
 
character(len=neko_msh_max_zlbl_len), dimension(:), allocatable bc_labels
 Boundary condition labels (if any)
 
type(field_t) rho
 Density field.
 
type(field_t) mu
 The dynamic viscosity.
 
type(field_list_t) material_properties
 A helper that packs material properties to pass to the user routine.
 
logical freeze = .false.
 Is the fluid frozen at the moment.
 

Static Public Attributes

procedure(user_material_properties), pointer, nopass user_material_properties => null()
 User material properties routine.
 

Detailed Description

Definition at line 93 of file adjoint_fluid_scheme.f90.

Member Function/Subroutine Documentation

◆ compute_cfl()

procedure(fluid_scheme_base_compute_cfl_intrf), deferred, pass adjoint_fluid_scheme::adjoint_fluid_scheme_t::compute_cfl ( class(adjoint_fluid_scheme_t), intent(in)  this,
real(kind=rp), intent(in)  dt 
)
pure virtual

Definition at line 166 of file adjoint_fluid_scheme.f90.

◆ free()

procedure(adjoint_fluid_scheme_free_intrf), deferred, pass adjoint_fluid_scheme::adjoint_fluid_scheme_t::free ( class(adjoint_fluid_scheme_t), intent(inout)  this)
pure virtual

Definition at line 153 of file adjoint_fluid_scheme.f90.

◆ init()

procedure(adjoint_fluid_scheme_init_intrf), deferred, pass adjoint_fluid_scheme::adjoint_fluid_scheme_t::init ( class(adjoint_fluid_scheme_t), intent(inout), target  this,
type(mesh_t), intent(inout), target  msh,
integer, intent(in)  lx,
type(json_file), intent(inout), target  params,
type(user_t), intent(in), target  user,
type(chkp_t), intent(inout), target  chkp 
)
pure virtual

Definition at line 151 of file adjoint_fluid_scheme.f90.

◆ restart()

procedure(adjoint_fluid_scheme_restart_intrf), deferred, pass adjoint_fluid_scheme::adjoint_fluid_scheme_t::restart ( class(adjoint_fluid_scheme_t), intent(inout), target  this,
type(chkp_t), intent(inout)  chkp 
)
pure virtual

Definition at line 157 of file adjoint_fluid_scheme.f90.

◆ setup_bcs()

procedure(adjoint_fluid_scheme_setup_bcs_intrf), deferred, pass adjoint_fluid_scheme::adjoint_fluid_scheme_t::setup_bcs ( class(adjoint_fluid_scheme_t), intent(inout)  this,
type(user_t), intent(in), target  user,
type(json_file), intent(inout)  params 
)
pure virtual

Definition at line 160 of file adjoint_fluid_scheme.f90.

◆ step()

procedure(adjoint_fluid_scheme_step_intrf), deferred, pass adjoint_fluid_scheme::adjoint_fluid_scheme_t::step ( class(adjoint_fluid_scheme_t), intent(inout), target  this,
type(time_state_t), intent(in)  time,
type(time_step_controller_t), intent(in)  dt_controller 
)
pure virtual

Definition at line 155 of file adjoint_fluid_scheme.f90.

◆ update_material_properties()

procedure(update_material_properties), deferred, pass adjoint_fluid_scheme::adjoint_fluid_scheme_t::update_material_properties ( class(adjoint_fluid_scheme_t), intent(inout)  this,
real(kind=rp), intent(in)  t,
integer, intent(in)  tstep 
)
pure virtual

Definition at line 168 of file adjoint_fluid_scheme.f90.

◆ validate()

procedure(validate_intrf), deferred, pass adjoint_fluid_scheme::adjoint_fluid_scheme_t::validate ( class(adjoint_fluid_scheme_t), intent(inout), target  this)
pure virtual

Definition at line 164 of file adjoint_fluid_scheme.f90.

Member Data Documentation

◆ bc_labels

character(len=neko_msh_max_zlbl_len), dimension(:), allocatable adjoint_fluid_scheme::adjoint_fluid_scheme_t::bc_labels

Definition at line 131 of file adjoint_fluid_scheme.f90.

◆ bcs_prs

type(bc_list_t) adjoint_fluid_scheme::adjoint_fluid_scheme_t::bcs_prs

Definition at line 123 of file adjoint_fluid_scheme.f90.

◆ bcs_vel

type(bc_list_t) adjoint_fluid_scheme::adjoint_fluid_scheme_t::bcs_vel

Definition at line 125 of file adjoint_fluid_scheme.f90.

◆ c_xh

type(coef_t) adjoint_fluid_scheme::adjoint_fluid_scheme_t::c_xh

Definition at line 100 of file adjoint_fluid_scheme.f90.

◆ chkp

type(chkp_t), pointer adjoint_fluid_scheme::adjoint_fluid_scheme_t::chkp => null()

Definition at line 112 of file adjoint_fluid_scheme.f90.

◆ dm_xh

type(dofmap_t) adjoint_fluid_scheme::adjoint_fluid_scheme_t::dm_xh

Definition at line 98 of file adjoint_fluid_scheme.f90.

◆ ext_bdf

type(time_scheme_controller_t), allocatable adjoint_fluid_scheme::adjoint_fluid_scheme_t::ext_bdf

Definition at line 102 of file adjoint_fluid_scheme.f90.

◆ f_adj_x

type(field_t), pointer adjoint_fluid_scheme::adjoint_fluid_scheme_t::f_adj_x => null()

Definition at line 115 of file adjoint_fluid_scheme.f90.

◆ f_adj_y

type(field_t), pointer adjoint_fluid_scheme::adjoint_fluid_scheme_t::f_adj_y => null()

Definition at line 117 of file adjoint_fluid_scheme.f90.

◆ f_adj_z

type(field_t), pointer adjoint_fluid_scheme::adjoint_fluid_scheme_t::f_adj_z => null()

Definition at line 119 of file adjoint_fluid_scheme.f90.

◆ freeze

logical adjoint_fluid_scheme::adjoint_fluid_scheme_t::freeze = .false.

Definition at line 143 of file adjoint_fluid_scheme.f90.

◆ gs_xh

type(gs_t) adjoint_fluid_scheme::adjoint_fluid_scheme_t::gs_xh

Definition at line 99 of file adjoint_fluid_scheme.f90.

◆ material_properties

type(field_list_t) adjoint_fluid_scheme::adjoint_fluid_scheme_t::material_properties

Definition at line 140 of file adjoint_fluid_scheme.f90.

◆ msh

type(mesh_t), pointer adjoint_fluid_scheme::adjoint_fluid_scheme_t::msh => null()

Definition at line 128 of file adjoint_fluid_scheme.f90.

◆ mu

type(field_t) adjoint_fluid_scheme::adjoint_fluid_scheme_t::mu

Definition at line 137 of file adjoint_fluid_scheme.f90.

◆ name

character(len=:), allocatable adjoint_fluid_scheme::adjoint_fluid_scheme_t::name

Definition at line 95 of file adjoint_fluid_scheme.f90.

◆ p_adj

type(field_t), pointer adjoint_fluid_scheme::adjoint_fluid_scheme_t::p_adj => null()

Definition at line 108 of file adjoint_fluid_scheme.f90.

◆ params

type(json_file), pointer adjoint_fluid_scheme::adjoint_fluid_scheme_t::params

Definition at line 127 of file adjoint_fluid_scheme.f90.

◆ rho

type(field_t) adjoint_fluid_scheme::adjoint_fluid_scheme_t::rho

Definition at line 134 of file adjoint_fluid_scheme.f90.

◆ u_adj

type(field_t), pointer adjoint_fluid_scheme::adjoint_fluid_scheme_t::u_adj => null()

x-component of Velocity

Definition at line 105 of file adjoint_fluid_scheme.f90.

◆ ulag

type(field_series_t) adjoint_fluid_scheme::adjoint_fluid_scheme_t::ulag

Definition at line 109 of file adjoint_fluid_scheme.f90.

◆ user_material_properties

procedure(user_material_properties), pointer, nopass adjoint_fluid_scheme::adjoint_fluid_scheme_t::user_material_properties => null()
static

Definition at line 146 of file adjoint_fluid_scheme.f90.

◆ v_adj

type(field_t), pointer adjoint_fluid_scheme::adjoint_fluid_scheme_t::v_adj => null()

Definition at line 106 of file adjoint_fluid_scheme.f90.

◆ vlag

type(field_series_t) adjoint_fluid_scheme::adjoint_fluid_scheme_t::vlag

Definition at line 109 of file adjoint_fluid_scheme.f90.

◆ w_adj

type(field_t), pointer adjoint_fluid_scheme::adjoint_fluid_scheme_t::w_adj => null()

Definition at line 107 of file adjoint_fluid_scheme.f90.

◆ wlag

type(field_series_t) adjoint_fluid_scheme::adjoint_fluid_scheme_t::wlag

Definition at line 109 of file adjoint_fluid_scheme.f90.

◆ xh

type(space_t) adjoint_fluid_scheme::adjoint_fluid_scheme_t::xh

Definition at line 97 of file adjoint_fluid_scheme.f90.


The documentation for this type was generated from the following file: