programmer's documentation
Enumerations | Functions
cs_equation.h File Reference
#include "cs_cdo_quantities.h"
#include "cs_equation_param.h"
#include "cs_field.h"
#include "cs_param.h"
#include "cs_mesh.h"
#include "cs_source_term.h"
#include "cs_time_step.h"
Include dependency graph for cs_equation.h:

Go to the source code of this file.

Enumerations

enum  cs_equation_key_t {
  CS_EQKEY_ADV_FORMULATION, CS_EQKEY_ADV_SCHEME, CS_EQKEY_ADV_FLUX_QUADRA, CS_EQKEY_BC_ENFORCEMENT,
  CS_EQKEY_BC_QUADRATURE, CS_EQKEY_EXTRA_OP, CS_EQKEY_HODGE_DIFF_ALGO, CS_EQKEY_HODGE_DIFF_COEF,
  CS_EQKEY_HODGE_TIME_ALGO, CS_EQKEY_HODGE_TIME_COEF, CS_EQKEY_HODGE_REAC_ALGO, CS_EQKEY_HODGE_REAC_COEF,
  CS_EQKEY_ITSOL, CS_EQKEY_ITSOL_EPS, CS_EQKEY_ITSOL_MAX_ITER, CS_EQKEY_ITSOL_RESNORM,
  CS_EQKEY_PRECOND, CS_EQKEY_SLES_VERBOSITY, CS_EQKEY_SOLVER_FAMILY, CS_EQKEY_SPACE_SCHEME,
  CS_EQKEY_TIME_SCHEME, CS_EQKEY_TIME_THETA, CS_EQKEY_VERBOSITY, CS_EQKEY_N_KEYS
}
 

Functions

void cs_equation_allocate_common_structures (const cs_cdo_connect_t *connect, const cs_cdo_quantities_t *quant, const cs_time_step_t *time_step, cs_flag_t scheme_flag)
 Allocate a pointer to a buffer of size at least the 2*n_cells for managing temporary usage of memory when dealing with equations Call specific structure allocation related to a numerical scheme according the scheme flag The size of the temporary buffer can be bigger according to the numerical settings Set also shared pointers from the main domain members. More...
 
void cs_equation_free_common_structures (cs_flag_t scheme_flag)
 Allocate a pointer to a buffer of size at least the 2*n_cells for managing temporary usage of memory when dealing with equations Call specific structure allocation related to a numerical scheme according the scheme flag The size of the temporary buffer can be bigger according to the numerical settings. More...
 
cs_real_tcs_equation_get_tmpbuf (void)
 Retrieve a pointer to a buffer of size at least the 2*n_cells The size of the temporary buffer can be bigger according to the numerical settings. More...
 
size_t cs_equation_get_tmpbuf_size (void)
 Get the allocation size of the temporary buffer. More...
 
cs_equation_t * cs_equation_create (const char *eqname, const char *varname, cs_equation_type_t eqtype, cs_param_var_type_t vartype, cs_param_bc_type_t default_bc)
 Define and initialize a new structure to store parameters related to an equation. More...
 
cs_equation_t * cs_equation_free (cs_equation_t *eq)
 Destroy a cs_equation_t structure. More...
 
void cs_equation_print_monitoring (const cs_equation_t *eq)
 Print a synthesis of the monitoring information in the performance file. More...
 
void cs_equation_summary (const cs_equation_t *eq)
 Summary of a cs_equation_t structure. More...
 
void cs_equation_set_timer_stats (cs_equation_t *eq)
 Create timer statistics structures to enable a "home-made" profiling. More...
 
void cs_equation_last_setup (const cs_cdo_connect_t *connect, cs_equation_t *eq)
 Assign a set of pointer functions for managing the cs_equation_t structure during the computation. More...
 
void cs_equation_set_param (cs_equation_t *eq, cs_equation_key_t key, const char *keyval)
 Set a parameter in a cs_equation_t structure attached to keyname. More...
 
void cs_equation_link (cs_equation_t *eq, const char *keyword, void *pointer)
 Associate a material property or an advection field with an equation for a given term (diffusion, time, convection) More...
 
