1 #ifndef __CS_EQUATION_PRIV_H__ 2 #define __CS_EQUATION_PRIV_H__ 311 void *scheme_context);
cs_equation_param_t * param
Definition: cs_equation_priv.h:327
cs_equation_set_dir_bc_t * set_dir_bc
Definition: cs_equation_priv.h:394
cs_equation_solve_t * solve
Definition: cs_equation_priv.h:375
void() cs_equation_initialize_system_t(const cs_equation_param_t *eqp, cs_equation_builder_t *eqb, void *data, cs_matrix_t **system_matrix, cs_real_t **system_rhs)
Create the matrix of the current algebraic system. Allocate and initialize the right-hand side associ...
Definition: cs_equation_priv.h:164
Store common elements used when building an algebraic system related to an equation.
void() cs_equation_prepare_solve_t(void *eq_to_cast, cs_real_t *p_x[], cs_real_t *p_rhs[])
Carry out operations for allocating and/or initializing the solution array and the right hand side of...
Definition: cs_equation_priv.h:206
#define restrict
Definition: cs_defs.h:127
cs_equation_update_field_t * update_field
Definition: cs_equation_priv.h:397
void() cs_equation_build_system_t(const cs_mesh_t *mesh, const cs_real_t *field_val, const cs_equation_param_t *eqp, cs_equation_builder_t *eqb, void *data, cs_real_t *rhs, cs_matrix_t *matrix)
Build a linear system within the CDO framework.
Definition: cs_equation_priv.h:185
const cs_range_set_t * rset
Definition: cs_equation_priv.h:358
Set of parameters to handle an unsteady convection-diffusion-reaction equation with term sources...
Definition: cs_equation_param.h:202
cs_equation_get_builders_t * get_cw_build_structures
Definition: cs_equation_priv.h:389
void() cs_equation_get_builders_t(cs_cell_sys_t **csys, cs_cell_builder_t **cb)
Retrieve cellwise structure including work buffers used to build a CDO system cellwise. Generic prototype for all CDO schemes.
Definition: cs_equation_priv.h:276
cs_equation_solve_t * solve_steady_state
Definition: cs_equation_priv.h:374
cs_lnum_t n_sles_scatter_elts
Definition: cs_equation_priv.h:346
#define BEGIN_C_DECLS
Definition: cs_defs.h:495
cs_equation_get_values_t * get_face_values
Definition: cs_equation_priv.h:385
int field_id
Definition: cs_equation_priv.h:331
cs_equation_builder_t * builder
Definition: cs_equation_priv.h:364
cs_lnum_t n_sles_gather_elts
Definition: cs_equation_priv.h:347
cs_equation_initialize_system_t * initialize_system
Definition: cs_equation_priv.h:393
void() cs_equation_init_values_t(cs_real_t t_eval, const int field_id, const cs_mesh_t *mesh, const cs_equation_param_t *eqp, cs_equation_builder_t *eqb, void *context)
Initialize the variable field values related to an equation.
Definition: cs_equation_priv.h:100
cs_equation_init_values_t * init_field_values
Definition: cs_equation_priv.h:373
double cs_real_t
Floating-point value.
Definition: cs_defs.h:307
void matrix(const int *iconvp, const int *idiffp, const int *ndircp, const int *isym, const cs_real_t *thetap, const int *imucpp, const cs_real_t coefbp[], const cs_real_t cofbfp[], const cs_real_t rovsdt[], const cs_real_t i_massflux[], const cs_real_t b_massflux[], const cs_real_t i_visc[], const cs_real_t b_visc[], const cs_real_t xcpp[], cs_real_t da[], cs_real_t xa[])
Definition: cs_matrix_building.c:112
Set of arrays and local (small) dense matrices related to a mesh cell This is a key structure for bui...
Definition: cs_cdo_local.h:107
int boundary_flux_id
Definition: cs_equation_priv.h:332
void() cs_equation_restart_t(cs_restart_t *restart, const char *eqname, void *scheme_context)
Generic prototype dedicated to read or write additional arrays (not defined as fields) useful for the...
Definition: cs_equation_priv.h:309
struct _cs_matrix_t cs_matrix_t
Definition: cs_matrix.h:94
void *() cs_equation_init_context_t(const cs_equation_param_t *eqp, int var_id, int bflux_id, cs_equation_builder_t *eqb)
Initialize a scheme data structure used during the building of the algebraic system.
Definition: cs_equation_priv.h:68
cs_equation_get_values_t * get_cell_values
Definition: cs_equation_priv.h:384
Definition: cs_equation_common.h:220
cs_equation_get_values_t * get_edge_values
Definition: cs_equation_priv.h:386
void * scheme_context
Definition: cs_equation_priv.h:367
void *() cs_equation_free_context_t(void *scheme_context)
Destroy a scheme data structure.
Definition: cs_equation_priv.h:84
cs_equation_get_values_t * get_vertex_values
Definition: cs_equation_priv.h:387
struct _cs_restart_t cs_restart_t
Definition: cs_restart.h:93
Definition: cs_range_set.h:57
Set of local and temporary buffers useful for building the algebraic system with a cellwise process...
Definition: cs_cdo_local.h:69
char *restrict varname
Definition: cs_equation_priv.h:330
void() cs_equation_update_field_t(const cs_real_t *solu, const cs_real_t *rhs, const cs_equation_param_t *eqp, cs_equation_builder_t *eqb, void *data, cs_real_t *field_val)
Store solution(s) of the linear system into a field structure Update extra-field values if required (...
Definition: cs_equation_priv.h:225
cs_real_t * rhs
Definition: cs_equation_priv.h:351
void() cs_equation_set_dir_bc_t(cs_real_t t_eval, const cs_mesh_t *mesh, const cs_equation_param_t *eqp, cs_equation_builder_t *eqb, void *context, cs_real_t field_val[])
Set the Dirichlet boundary stemming from the settings.
Definition: cs_equation_priv.h:142
cs_real_t *() cs_equation_get_values_t(void *scheme_context, bool previous)
Compute or retrieve an array of values at a given mesh location Currently, vertices, cells or faces are possible locations The lifecycle of this array is managed by the code. So one does not have to free the return pointer.
Definition: cs_equation_priv.h:294
cs_equation_get_balance_t * compute_balance
Definition: cs_equation_priv.h:377
cs_equation_free_context_t * free_context
Definition: cs_equation_priv.h:371
double precision, dimension(:,:), allocatable solu
Definition: atincl.f90:321
int cs_lnum_t
local mesh entity id
Definition: cs_defs.h:301
cs_equation_extra_op_t * postprocess
Definition: cs_equation_priv.h:378
#define END_C_DECLS
Definition: cs_defs.h:496
cs_equation_restart_t * write_restart
Definition: cs_equation_priv.h:382
cs_equation_balance_t *() cs_equation_get_balance_t(const cs_equation_param_t *eqp, cs_equation_builder_t *eqb, void *context)
Compute the balance for an equation over the full computational domain between time t_cur and t_cur +...
Definition: cs_equation_priv.h:246
cs_equation_restart_t * read_restart
Definition: cs_equation_priv.h:381
void() cs_equation_extra_op_t(const cs_equation_param_t *eqp, cs_equation_builder_t *eqb, void *context)
Generic prototype for extra-operations related to an equation.
Definition: cs_equation_priv.h:261
cs_equation_init_context_t * init_context
Definition: cs_equation_priv.h:370
Structure and routines handling the specific settings related to a cs_equation_t structure.
int main_ts_id
Definition: cs_equation_priv.h:400
cs_equation_build_system_t * build_system
Definition: cs_equation_priv.h:395
void() cs_equation_solve_t(bool cur2prev, const cs_mesh_t *mesh, const int field_id, const cs_equation_param_t *eqp, cs_equation_builder_t *eqb, void *eqc)
Build and solve a linear system within the CDO framework.
Definition: cs_equation_priv.h:121
cs_equation_extra_op_t * current_to_previous
Definition: cs_equation_priv.h:379
int id
Definition: cs_equation_priv.h:325
Definition: cs_equation_priv.h:323
cs_equation_prepare_solve_t * prepare_solving
Definition: cs_equation_priv.h:396
cs_matrix_t * matrix
Definition: cs_equation_priv.h:355