Main structure to handle a set of coupled equations. More...
#include <cs_equation_system.h>
 Collaboration diagram for cs_equation_system_t:
 Collaboration diagram for cs_equation_system_t:| Data Fields | |
| Metadata | |
| cs_equation_system_param_t * | param | 
| cs_timer_counter_t | timer | 
| int | timer_id | 
| Structure of the system of equations | |
| cs_cdo_system_helper_t * | system_helper | 
| void * | context | 
| Diagonal block (equations) | |
| int | n_equations | 
| cs_equation_t ** | equations | 
| Crossed terms | |
| The setting of each block relies on the cs_equation_param_t structure. The cs_equation_param_t structures related to the diagonal blocks are shared with the cs_equation_t structures in the "equations" member and thus not owned by the current structure. The extra-diagonal blocks dealing with the crossed terms (i.e. the coupling between variables) are owned by this structure. By default, there is no crossed term (i.e. params[1] = NULL) The same rationale applies to builder structures and scheme context structures. All these structures are contained in the structure cs_equation_core_t to avoid manipulating void ** structures | |
| cs_equation_core_t ** | block_factories | 
| Pointer to functions | |
| cs_equation_system_define_t * | define | 
| cs_equation_system_free_t * | free | 
| cs_equation_system_solve_t * | solve_system | 
| cs_equation_system_solve_t * | solve_steady_state_system | 
Main structure to handle a set of coupled equations.
| block_factories | 
Matrix of cs_equation_core_t structures. The size of the matrix is n_equations (stored as an array of size n_equations^2). These structures enable to build and solve the system of equations.
| context | 
pointer to a structure cast on-the-fly which depends on the numerical scheme
| define | 
Initialize builder and scheme context structures. Pointer of function given by the prototype cs_equation_system_init_structures_t
| equations | 
Array of pointer to the equations constituting the coupled system. These equations correspond to the each row and the cs_equation_param_t associated to an equation corresponds to the setting of the diagonal block.
| free | 
Free builder and scheme context structures. Pointer of function given by the prototype cs_equation_system_free_context_t
| n_equations | 
Number of coupled equations (> 1) composing the system
| param | 
Set of parameters to specify the settings of the system of equations
| solve_steady_state_system | 
Solve the system of equations (steady-state case). Pointer of function given by the generic prototype cs_equation_system_solve_t
| solve_system | 
Solve the system of equations (unsteady case). Pointer of function given by the generic prototype cs_equation_system_solve_t
| system_helper | 
Set of structures to define the system of equations (rhs, matrix or matrices, range sets, interface sets, etc.)
| cs_timer_counter_t timer | 
Cumulated elapsed time
| int timer_id | 
Id of the timer statistics