void cs_equation_set_ic_by_value (cs_equation_t *eq, const char *ml_name, cs_get_t get)
 Define the initial condition for the unknown related to this equation This definition can be done on a specified mesh location. By default, the unknown is set to zero everywhere. Here a constant value is set to all the entities belonging to the given mesh location. More...
 
void cs_equation_set_ic_by_qov (cs_equation_t *eq, const char *ml_name, double quantity)
 Define the initial condition for the unknown related to this equation This definition can be done on a specified mesh location. By default, the unknown is set to zero everywhere. Here the value related to all the entities belonging to the given mesh location is such that the integral over these cells returns the requested quantity. More...
 
void cs_equation_set_ic_by_analytic (cs_equation_t *eq, const char *ml_name, cs_analytic_func_t *analytic)
 Define the initial condition for the unknown related to this equation This definition can be done on a specified mesh location. By default, the unknown is set to zero everywhere. Here the initial value is set according to an analytical function. More...
 
void cs_equation_add_bc_by_value (cs_equation_t *eq, const cs_param_bc_type_t bc_type, const char *ml_name, const cs_get_t get)
 Define and initialize a new structure to set a boundary condition related to the givan equation structure ml_name corresponds to the name of a pre-existing cs_mesh_location_t. More...
 
void cs_equation_add_bc_by_analytic (cs_equation_t *eq, const cs_param_bc_type_t bc_type, const char *ml_name, cs_analytic_func_t *analytic)
 Define and initialize a new structure to set a boundary condition related to the givan equation structure ml_name corresponds to the name of a pre-existing cs_mesh_location_t. More...
 
void cs_equation_add_linear_reaction (cs_equation_t *eq, cs_property_t *property, const char *r_name)
 Define and initialize a new structure to store parameters related to a reaction term. More...
 
cs_source_term_tcs_equation_add_source_term_by_val (cs_equation_t *eq, const char *st_name, const char *ml_name, const void *val)
 Define and initialize by value a new structure to store parameters related to a source term defined by a user. More...
 
cs_source_term_tcs_equation_add_source_term_by_analytic (cs_equation_t *eq, const char *st_name, const char *ml_name, cs_analytic_func_t *ana)
 Define and initialize by an analytical function a new structure related to a source term defined by a user. More...
 
void cs_equation_create_field (cs_equation_t *eq)
 Create a field structure related to this cs_equation_t structure to an equation. More...
 
void cs_equation_init_system (const cs_mesh_t *mesh, cs_equation_t *eq)
 Initialize the values of a field according to the initial condition related to its equation. More...
 
bool cs_equation_needs_build (const cs_equation_t *eq)
 Check if one has to build the linear system. More...
 
void cs_equation_build_system (const cs_mesh_t *m, const cs_time_step_t *time_step, double dt_cur, cs_equation_t *eq)
 Build the linear system for this equation. More...
 
void cs_equation_solve (cs_equation_t *eq)
 Solve the linear system for this equation. More...
 
bool cs_equation_is_steady (const cs_equation_t *eq)
 Return true is the given equation is steady otherwise false. More...
 
const cs_real_tcs_equation_get_face_values (const cs_equation_t *eq)
 Get the values at each face of the mesh for the field unknowns related to this equation. More...
 
const cs_real_tcs_equation_get_cell_values (const cs_equation_t *eq)
 Get the values at each cell centers for the field unknowns related to this equation. More...
 
const char * cs_equation_get_name (const cs_equation_t *eq)
 Return the name related to the given cs_equation_t structure to an equation. More...
 
cs_field_tcs_equation_get_field (const cs_equation_t *eq)
 Return the field structure associated to a cs_equation_t structure. More...
 
cs_flag_t cs_equation_get_flag (const cs_equation_t *eq)
 Return the flag associated to an equation. More...
 
const cs_equation_param_tcs_equation_get_param (const cs_equation_t *eq)
 Return the cs_equation_param_t structure associated to a cs_equation_t structure. More...
 
cs_property_tcs_equation_get_diffusion_property (const cs_equation_t *eq)
 Return a pointer to the cs_property_t structure associated to the diffusion term for this equation. More...
 
