#include <cs_cdo_system.h>
Data Fields | |
cs_cdo_system_type_t | type |
int | n_col_blocks |
cs_lnum_t * | col_block_sizes |
cs_lnum_t * | max_col_block_sizes |
cs_lnum_t | full_rhs_size |
cs_real_t * | rhs |
cs_real_t * | _rhs |
cs_real_t ** | rhs_array |
int | n_blocks |
cs_cdo_system_block_t ** | blocks |
Structure to handle linear systems which may be simply described by one block and one matrix or can be defined by a set of different blocks in more complex situations. The layout of the matrix is detailed thanks to block of different nature. The rhs can be also defined by block or thanks to a full-length array.
cs_real_t* _rhs |
blocks |
array of pointers to block structures
col_block_sizes |
size of each block (size = n_elts * stride). This size corresponds to the number of DoFs in a "scattered" view
full_rhs_size |
size of the rhs when taking into account all column blocks
max_col_block_sizes |
max. size of each block. This size takes into account DoFs shared across ranks. In a sequential run, the values in the max_col_block_sizes array should be equal to the values in the col_block_sizes array.
n_blocks |
number of blocks used to describe the system layout
n_col_blocks |
number of blocks in a row
rhs |
If allocated, it means that the system has its own rhs which is allocated in one array of the maximal size
rhs_array |
rhs array which is split in as many parts as there are blocks in a row (size n_col_blocks)
type |
type of system. The type predefines some behaviors.