programmer's documentation
Data Structures | Functions
cs_equation_common.h File Reference
#include "cs_cdo_bc.h"
#include "cs_cdo_connect.h"
#include "cs_cdo_quantities.h"
#include "cs_cdo_time.h"
#include "cs_matrix.h"
#include "cs_time_step.h"
#include "cs_timer.h"
#include "cs_source_term.h"
Include dependency graph for cs_equation_common.h:

Go to the source code of this file.

Data Structures

struct  cs_equation_monitor_t
 

Functions

void cs_equation_allocate_common_structures (const cs_cdo_connect_t *connect, const cs_cdo_quantities_t *quant, const cs_time_step_t *time_step, cs_flag_t scheme_flag)
 Allocate a pointer to a buffer of size at least the 2*n_cells for managing temporary usage of memory when dealing with equations Call specific structure allocation related to a numerical scheme according the scheme flag The size of the temporary buffer can be bigger according to the numerical settings Set also shared pointers from the main domain members. More...
 
void cs_equation_free_common_structures (cs_flag_t scheme_flag)
 Allocate a pointer to a buffer of size at least the 2*n_cells for managing temporary usage of memory when dealing with equations Call specific structure allocation related to a numerical scheme according the scheme flag The size of the temporary buffer can be bigger according to the numerical settings. More...
 
cs_real_tcs_equation_compute_dirichlet_sv (const cs_mesh_t *mesh, const cs_param_bc_t *bc_param, const cs_cdo_bc_list_t *dir, cs_cell_builder_t *cb)
 Compute the values of the Dirichlet BCs when DoFs are scalar_valued and attached to vertices. More...
 
void cs_equation_assemble_v (const cs_cell_sys_t *csys, const cs_range_set_t *rset, cs_flag_t sys_flag, cs_real_t *rhs, cs_real_t *sources, cs_matrix_assembler_values_t *mav)
 Assemble a cellwise system related to cell vertices into the global algebraic system. More...
 
const cs_matrix_structure_tcs_equation_get_matrix_structure (cs_space_scheme_t scheme)
 Retrieve a pointer to the associated cs_matrix_structure_t according to the space scheme. More...
 
const cs_matrix_assembler_tcs_equation_get_matrix_assembler (cs_space_scheme_t scheme)
 Retrieve a pointer to the associated cs_matrix_assembler_t according to the space scheme. More...
 
const cs_connect_index_tcs_equation_get_v2v_index (void)
 Get the connectivity vertex->vertices for the local rank. More...
 
const cs_connect_index_tcs_equation_get_f2f_index (void)
 Get the connectivity face->faces for the local rank. More...
 
cs_real_tcs_equation_get_tmpbuf (void)
 Retrieve a pointer to a buffer of size at least the 2*n_cells The size of the temporary buffer can be bigger according to the numerical settings. More...
 
size_t cs_equation_get_tmpbuf_size (void)
 Get the allocation size of the temporary buffer. More...
 
cs_equation_monitor_tcs_equation_init_monitoring (void)
 Initialize a monitoring structure. More...
 
void cs_equation_write_monitoring (const char *eqname, const cs_equation_monitor_t *monitor)
 Print a message in the performance output file related to the monitoring of equation. More...
 

Function Documentation

◆ cs_equation_allocate_common_structures()

void cs_equation_allocate_common_structures ( const cs_cdo_connect_t connect,
const cs_cdo_quantities_t quant,
const cs_time_step_t time_step,
cs_flag_t  scheme_flag 
)

Allocate a pointer to a buffer of size at least the 2*n_cells for managing temporary usage of memory when dealing with equations Call specific structure allocation related to a numerical scheme according the scheme flag The size of the temporary buffer can be bigger according to the numerical settings Set also shared pointers from the main domain members.

Parameters
[in]connectpointer to a cs_cdo_connect_t structure
[in]quantpointer to additional mesh quantities struct.
[in]time_steppointer to a time step structure
[in]scheme_flagflag to identify which kind of numerical scheme is requested to solve the computational domain

◆ cs_equation_assemble_v()

void cs_equation_assemble_v ( const cs_cell_sys_t csys,
const cs_range_set_t rset,
cs_flag_t  sys_flag,
cs_real_t rhs,
cs_real_t sources,
cs_matrix_assembler_values_t mav 
)

