My Project
programmer's documentation
Typedefs | Functions
cs_equation_assemble.h File Reference
#include "cs_cdo_connect.h"
#include "cs_cdo_local.h"
#include "cs_matrix.h"
#include "cs_matrix_assembler.h"
#include "cs_param.h"
#include "cs_param_cdo.h"
Include dependency graph for cs_equation_assemble.h:

Go to the source code of this file.

Typedefs

typedef struct _cs_equation_assemble_t cs_equation_assemble_t
 
typedef void() cs_equation_assembly_t(const cs_cell_sys_t *csys, const cs_range_set_t *rset, cs_equation_assemble_t *eqa, cs_matrix_assembler_values_t *mav)
 Assemble a cellwise system into the global algebraic system Block or no block versions are handled. More...
 

Functions

cs_matrix_structure_tcs_equation_get_matrix_structure (int flag)
 Retrieve the pointer to a requested cs_matrix_structure_t structure. More...
 
cs_equation_assemble_tcs_equation_assemble_get (int t_id)
 Get a pointer to a cs_equation_assemble_t structure related to a given thread. More...
 
void cs_equation_assemble_init (const cs_cdo_connect_t *connect, cs_flag_t vb_flag, cs_flag_t vcb_flag, cs_flag_t fb_flag, cs_flag_t hho_flag)
 Allocate and initialize matrix-related structures according to the type of discretization used for this simulation. More...
 
void cs_equation_assemble_finalize (void)
 Free matrix-related structures used during the simulation. Display overall statistic about the assembly stage for CDO schemes. More...
 
cs_equation_assembly_tcs_equation_assemble_set (cs_param_space_scheme_t scheme, int ma_id)
 Define the function pointer used to assemble the algebraic system. More...
 
void cs_equation_assemble_matrix_mpit (const cs_cell_sys_t *csys, const cs_range_set_t *rset, cs_equation_assemble_t *eqa, cs_matrix_assembler_values_t *mav)
 Assemble a cellwise system into the global algebraic system Scalar-valued case. Parallel and with openMP threading. More...
 
void cs_equation_assemble_matrix_mpis (const cs_cell_sys_t *csys, const cs_range_set_t *rset, cs_equation_assemble_t *eqa, cs_matrix_assembler_values_t *mav)
 Assemble a cellwise system into the global algebraic system Scalar-valued case. Parallel without openMP threading. More...
 
void cs_equation_assemble_matrix_seqt (const cs_cell_sys_t *csys, const cs_range_set_t *rset, cs_equation_assemble_t *eqa, cs_matrix_assembler_values_t *mav)
 Assemble a cellwise system into the global algebraic system Scalar-valued case. Sequential and with openMP threading. More...
 
void cs_equation_assemble_matrix_seqs (const cs_cell_sys_t *csys, const cs_range_set_t *rset, cs_equation_assemble_t *eqa, cs_matrix_assembler_values_t *mav)
 Assemble a cellwise system into the global algebraic system Scalar-valued case. Sequential and without openMP threading. More...
 
void cs_equation_assemble_eblock33_matrix_seqs (const cs_cell_sys_t *csys, const cs_range_set_t *rset, cs_equation_assemble_t *eqa, cs_matrix_assembler_values_t *mav)
 Assemble a cellwise system into the global algebraic system. Case of a block 3x3 entries. Expand each row. Sequential run without openMP threading. More...
 
void cs_equation_assemble_eblock33_matrix_seqt (const cs_cell_sys_t *csys, const cs_range_set_t *rset, cs_equation_assemble_t *eqa, cs_matrix_assembler_values_t *mav)
 Assemble a cellwise system into the global algebraic system. Case of a block 3x3 entries. Expand each row. Sequential run with openMP threading. More...
 
void cs_equation_assemble_eblock33_matrix_mpis (const cs_cell_sys_t *csys, const cs_range_set_t *rset, cs_equation_assemble_t *eqa, cs_matrix_assembler_values_t *mav)
 Assemble a cellwise system into the global algebraic system. Case of a block 3x3 entries. Expand each row. Parallel run without openMP threading. More...
 