cs_property_tcs_equation_get_time_property (const cs_equation_t *eq)
 Return a pointer to the cs_property_t structure associated to the unsteady term for this equation. More...
 
cs_property_tcs_equation_get_reaction_property (const cs_equation_t *eq, const char *r_name)
 Return a pointer to the cs_property_t structure associated to the reaction term called r_name and related to this equation. More...
 
cs_space_scheme_t cs_equation_get_space_scheme (const cs_equation_t *eq)
 Return the type of numerical scheme used for the discretization in space. More...
 
int cs_equation_get_space_poly_degree (const cs_equation_t *eq)
 Return the max. degree used in the polynomial basis for the space discretization. More...
 
cs_param_var_type_t cs_equation_get_var_type (const cs_equation_t *eq)
 Return the type of variable solved by this equation. More...
 
cs_equation_type_t cs_equation_get_type (const cs_equation_t *eq)
 Return the type of equation for the given equation structure. More...
 
void cs_equation_compute_flux_across_plane (const cs_equation_t *eq, const char *ml_name, const cs_real_3_t direction, cs_real_t *diff_flux, cs_real_t *conv_flux)
 Compute the diffusive and convective flux accross a plane defined by a mesh location structure attached to the name ml_name. More...
 
void cs_equation_compute_diff_flux_cellwise (const cs_equation_t *eq, cs_flag_t location, cs_real_t *diff_flux)
 Cellwise computation of the diffusive flux across all cell faces. Primal or dual faces are considered according to the space scheme. More...
 
void cs_equation_compute_diff_flux (const cs_equation_t *eq, cs_real_t *diff_flux)
 Cellwise computation of the diffusive flux across all cell faces. Primal or dual faces are considered according to the space scheme. More...
 
void cs_equation_extra_post (const cs_equation_t *eq, const cs_time_step_t *ts, double dt)
 Predefined extra-operations related to this equation. More...
 

Enumeration Type Documentation

◆ cs_equation_key_t

Enumerator
CS_EQKEY_ADV_FORMULATION 
CS_EQKEY_ADV_SCHEME 
CS_EQKEY_ADV_FLUX_QUADRA 
CS_EQKEY_BC_ENFORCEMENT 
CS_EQKEY_BC_QUADRATURE 
CS_EQKEY_EXTRA_OP 
CS_EQKEY_HODGE_DIFF_ALGO 
CS_EQKEY_HODGE_DIFF_COEF 
CS_EQKEY_HODGE_TIME_ALGO 
CS_EQKEY_HODGE_TIME_COEF 
CS_EQKEY_HODGE_REAC_ALGO 
CS_EQKEY_HODGE_REAC_COEF 
CS_EQKEY_ITSOL 
CS_EQKEY_ITSOL_EPS 
CS_EQKEY_ITSOL_MAX_ITER 
CS_EQKEY_ITSOL_RESNORM 
CS_EQKEY_PRECOND 
CS_EQKEY_SLES_VERBOSITY 
CS_EQKEY_SOLVER_FAMILY 
CS_EQKEY_SPACE_SCHEME 
CS_EQKEY_TIME_SCHEME 
CS_EQKEY_TIME_THETA 
CS_EQKEY_VERBOSITY 
CS_EQKEY_N_KEYS 

Function Documentation

◆ cs_equation_add_bc_by_analytic()

void cs_equation_add_bc_by_analytic ( cs_equation_t *  eq,
const cs_param_bc_type_t  bc_type,
const char *  ml_name,
cs_analytic_func_t analytic 
)

Define and initialize a new structure to set a boundary condition related to the givan equation structure ml_name corresponds to the name of a pre-existing cs_mesh_location_t.

Parameters
[in,out]eqpointer to a cs_equation_t structure
[in]bc_typetype of boundary condition to add
[in]ml_namename of the related mesh location
[in]analyticpointer to an analytic function defining the value

◆ cs_equation_add_bc_by_value()

void cs_equation_add_bc_by_value ( cs_equation_t *  eq,
const cs_param_bc_type_t  bc_type,
const char *  ml_name,
const cs_get_t  get 
)

