1 #ifndef __CS_CDO_ASSEMBLY_H__ 
    2 #define __CS_CDO_ASSEMBLY_H__ 
   52 #define CS_CDO_ASSEMBLY_BUFSIZE  200 
   81                          cs_cdo_assembly_t                 *eqa,
 
  217                                     cs_cdo_assembly_t                *asb,
 
  238                                    cs_cdo_assembly_t               *asb,
 
  241 #if defined(HAVE_MPI) 
  256 cs_cdo_assembly_matrix_mpit(
const cs_sdm_t                   *m,
 
  259                             cs_cdo_assembly_t                *asb,
 
  276 cs_cdo_assembly_matrix_mpis(
const cs_sdm_t                   *m,
 
  279                             cs_cdo_assembly_t                *asb,
 
  300                             cs_cdo_assembly_t               *asb,
 
  321                             cs_cdo_assembly_t               *asb,
 
  343                                 cs_cdo_assembly_t               *asb,
 
  365                                 cs_cdo_assembly_t               *asb,
 
  368 #if defined(HAVE_MPI) 
  383 cs_cdo_assembly_matrix_sys_mpis(
const cs_sdm_t                   *m,
 
  386                                 cs_cdo_assembly_t                *asb,
 
  403 cs_cdo_assembly_matrix_sys_mpit(
const cs_sdm_t                   *m,
 
  406                                 cs_cdo_assembly_t                *asb,
 
  428                                      cs_cdo_assembly_t            *asb,
 
  449                                      cs_cdo_assembly_t             *asb,
 
  452 #if defined(HAVE_MPI) 
  468 cs_cdo_assembly_eblock33_matrix_mpis(
const cs_sdm_t                *m,
 
  471                                      cs_cdo_assembly_t             *asb,
 
  489 cs_cdo_assembly_eblock33_matrix_mpit(
const cs_sdm_t               *m,
 
  492                                      cs_cdo_assembly_t            *asb,
 
  514                                     cs_cdo_assembly_t             *asb,
 
  535                                     cs_cdo_assembly_t             *asb,
 
  538 #if defined(HAVE_MPI) 
  554 cs_cdo_assembly_block33_matrix_mpis(
const cs_sdm_t                *m,
 
  557                                     cs_cdo_assembly_t             *asb,
 
  575 cs_cdo_assembly_block33_matrix_mpit(
const cs_sdm_t                *m,
 
  578                                     cs_cdo_assembly_t             *asb,
 
  600                                    cs_cdo_assembly_t             *asb,
 
  621                                    cs_cdo_assembly_t             *asb,
 
  624 #if defined(HAVE_MPI) 
  640 cs_cdo_assembly_eblock_matrix_mpis(
const cs_sdm_t                *m,
 
  643                                    cs_cdo_assembly_t             *asb,
 
  661 cs_cdo_assembly_eblock_matrix_mpit(
const cs_sdm_t                *m,
 
  664                                    cs_cdo_assembly_t             *asb,
 
void cs_cdo_assembly_matrix_e33_generic(const cs_sdm_t *m, const cs_lnum_t *dof_ids, const cs_range_set_t *rset, cs_cdo_assembly_t *asb, cs_matrix_assembler_values_t *mav)
Assemble a cellwise matrix into the global matrix. Rely on the generic cs_matrix_assembler_values_add...
Definition: cs_cdo_assembly.c:1596
void cs_cdo_assembly_set_shift(cs_cdo_assembly_t *asb, cs_lnum_t l_row_shift, cs_lnum_t l_col_shift)
Set the current shift values to consider during the assembly stage.
Definition: cs_cdo_assembly.c:1382
void cs_cdo_assembly_setup_log(void)
Print information for the setup.log file.
Definition: cs_cdo_assembly.c:1282
void cs_cdo_assembly_matrix_seqs(const cs_sdm_t *m, const cs_lnum_t *dof_ids, const cs_range_set_t *rset, cs_cdo_assembly_t *asb, cs_matrix_assembler_values_t *mav)
Assemble a cellwise matrix into the global matrix Scalar-valued case. Sequential and without openMP (...
Definition: cs_cdo_assembly.c:1832
cs_cdo_assembly_t * cs_cdo_assembly_get(int t_id)
Get a pointer to a cs_cdo_assembly_t structure related to a given thread.
Definition: cs_cdo_assembly.c:1302
void cs_cdo_assembly_matrix_sys_seqt(const cs_sdm_t *m, const cs_lnum_t *dof_ids, const cs_range_set_t *rset, cs_cdo_assembly_t *asb, cs_matrix_assembler_values_t *mav)
Assemble a cellwise (no-block) matrix into the global matrix corresponding to a system of coupled equ...
Definition: cs_cdo_assembly.c:1971
void cs_cdo_assembly_matrix_sys_seqs(const cs_sdm_t *m, const cs_lnum_t *dof_ids, const cs_range_set_t *rset, cs_cdo_assembly_t *asb, cs_matrix_assembler_values_t *mav)
Assemble a cellwise (no-block) matrix into the global matrix corresponding to a system of coupled equ...
Definition: cs_cdo_assembly.c:1880
void cs_cdo_assembly_eblock33_matrix_seqt(const cs_sdm_t *m, const cs_lnum_t *dof_ids, const cs_range_set_t *rset, cs_cdo_assembly_t *asb, cs_matrix_assembler_values_t *mav)
Assemble a cellwise matrix into the global matrix. Case of a block 3x3 entries. Expand each row....
Definition: cs_cdo_assembly.c:2357
void cs_cdo_assembly_block33_matrix_seqt(const cs_sdm_t *m, const cs_lnum_t *dof_ids, const cs_range_set_t *rset, cs_cdo_assembly_t *asb, cs_matrix_assembler_values_t *mav)
Assemble a cellwise matrix into the global matrix. Case of a block 3x3 entries. Expand each row....
Definition: cs_cdo_assembly.c:2668
void cs_cdo_assembly_eblock_matrix_seqs(const cs_sdm_t *m, const cs_lnum_t *dof_ids, const cs_range_set_t *rset, cs_cdo_assembly_t *asb, cs_matrix_assembler_values_t *mav)
Assemble a cellwise matrix into the global matrix Case of a block NxN entries. Expand each row....
Definition: cs_cdo_assembly.c:2922
void cs_cdo_assembly_init(int ddim, int edim, int n_cw_dofs)
Allocate cs_cdo_assembly_t structure (shared among schemes). Each thread has its own copy this struct...
Definition: cs_cdo_assembly.c:1323
void cs_cdo_assembly_block33_matrix_seqs(const cs_sdm_t *m, const cs_lnum_t *dof_ids, const cs_range_set_t *rset, cs_cdo_assembly_t *asb, cs_matrix_assembler_values_t *mav)
Assemble a cellwise matrix into the global matrix. Case of a block 3x3 entries. Expand each row....
Definition: cs_cdo_assembly.c:2592
void cs_cdo_assembly_matrix_seqt(const cs_sdm_t *m, const cs_lnum_t *dof_ids, const cs_range_set_t *rset, cs_cdo_assembly_t *asb, cs_matrix_assembler_values_t *mav)
Assemble a cellwise matrix into the global matrix. Scalar-valued case. Sequential and with openMP thr...
Definition: cs_cdo_assembly.c:1780
void cs_cdo_assembly_eblock33_matrix_seqs(const cs_sdm_t *m, const cs_lnum_t *dof_ids, const cs_range_set_t *rset, cs_cdo_assembly_t *asb, cs_matrix_assembler_values_t *mav)
Assemble a cellwise matrix into the global matrix Case of a block 3x3 entries. Expand each row....
Definition: cs_cdo_assembly.c:2287
void() cs_cdo_assembly_func_t(const cs_sdm_t *m, const cs_lnum_t *dof_ids, const cs_range_set_t *rset, cs_cdo_assembly_t *eqa, cs_matrix_assembler_values_t *mav)
Assemble a cellwise matrix into the global matrix Block or no block versions are handled.
Definition: cs_cdo_assembly.h:78
void cs_cdo_assembly_eblock_matrix_seqt(const cs_sdm_t *m, const cs_lnum_t *dof_ids, const cs_range_set_t *rset, cs_cdo_assembly_t *asb, cs_matrix_assembler_values_t *mav)
Assemble a cellwise system into the global algebraic system. Case of a block NxN entries....
Definition: cs_cdo_assembly.c:3005
void cs_cdo_assembly_matrix_scal_generic(const cs_sdm_t *m, const cs_lnum_t *dof_ids, const cs_range_set_t *rset, cs_cdo_assembly_t *asb, cs_matrix_assembler_values_t *mav)
Assemble a cellwise matrix into the global matrix. Rely on the generic cs_matrix_assembler_values_add...
Definition: cs_cdo_assembly.c:1410
void cs_cdo_assembly_finalize(void)
Free matrix-related structures used during the simulation. Display overall statistic about the assemb...
Definition: cs_cdo_assembly.c:1359
#define BEGIN_C_DECLS
Definition: cs_defs.h:528
double cs_real_t
Floating-point value.
Definition: cs_defs.h:332
unsigned long cs_gnum_t
global mesh entity number
Definition: cs_defs.h:310
#define END_C_DECLS
Definition: cs_defs.h:529
int cs_lnum_t
local mesh entity id
Definition: cs_defs.h:325
struct _cs_matrix_assembler_values_t cs_matrix_assembler_values_t
Definition: cs_matrix_assembler.h:65
Definition: cs_cdo_assembly.h:109
cs_lnum_t l_col_shift
Definition: cs_cdo_assembly.h:121
cs_cdo_assembly_row_t * row
Definition: cs_cdo_assembly.h:124
int n_cw_dofs
Definition: cs_cdo_assembly.h:111
int ddim
Definition: cs_cdo_assembly.h:112
cs_lnum_t l_row_shift
Definition: cs_cdo_assembly.h:122
int edim
Definition: cs_cdo_assembly.h:114
Definition: cs_cdo_assembly.h:86
int n_cols
Definition: cs_cdo_assembly.h:96
const cs_real_t * val
Definition: cs_cdo_assembly.h:101
cs_lnum_t l_id
Definition: cs_cdo_assembly.h:91
cs_real_t * expval
Definition: cs_cdo_assembly.h:102
cs_gnum_t * col_g_id
Definition: cs_cdo_assembly.h:97
cs_gnum_t g_id
Definition: cs_cdo_assembly.h:90
int * col_idx
Definition: cs_cdo_assembly.h:98
int i
Definition: cs_cdo_assembly.h:92
Definition: cs_range_set.h:57