void cs_equation_assemble_eblock33_matrix_mpit (const cs_cell_sys_t *csys, const cs_range_set_t *rset, cs_equation_assemble_t *eqa, cs_matrix_assembler_values_t *mav)
 Assemble a cellwise system into the global algebraic system. Case of a block 3x3 entries. Expand each row. Parallel run with openMP threading. More...
 
void cs_equation_assemble_eblock_matrix_seqs (const cs_cell_sys_t *csys, const cs_range_set_t *rset, cs_equation_assemble_t *eqa, cs_matrix_assembler_values_t *mav)
 Assemble a cellwise system into the global algebraic system. Case of a block NxN entries. Expand each row. Sequential run without openMP threading. More...
 
void cs_equation_assemble_eblock_matrix_seqt (const cs_cell_sys_t *csys, const cs_range_set_t *rset, cs_equation_assemble_t *eqa, cs_matrix_assembler_values_t *mav)
 Assemble a cellwise system into the global algebraic system. Case of a block NxN entries. Expand each row. Sequential run with openMP threading. More...
 
void cs_equation_assemble_eblock_matrix_mpis (const cs_cell_sys_t *csys, const cs_range_set_t *rset, cs_equation_assemble_t *eqa, cs_matrix_assembler_values_t *mav)
 Assemble a cellwise system into the global algebraic system. Case of a block NxN entries. Expand each row. Parallel run without openMP threading. More...
 
void cs_equation_assemble_eblock_matrix_mpit (const cs_cell_sys_t *csys, const cs_range_set_t *rset, cs_equation_assemble_t *eqa, cs_matrix_assembler_values_t *mav)
 Assemble a cellwise system into the global algebraic system. Case of a block NxN entries. Expand each row. Parallel run with openMP threading. More...
 

Typedef Documentation

◆ cs_equation_assemble_t

typedef struct _cs_equation_assemble_t cs_equation_assemble_t

◆ cs_equation_assembly_t

typedef void() cs_equation_assembly_t(const cs_cell_sys_t *csys, const cs_range_set_t *rset, cs_equation_assemble_t *eqa, cs_matrix_assembler_values_t *mav)

Assemble a cellwise system into the global algebraic system Block or no block versions are handled.

Parameters
[in]csyscellwise view of the algebraic system
[in]rsetpointer to a cs_range_set_t structure
[in,out]eqapointer to an equation assembly structure
[in,out]mavpointer to a matrix assembler structure

Function Documentation

◆ cs_equation_assemble_eblock33_matrix_mpis()

void cs_equation_assemble_eblock33_matrix_mpis ( const cs_cell_sys_t csys,
const cs_range_set_t rset,
cs_equation_assemble_t eqa,
cs_matrix_assembler_values_t mav 
)

Assemble a cellwise system into the global algebraic system. Case of a block 3x3 entries. Expand each row. Parallel run without openMP threading.

Parameters
[in]csyscellwise view of the algebraic system
[in]rsetpointer to a cs_range_set_t structure
[in,out]eqapointer to an equation assembly structure
[in,out]mavpointer to a matrix assembler structure

◆ cs_equation_assemble_eblock33_matrix_mpit()

void cs_equation_assemble_eblock33_matrix_mpit ( const cs_cell_sys_t csys,
const cs_range_set_t rset,
cs_equation_assemble_t eqa,
cs_matrix_assembler_values_t mav 
)

Assemble a cellwise system into the global algebraic system. Case of a block 3x3 entries. Expand each row. Parallel run with openMP threading.

Parameters
[in]csyscellwise view of the algebraic system
[in]rsetpointer to a cs_range_set_t structure
[in,out]eqapointer to an equation assembly structure
[in,out]mavpointer to a matrix assembler structure

◆ cs_equation_assemble_eblock33_matrix_seqs()

void cs_equation_assemble_eblock33_matrix_seqs ( const cs_cell_sys_t csys,
const cs_range_set_t rset,
cs_equation_assemble_t eqa,
cs_matrix_assembler_values_t mav 
)

Assemble a cellwise system into the global algebraic system. Case of a block 3x3 entries. Expand each row. Sequential run without openMP threading.