Define and initialize a new structure to set a boundary condition related to the givan equation structure ml_name corresponds to the name of a pre-existing cs_mesh_location_t.

Parameters
[in,out]eqpointer to a cs_equation_t structure
[in]bc_typetype of boundary condition to add
[in]ml_namename of the related mesh location
[in]getpointer to a cs_get_t structure storing the value

◆ cs_equation_add_linear_reaction()

void cs_equation_add_linear_reaction ( cs_equation_t *  eq,
cs_property_t property,
const char *  r_name 
)

Define and initialize a new structure to store parameters related to a reaction term.

Parameters
[in,out]eqpointer to a cs_equation_t structure
[in]propertypointer to a cs_property_t struct.
[in]r_namename of the reaction term (optional, i.e. NULL)

◆ cs_equation_add_source_term_by_analytic()

cs_source_term_t* cs_equation_add_source_term_by_analytic ( cs_equation_t *  eq,
const char *  st_name,
const char *  ml_name,
cs_analytic_func_t ana 
)

Define and initialize by an analytical function a new structure related to a source term defined by a user.

Parameters
[in,out]eqpointer to a cs_equation_t structure
[in]st_namename of the source term or NULL
[in]ml_namename of the related mesh location
[in]anapointer to an analytical function
Returns
a pointer to the new cs_source_term_t structure

Define and initialize by an analytical function a new structure related to a source term defined by a user.

Parameters
[in,out]eqpointer to a cs_equation_t structure
[in]st_namename of the source term or NULL
[in]ml_namename of the related mesh location
[in]anapointer to an analytical function
Returns
a pointer to the new cs_source_term_t structure

◆ cs_equation_add_source_term_by_val()

cs_source_term_t* cs_equation_add_source_term_by_val ( cs_equation_t *  eq,
const char *  st_name,
const char *  ml_name,
const void *  val 
)

Define and initialize by value a new structure to store parameters related to a source term defined by a user.

Parameters
[in,out]eqpointer to a cs_equation_t structure
[in]st_namename of the source term or NULL
[in]ml_namename of the related mesh location
[in]valpointer to the value
Returns
a pointer to the new cs_source_term_t structure

Define and initialize by value a new structure to store parameters related to a source term defined by a user.

Parameters
[in,out]eqpointer to a cs_equation_t structure
[in]st_namename of the source term or NULL
[in]ml_namename of the related mesh location or NULL
[in]valpointer to the value
Returns
a pointer to the new cs_source_term_t structure

◆ cs_equation_allocate_common_structures()

void cs_equation_allocate_common_structures ( const cs_cdo_connect_t connect,
const cs_cdo_quantities_t quant,
const cs_time_step_t time_step,
cs_flag_t  scheme_flag 
)

Allocate a pointer to a buffer of size at least the 2*n_cells for managing temporary usage of memory when dealing with equations Call specific structure allocation related to a numerical scheme according the scheme flag The size of the temporary buffer can be bigger according to the numerical settings Set also shared pointers from the main domain members.

Parameters
[in]connectpointer to a cs_cdo_connect_t structure
[in]quantpointer to additional mesh quantities struct.
[in]time_steppointer to a time step structure
[in]scheme_flagflag to identify which kind of numerical scheme is requested to solve the computational domain

◆ cs_equation_build_system()

void cs_equation_build_system ( const cs_mesh_t mesh,
const cs_time_step_t time_step,
double  dt_cur,
cs_equation_t *  eq 
)

Build the linear system for this equation.

Parameters
[in]mpointer to a cs_mesh_t structure
[in]time_steppointer to a time step structure
[in]dt_curvalue of the current time step
[in,out]eqpointer to a cs_equation_t structure

◆ cs_equation_compute_diff_flux()

void cs_equation_compute_diff_flux ( const cs_equation_t *  eq,
cs_real_t diff_flux 
)

Cellwise computation of the diffusive flux across all cell faces. Primal or dual faces are considered according to the space scheme.

Parameters
[in]eqpointer to a cs_equation_t structure
[in,out]diff_fluxvalue of the diffusive flux