Assemble a cellwise system related to cell vertices into the global algebraic system.

Parameters
[in]csyscellwise view of the algebraic system
[in]rsetpointer to a cs_range_set_t structure on vertices
[in]sys_flagflag associated to the current system builder
[in,out]rhsarray storing the right-hand side
[in,out]sourcesarray storing the contribution of source terms
[in,out]mavpointer to a matrix assembler structure

◆ cs_equation_compute_dirichlet_sv()

cs_real_t* cs_equation_compute_dirichlet_sv ( const cs_mesh_t mesh,
const cs_param_bc_t bc_param,
const cs_cdo_bc_list_t dir,
cs_cell_builder_t cb 
)

Compute the values of the Dirichlet BCs when DoFs are scalar_valued and attached to vertices.

Parameters
[in]meshpointer to a cs_mesh_t structure
[in]bc_parampointer to a cs_param_bc_t structure
[in]dirpointer to a cs_cdo_bc_list_t structure
[in,out]cbpointer to a cs_cell_builder_t structure
Returns
a pointer to a new allocated array storing the dirichlet values

Compute the values of the Dirichlet BCs when DoFs are scalar_valued and attached to vertices.

Parameters
[in]meshpointer to a cs_mesh_t structure
[in]bc_parampointer to a cs_param_bc_t structure
[in]dirpointer to a cs_cdo_bc_list_t structure
[in,out]cbpointer to a cs_cell_builder_t structure
Returns
a pointer to a new allocated array storing the dirichlet values

◆ cs_equation_free_common_structures()

void cs_equation_free_common_structures ( cs_flag_t  scheme_flag)

Allocate a pointer to a buffer of size at least the 2*n_cells for managing temporary usage of memory when dealing with equations Call specific structure allocation related to a numerical scheme according the scheme flag The size of the temporary buffer can be bigger according to the numerical settings.

Parameters
[in]scheme_flagflag to identify which kind of numerical scheme is requested to solve the computational domain

◆ cs_equation_get_f2f_index()

const cs_connect_index_t* cs_equation_get_f2f_index ( void  )

Get the connectivity face->faces for the local rank.

Returns
a pointer to a cs_connect_index_t structure

◆ cs_equation_get_matrix_assembler()

const cs_matrix_assembler_t* cs_equation_get_matrix_assembler ( cs_space_scheme_t  scheme)

Retrieve a pointer to the associated cs_matrix_assembler_t according to the space scheme.

Parameters
[in]schemeenum on the discretization scheme used
Returns
a pointer on a cs_matrix_assembler_t *

◆ cs_equation_get_matrix_structure()

const cs_matrix_structure_t* cs_equation_get_matrix_structure ( cs_space_scheme_t  scheme)

Retrieve a pointer to the associated cs_matrix_structure_t according to the space scheme.

Parameters
[in]schemeenum on the discretization scheme used
Returns
a pointer on a cs_matrix_structure_t *

◆ cs_equation_get_tmpbuf()

cs_real_t* cs_equation_get_tmpbuf ( void  )

Retrieve a pointer to a buffer of size at least the 2*n_cells The size of the temporary buffer can be bigger according to the numerical settings.

Returns
a pointer to an array of double

◆ cs_equation_get_tmpbuf_size()

size_t cs_equation_get_tmpbuf_size ( void  )

Get the allocation size of the temporary buffer.

Returns
the size of the temporary buffer

◆ cs_equation_get_v2v_index()

const cs_connect_index_t* cs_equation_get_v2v_index ( void  )

Get the connectivity vertex->vertices for the local rank.

Returns
a pointer to a cs_connect_index_t structure

◆ cs_equation_init_monitoring()

cs_equation_monitor_t* cs_equation_init_monitoring ( void  )

Initialize a monitoring structure.

Returns
a cs_equation_monitor_t structure

◆ cs_equation_write_monitoring()

void cs_equation_write_monitoring ( const char *  eqname,
const cs_equation_monitor_t monitor 
)

Print a message in the performance output file related to the monitoring of equation.

Parameters
[in]eqnamepointer to the name of the current equation
[in]monitormonitoring structure