Parameters
[in]csyscellwise view of the algebraic system
[in]rsetpointer to a cs_range_set_t structure
[in,out]eqapointer to an equation assembly structure
[in,out]mavpointer to a matrix assembler structure

◆ cs_equation_assemble_eblock33_matrix_seqt()

void cs_equation_assemble_eblock33_matrix_seqt ( const cs_cell_sys_t csys,
const cs_range_set_t rset,
cs_equation_assemble_t eqa,
cs_matrix_assembler_values_t mav 
)

Assemble a cellwise system into the global algebraic system. Case of a block 3x3 entries. Expand each row. Sequential run with openMP threading.

Parameters
[in]csyscellwise view of the algebraic system
[in]rsetpointer to a cs_range_set_t structure
[in,out]eqapointer to an equation assembly structure
[in,out]mavpointer to a matrix assembler structure

◆ cs_equation_assemble_eblock_matrix_mpis()

void cs_equation_assemble_eblock_matrix_mpis ( const cs_cell_sys_t csys,
const cs_range_set_t rset,
cs_equation_assemble_t eqa,
cs_matrix_assembler_values_t mav 
)

Assemble a cellwise system into the global algebraic system. Case of a block NxN entries. Expand each row. Parallel run without openMP threading.

Parameters
[in]csyscellwise view of the algebraic system
[in]rsetpointer to a cs_range_set_t structure
[in,out]eqapointer to an equation assembly structure
[in,out]mavpointer to a matrix assembler structure

◆ cs_equation_assemble_eblock_matrix_mpit()

void cs_equation_assemble_eblock_matrix_mpit ( const cs_cell_sys_t csys,
const cs_range_set_t rset,
cs_equation_assemble_t eqa,
cs_matrix_assembler_values_t mav 
)

Assemble a cellwise system into the global algebraic system. Case of a block NxN entries. Expand each row. Parallel run with openMP threading.

Parameters
[in]csyscellwise view of the algebraic system
[in]rsetpointer to a cs_range_set_t structure
[in,out]eqapointer to an equation assembly structure
[in,out]mavpointer to a matrix assembler structure

◆ cs_equation_assemble_eblock_matrix_seqs()

void cs_equation_assemble_eblock_matrix_seqs ( const cs_cell_sys_t csys,
const cs_range_set_t rset,
cs_equation_assemble_t eqa,
cs_matrix_assembler_values_t mav 
)

Assemble a cellwise system into the global algebraic system. Case of a block NxN entries. Expand each row. Sequential run without openMP threading.

Parameters
[in]csyscellwise view of the algebraic system
[in]rsetpointer to a cs_range_set_t structure
[in,out]eqapointer to an equation assembly structure
[in,out]mavpointer to a matrix assembler structure

◆ cs_equation_assemble_eblock_matrix_seqt()

void cs_equation_assemble_eblock_matrix_seqt ( const cs_cell_sys_t csys,
const cs_range_set_t rset,
cs_equation_assemble_t eqa,
cs_matrix_assembler_values_t mav 
)

Assemble a cellwise system into the global algebraic system. Case of a block NxN entries. Expand each row. Sequential run with openMP threading.

Parameters
[in]csyscellwise view of the algebraic system
[in]rsetpointer to a cs_range_set_t structure
[in,out]eqapointer to an equation assembly structure
[in,out]mavpointer to a matrix assembler structure

◆ cs_equation_assemble_finalize()

void cs_equation_assemble_finalize ( void  )

Free matrix-related structures used during the simulation. Display overall statistic about the assembly stage for CDO schemes.

◆ cs_equation_assemble_get()

cs_equation_assemble_t* cs_equation_assemble_get ( int  t_id)

Get a pointer to a cs_equation_assemble_t structure related to a given thread.

Parameters
[in]t_idid in the array of pointer
Returns
a pointer to a cs_equation_assemble_t structure

◆ cs_equation_assemble_init()

void cs_equation_assemble_init ( const cs_cdo_connect_t connect,
cs_flag_t  vb_flag,
cs_flag_t  vcb_flag,
cs_flag_t  fb_flag,
cs_flag_t  hho_flag 
)