◆ cs_equation_compute_diff_flux_cellwise()

void cs_equation_compute_diff_flux_cellwise ( const cs_equation_t *  eq,
cs_flag_t  location,
cs_real_t diff_flux 
)

Cellwise computation of the diffusive flux across all cell faces. Primal or dual faces are considered according to the space scheme.

Parameters
[in]eqpointer to a cs_equation_t structure
[in]locationindicate where the flux has to be computed
[in,out]diff_fluxvalue of the diffusive flux

◆ cs_equation_compute_flux_across_plane()

void cs_equation_compute_flux_across_plane ( const cs_equation_t *  eq,
const char *  ml_name,
const cs_real_3_t  direction,
cs_real_t diff_flux,
cs_real_t conv_flux 
)

Compute the diffusive and convective flux accross a plane defined by a mesh location structure attached to the name ml_name.

Parameters
[in]eqpointer to a cs_equation_t structure
[in]ml_namename of the related mesh location
[in]directionvector indicating in which direction flux is > 0
[in,out]diff_fluxvalue of the diffusive part of the flux
[in,out]conv_fluxvalue of the convective part of the flux

◆ cs_equation_create()

cs_equation_t* cs_equation_create ( const char *  eqname,
const char *  varname,
cs_equation_type_t  eqtype,
cs_param_var_type_t  vartype,
cs_param_bc_type_t  default_bc 
)

Define and initialize a new structure to store parameters related to an equation.

Parameters
[in]eqnamename of the equation
[in]varnamename of the variable associated to this equation
[in]eqtypetype of equation (user, predefined...)
[in]vartypetype of variable (scalar, vector, tensor...)
[in]default_bctype of boundary condition set by default
Returns
a pointer to the new allocated cs_equation_t structure

◆ cs_equation_create_field()

void cs_equation_create_field ( cs_equation_t *  eq)

Create a field structure related to this cs_equation_t structure to an equation.

Parameters
[in,out]eqpointer to a cs_equation_t structure

◆ cs_equation_extra_post()

void cs_equation_extra_post ( const cs_equation_t *  eq,
const cs_time_step_t ts,
double  dt 
)

Predefined extra-operations related to this equation.

Parameters
[in]eqpointer to a cs_equation_t structure
[in]tspointer to a cs_time_step_t struct.
[in]dtvalue of the current time step

◆ cs_equation_free()

cs_equation_t* cs_equation_free ( cs_equation_t *  eq)

Destroy a cs_equation_t structure.

Parameters
[in,out]eqpointer to a cs_equation_t structure
Returns
a NULL pointer

◆ cs_equation_free_common_structures()

void cs_equation_free_common_structures ( cs_flag_t  scheme_flag)

Allocate a pointer to a buffer of size at least the 2*n_cells for managing temporary usage of memory when dealing with equations Call specific structure allocation related to a numerical scheme according the scheme flag The size of the temporary buffer can be bigger according to the numerical settings.

Parameters
[in]scheme_flagflag to identify which kind of numerical scheme is requested to solve the computational domain

◆ cs_equation_get_cell_values()

const cs_real_t* cs_equation_get_cell_values ( const cs_equation_t *  eq)

Get the values at each cell centers for the field unknowns related to this equation.

Parameters
[in]eqpointer to a cs_equation_t structure
Returns
a pointer to the cell values

◆ cs_equation_get_diffusion_property()

cs_property_t* cs_equation_get_diffusion_property ( const cs_equation_t *  eq)

Return a pointer to the cs_property_t structure associated to the diffusion term for this equation.

Parameters
[in]eqpointer to a cs_equation_t structure
Returns
a pointer to a cs_property_t structure or NULL if not found

Return a pointer to the cs_property_t structure associated to the diffusion term for this equation.

Parameters
[in]eqpointer to a cs_equation_t structure
Returns
a pointer to a cs_property_t structure

◆ cs_equation_get_face_values()

const cs_real_t* cs_equation_get_face_values ( const cs_equation_t *  eq)

Get the values at each face of the mesh for the field unknowns related to this equation.

