Neko 1.99.1
A portable framework for high-order spectral element flow simulations
Loading...
Searching...
No Matches
user_intf::user_t Type Reference

A type collecting all the overridable user routines and flag to suppress type injection from custom modules. More...

Public Member Functions

procedure, pass(thisinit (this)
 Constructor that points non-associated routines to dummy ones. Calling a dummy routine causes an error in most cases, but sometimes the dummy routine just does nothing. E.g., the dummmy user_startup just does nothing. The association of the actual routines defined by the user happens in the user_setup routine inside the user file. A call to this routine is injected into the neko executable by makeneko.
 

Public Attributes

logical suppress_type_injection = .false.
 Setting this to true in the user_setup routine in the user file will suppress custom modules registering their types in the factories. So you have to take care of type injection in user_startup. Use if you really want full control over type injection for some reason.
 

Static Public Attributes

procedure(user_startup_intf), pointer, nopass startup => null()
 Run as soon as the case file is read, with nothing else initialized. Use to manipulate the case file, and define custom parameters.
 
procedure(user_initialize_intf), pointer, nopass initialize => null()
 Run after the entire case is initialized and restarted, but before the time loop. Good place to create auxillary fields, etc.
 
procedure(user_initial_conditions_intf), pointer, nopass initial_conditions => null()
 Compute user initial conditions.
 
procedure(user_mesh_setup_intf), pointer, nopass mesh_setup => null()
 
procedure(user_compute_intf), pointer, nopass preprocess => null()
 Run at the start of each time-step in the time loop.
 
procedure(user_compute_intf), pointer, nopass compute => null()
 Run at the end of each time-step in the time loop, right before field output to disk.
 
procedure(user_finalize_intf), pointer, nopass finalize => null()
 Runs in the end of the simulation, after the last output. Mean as a place to run free() on user-allocated objects.
 
procedure(user_source_term_intf), pointer, nopass source_term => null()
 User source term interface.
 
procedure(field_dirichlet_update), pointer, nopass dirichlet_conditions => null()
 User boundary condition for the fluid or the scalar, field interface (much more powerful than pointwise in terms of what can be done).
 
procedure(user_material_properties_intf), pointer, nopass material_properties => null()
 Routine to set material properties.
 

Detailed Description

Definition at line 142 of file user_intf.f90.

Member Function/Subroutine Documentation

◆ init()

procedure, pass(this) user_intf::user_t::init ( class(user_t), intent(inout this)

Definition at line 185 of file user_intf.f90.

Here is the call graph for this function:

Member Data Documentation

◆ compute

procedure(user_compute_intf), pointer, nopass user_intf::user_t::compute => null()
static

Definition at line 162 of file user_intf.f90.

◆ dirichlet_conditions

procedure(field_dirichlet_update), pointer, nopass user_intf::user_t::dirichlet_conditions => null()
static

Definition at line 172 of file user_intf.f90.

◆ finalize

procedure(user_finalize_intf), pointer, nopass user_intf::user_t::finalize => null()
static

Definition at line 165 of file user_intf.f90.

◆ initial_conditions

procedure(user_initial_conditions_intf), pointer, nopass user_intf::user_t::initial_conditions => null()
static

Definition at line 155 of file user_intf.f90.

◆ initialize

procedure(user_initialize_intf), pointer, nopass user_intf::user_t::initialize => null()
static

Definition at line 153 of file user_intf.f90.

◆ material_properties

procedure(user_material_properties_intf), pointer, nopass user_intf::user_t::material_properties => null()
static

Definition at line 175 of file user_intf.f90.

◆ mesh_setup

procedure(user_mesh_setup_intf), pointer, nopass user_intf::user_t::mesh_setup => null()
static

Definition at line 157 of file user_intf.f90.

◆ preprocess

procedure(user_compute_intf), pointer, nopass user_intf::user_t::preprocess => null()
static

Definition at line 159 of file user_intf.f90.

◆ source_term

procedure(user_source_term_intf), pointer, nopass user_intf::user_t::source_term => null()
static

Definition at line 168 of file user_intf.f90.

◆ startup

procedure(user_startup_intf), pointer, nopass user_intf::user_t::startup => null()
static

Definition at line 150 of file user_intf.f90.

◆ suppress_type_injection

logical user_intf::user_t::suppress_type_injection = .false.

Definition at line 147 of file user_intf.f90.


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