Allocate and initialize matrix-related structures according to the type of discretization used for this simulation.

Parameters
[in]connectpointer to a cs_cdo_connect_t structure
[in]vb_flagmetadata for Vb schemes
[in]vcb_flagmetadata for V+C schemes
[in]fb_flagmetadata for Fb schemes
[in]hho_flagmetadata for HHO schemes
[in]connectpointer to a cs_cdo_connect_t structure
[in]time_steppointer to a time step structure
[in]vb_flagmetadata for Vb schemes
[in]vcb_flagmetadata for V+C schemes
[in]fb_flagmetadata for Fb schemes
[in]hho_flagmetadata for HHO schemes

◆ cs_equation_assemble_matrix_mpis()

void cs_equation_assemble_matrix_mpis ( const cs_cell_sys_t csys,
const cs_range_set_t rset,
cs_equation_assemble_t eqa,
cs_matrix_assembler_values_t mav 
)

Assemble a cellwise system into the global algebraic system Scalar-valued case. Parallel without openMP threading.

Parameters
[in]csyscellwise view of the algebraic system
[in]rsetpointer to a cs_range_set_t structure
[in,out]eqapointer to a matrix assembler buffers
[in,out]mavpointer to a matrix assembler structure

◆ cs_equation_assemble_matrix_mpit()

void cs_equation_assemble_matrix_mpit ( const cs_cell_sys_t csys,
const cs_range_set_t rset,
cs_equation_assemble_t eqa,
cs_matrix_assembler_values_t mav 
)

Assemble a cellwise system into the global algebraic system Scalar-valued case. Parallel and with openMP threading.

Parameters
[in]csyscellwise view of the algebraic system
[in]rsetpointer to a cs_range_set_t structure
[in,out]eqapointer to a matrix assembler buffers
[in,out]mavpointer to a matrix assembler structure

◆ cs_equation_assemble_matrix_seqs()

void cs_equation_assemble_matrix_seqs ( const cs_cell_sys_t csys,
const cs_range_set_t rset,
cs_equation_assemble_t eqa,
cs_matrix_assembler_values_t mav 
)

Assemble a cellwise system into the global algebraic system Scalar-valued case. Sequential and without openMP threading.

Parameters
[in]csyscellwise view of the algebraic system
[in]rsetpointer to a cs_range_set_t structure
[in,out]eqapointer to a matrix assembler buffers
[in,out]mavpointer to a matrix assembler structure

Assemble a cellwise system into the global algebraic system Scalar-valued case. Sequential and without openMP threading.

Parameters
[in]csyscellwise view of the algebraic system
[in]rsetpointer to a cs_range_set_t structure
[in,out]eqapointer to a matrix assembler buffers
[in,out]mavpointer to a matrix assembler structure

◆ cs_equation_assemble_matrix_seqt()

void cs_equation_assemble_matrix_seqt ( const cs_cell_sys_t csys,
const cs_range_set_t rset,
cs_equation_assemble_t eqa,
cs_matrix_assembler_values_t mav 
)

Assemble a cellwise system into the global algebraic system Scalar-valued case. Sequential and with openMP threading.

Parameters
[in]csyscellwise view of the algebraic system
[in]rsetpointer to a cs_range_set_t structure
[in,out]eqapointer to a matrix assembler buffers
[in,out]mavpointer to a matrix assembler structure

◆ cs_equation_assemble_set()

cs_equation_assembly_t* cs_equation_assemble_set ( cs_param_space_scheme_t  scheme,
int  ma_id 
)

Define the function pointer used to assemble the algebraic system.

Parameters
[in]schemespace discretization scheme
[in]ma_idid in the array of matrix assembler
Returns
a function pointer cs_equation_assembly_t

◆ cs_equation_get_matrix_structure()

cs_matrix_structure_t* cs_equation_get_matrix_structure ( int  flag)

Retrieve the pointer to a requested cs_matrix_structure_t structure.

Parameters
[in]flag_idid in the array of matrix structures
Returns
a pointer to a cs_matrix_structure_t