Parameters
[in]eqpointer to a cs_equation_t structure
Returns
a pointer to the face values

◆ cs_equation_get_field()

cs_field_t* cs_equation_get_field ( const cs_equation_t *  eq)

Return the field structure associated to a cs_equation_t structure.

Parameters
[in]eqpointer to a cs_equation_t structure
Returns
a cs_field_t structure or NULL if not found

◆ cs_equation_get_flag()

cs_flag_t cs_equation_get_flag ( const cs_equation_t *  eq)

Return the flag associated to an equation.

Parameters
[in]eqpointer to a cs_equation_t structure
Returns
a flag (cs_flag_t type)

◆ cs_equation_get_name()

const char* cs_equation_get_name ( const cs_equation_t *  eq)

Return the name related to the given cs_equation_t structure to an equation.

Parameters
[in]eqpointer to a cs_equation_t structure
Returns
a name or NULL if not found

◆ cs_equation_get_param()

const cs_equation_param_t* cs_equation_get_param ( const cs_equation_t *  eq)

Return the cs_equation_param_t structure associated to a cs_equation_t structure.

Parameters
[in]eqpointer to a cs_equation_t structure
Returns
a cs_equation_param_t structure or NULL if not found

◆ cs_equation_get_reaction_property()

cs_property_t* cs_equation_get_reaction_property ( const cs_equation_t *  eq,
const char *  r_name 
)

Return a pointer to the cs_property_t structure associated to the reaction term called r_name and related to this equation.

Parameters
[in]eqpointer to a cs_equation_t structure
Returns
a pointer to a cs_property_t structure or NULL if not found

◆ cs_equation_get_space_poly_degree()

int cs_equation_get_space_poly_degree ( const cs_equation_t *  eq)

Return the max. degree used in the polynomial basis for the space discretization.

Parameters
[in]eqpointer to a cs_equation_t structure
Returns
the polynomial order

◆ cs_equation_get_space_scheme()

cs_space_scheme_t cs_equation_get_space_scheme ( const cs_equation_t *  eq)

Return the type of numerical scheme used for the discretization in space.

Parameters
[in]eqpointer to a cs_equation_t structure
Returns
a cs_space_scheme_t variable

◆ cs_equation_get_time_property()

cs_property_t* cs_equation_get_time_property ( const cs_equation_t *  eq)

Return a pointer to the cs_property_t structure associated to the unsteady term for this equation.

Parameters
[in]eqpointer to a cs_equation_t structure
Returns
a pointer to a cs_property_t structure or NULL if not found

Return a pointer to the cs_property_t structure associated to the unsteady term for this equation.

Parameters
[in]eqpointer to a cs_equation_t structure
Returns
a pointer to a cs_property_t structure

◆ cs_equation_get_tmpbuf()

cs_real_t* cs_equation_get_tmpbuf ( void  )

Retrieve a pointer to a buffer of size at least the 2*n_cells The size of the temporary buffer can be bigger according to the numerical settings.

Returns
a pointer to an array of double

◆ cs_equation_get_tmpbuf_size()

size_t cs_equation_get_tmpbuf_size ( void  )

Get the allocation size of the temporary buffer.

Returns
the size of the temporary buffer

◆ cs_equation_get_type()

cs_equation_type_t cs_equation_get_type ( const cs_equation_t *  eq)

Return the type of equation for the given equation structure.

Parameters
[in]eqpointer to a cs_equation_t structure
Returns
the type of the given equation

◆ cs_equation_get_var_type()

cs_param_var_type_t cs_equation_get_var_type ( const cs_equation_t *  eq)

Return the type of variable solved by this equation.

Parameters
[in]eqpointer to a cs_equation_t structure
Returns
the type of variable (sclar, vector...) associated to this equation

◆ cs_equation_init_system()

void cs_equation_init_system ( const cs_mesh_t mesh,
cs_equation_t *  eq 
)

Initialize the values of a field according to the initial condition related to its equation.

Parameters
[in]meshpointer to the mesh structure
[in,out]eqpointer to a cs_equation_t structure

◆ cs_equation_is_steady()

bool cs_equation_is_steady ( const cs_equation_t *  eq)

Return true is the given equation is steady otherwise false.

Parameters
[in]eqpointer to a cs_equation_t structure
Returns
true or false

◆ cs_equation_last_setup()

void cs_equation_last_setup ( const cs_cdo_connect_t connect,
cs_equation_t *  eq 
)

Assign a set of pointer functions for managing the cs_equation_t structure during the computation.

Parameters
[in]connectpointer to a cs_cdo_connect_t structure
[in,out]eqpointer to a cs_equation_t structure

◆ cs_equation_link()

void cs_equation_link ( cs_equation_t *  eq,
const char *  keyword,
void *  pointer 
)

Associate a material property or an advection field with an equation for a given term (diffusion, time, convection)

Parameters
[in,out]eqpointer to a cs_equation_t structure
[in]keyword"time", "diffusion", "advection"
[in]pointerpointer to a given structure

◆ cs_equation_needs_build()

bool cs_equation_needs_build ( const cs_equation_t *  eq)

Check if one has to build the linear system.

Parameters
[in]eqpointer to a cs_equation_t structure
Returns
true or false

◆ cs_equation_print_monitoring()

void cs_equation_print_monitoring ( const cs_equation_t *  eq)

Print a synthesis of the monitoring information in the performance file.

Parameters
[in]eqpointer to a cs_equation_t structure

◆ cs_equation_set_ic_by_analytic()

void cs_equation_set_ic_by_analytic ( cs_equation_t *  eq,
const char *  ml_name,
cs_analytic_func_t analytic 
)

Define the initial condition for the unknown related to this equation This definition can be done on a specified mesh location. By default, the unknown is set to zero everywhere. Here the initial value is set according to an analytical function.

Parameters
[in,out]eqpointer to a cs_equation_t structure
[in]ml_namename of the associated mesh location (if NULL or "" all cells are considered)
[in]analyticpointer to an analytic function

◆ cs_equation_set_ic_by_qov()

void cs_equation_set_ic_by_qov ( cs_equation_t *  eq,
const char *  ml_name,
double  quantity 
)

Define the initial condition for the unknown related to this equation This definition can be done on a specified mesh location. By default, the unknown is set to zero everywhere. Here the value related to all the entities belonging to the given mesh location is such that the integral over these cells returns the requested quantity.

Parameters
[in,out]eqpointer to a cs_equation_t structure
[in]ml_namename of the associated mesh location (if NULL or "" all cells are considered)
[in]quantityquantity to distribute over the mesh location

◆ cs_equation_set_ic_by_value()

void cs_equation_set_ic_by_value ( cs_equation_t *  eq,
const char *  ml_name,
cs_get_t  get 
)

Define the initial condition for the unknown related to this equation This definition can be done on a specified mesh location. By default, the unknown is set to zero everywhere. Here a constant value is set to all the entities belonging to the given mesh location.

Parameters
[in,out]eqpointer to a cs_equation_t structure
[in]ml_namename of the associated mesh location (if NULL or "" all cells are considered)
[in]valpointer to the value

◆ cs_equation_set_param()

void cs_equation_set_param ( cs_equation_t *  eq,
cs_equation_key_t  key,
const char *  keyval 
)

Set a parameter in a cs_equation_t structure attached to keyname.

Parameters
[in,out]eqpointer to a cs_equation_t structure
[in]keykey related to the member of eq to set
[in]keyvalaccessor to the value to set

◆ cs_equation_set_timer_stats()

void cs_equation_set_timer_stats ( cs_equation_t *  eq)

Create timer statistics structures to enable a "home-made" profiling.

Parameters
[in,out]eqpointer to a cs_equation_t structure

◆ cs_equation_solve()

void cs_equation_solve ( cs_equation_t *  eq)

Solve the linear system for this equation.

Parameters
[in,out]eqpointer to a cs_equation_t structure

◆ cs_equation_summary()

void cs_equation_summary ( const cs_equation_t *  eq)

Summary of a cs_equation_t structure.

Parameters
[in]eqpointer to a cs_equation_t structure