| 
    My Project
    
   programmer's documentation 
   | 
 
#include <ple_locator.h>#include "cs_defs.h"#include "cs_base.h"#include "cs_matrix_assembler.h"#include "cs_mesh.h"#include "cs_parameters.h"
Go to the source code of this file.
Data Structures | |
| struct | cs_internal_coupling_t | 
Functions | |
| int | cs_internal_coupling_n_couplings (void) | 
| Return number of defined internal couplings.  More... | |
| void | cs_internal_coupling_add (cs_mesh_t *mesh, const char criteria_cells[], const char criteria_faces[]) | 
| Define coupling volume using given selection criteria.  More... | |
| void | cs_internal_coupling_add_volume (cs_mesh_t *mesh, const char criteria_cells[]) | 
| Define coupling volume using given criteria. Then, this volume will be separated from the rest of the domain with thin walls.  More... | |
| void | cs_internal_coupling_bcs (int bc_type[]) | 
| Impose wall BCs to internal coupled faces if not yet defined.  More... | |
| void | cs_internal_coupling_finalize (void) | 
| Destruction of all internal coupling related structures.  More... | |
| cs_internal_coupling_t * | cs_internal_coupling_by_id (int coupling_id) | 
| Return the coupling associated with a given coupling_id.  More... | |
| void | cs_internal_coupling_exchange_var (const cs_internal_coupling_t *cpl, int stride, cs_real_t distant[], cs_real_t local[]) | 
| Exchange quantities from distant to local (update local using distant).  More... | |
| void | cs_internal_coupling_exchange_by_cell_id (const cs_internal_coupling_t *cpl, int stride, const cs_real_t tab[], cs_real_t local[]) | 
| Exchange variable between groups using cell id.  More... | |
| void | cs_internal_coupling_exchange_by_face_id (const cs_internal_coupling_t *cpl, int stride, const cs_real_t tab[], cs_real_t local[]) | 
| Exchange variable between groups using face id.  More... | |
| void | cs_internal_coupling_lsq_cocg_contribution (const cs_internal_coupling_t *cpl, cs_real_33_t cocg[]) | 
| void | cs_internal_coupling_lsq_cocg_weighted (const cs_internal_coupling_t *cpl, const cs_real_t *c_weight, cs_real_33_t cocg[]) | 
| void | cs_internal_coupling_it_cocg_contribution (const cs_internal_coupling_t *cpl, cs_real_33_t cocg[]) | 
| void | cs_internal_coupling_setup (void) | 
| Setup internal coupling related parameters.  More... | |
| void | cs_internal_coupling_initialize (void) | 
| Initialize internal coupling related structures.  More... | |
| void | cs_internal_coupling_lsq_scalar_gradient (const cs_internal_coupling_t *cpl, const cs_real_t c_weight[], const int w_stride, cs_real_4_t rhsv[]) | 
| Add internal coupling rhs contribution for LSQ gradient calculation.  More... | |
| void | cs_internal_coupling_lsq_vector_gradient (const cs_internal_coupling_t *cpl, const cs_real_t c_weight[], const int w_stride, const cs_real_3_t pvar[], cs_real_33_t rhs[]) | 
| Add internal coupling rhs contribution for LSQ gradient calculation.  More... | |
| void | cs_internal_coupling_lsq_tensor_gradient (const cs_internal_coupling_t *cpl, const cs_real_t c_weight[], const int w_stride, const cs_real_6_t pvar[], cs_real_63_t rhs[]) | 
| Add internal coupling rhs contribution for LSQ gradient calculation.  More... | |
| void | cs_internal_coupling_iterative_scalar_gradient (const cs_internal_coupling_t *cpl, const cs_real_t c_weight[], cs_real_3_t *restrict grad, const cs_real_t pvar[], cs_real_3_t rhs[]) | 
| Add internal coupling rhs contribution for iterative gradient calculation.  More... | |
| void | cs_internal_coupling_iterative_vector_gradient (const cs_internal_coupling_t *cpl, const cs_real_t c_weight[], cs_real_33_t *restrict grad, const cs_real_3_t pvar[], cs_real_33_t rhs[]) | 
| Add internal coupling rhs contribution for iterative vector gradient calculation.  More... | |
| void | cs_internal_coupling_iterative_tensor_gradient (const cs_internal_coupling_t *cpl, const cs_real_t c_weight[], cs_real_63_t *restrict grad, const cs_real_6_t pvar[], cs_real_63_t rhs[]) | 
| Add internal coupling rhs contribution for iterative tensor gradient calculation.  More... | |
| void | cs_internal_coupling_reconstruct_scalar_gradient (const cs_internal_coupling_t *cpl, cs_real_3_t *restrict r_grad, cs_real_3_t grad[]) | 
| Add internal coupling contribution for reconstruction of the gradient of a scalar.  More... | |
| void | cs_internal_coupling_reconstruct_vector_gradient (const cs_internal_coupling_t *cpl, cs_real_33_t *restrict r_grad, cs_real_33_t grad[]) | 
| Add internal coupling contribution for reconstruction of the gradient of a vector.  More... | |
| void | cs_internal_coupling_reconstruct_tensor_gradient (const cs_internal_coupling_t *cpl, cs_real_63_t *restrict r_grad, cs_real_63_t grad[]) | 
| Add internal coupling contribution for reconstruction of the gradient of a symmetric tensor.  More... | |
| void | cs_internal_coupling_spmv_contribution (bool exclude_diag, const cs_field_t *f, const cs_real_t *restrict x, cs_real_t *restrict y) | 
| void | cs_internal_coupling_matrix_add_ids (int coupling_id, const cs_gnum_t *r_g_id, cs_matrix_assembler_t *ma) | 
| void | cs_internal_coupling_matrix_add_values (const cs_field_t *f, cs_lnum_t db_size, cs_lnum_t eb_size, const cs_gnum_t r_g_id[], cs_matrix_assembler_values_t *mav) | 
| void | cs_internal_coupling_coupled_faces (const cs_internal_coupling_t *cpl, cs_lnum_t *n_local, cs_lnum_t *faces_local[], cs_lnum_t *n_distant, cs_lnum_t *faces_distant[]) | 
| void | cs_internal_coupling_log (const cs_internal_coupling_t *cpl) | 
| void | cs_internal_coupling_dump (void) | 
| void | cs_internal_coupling_preprocess (cs_mesh_t *mesh) | 
| void | cs_internal_coupling_map (cs_mesh_t *mesh) | 
| void | cs_internal_coupling_add_entity (int f_id) | 
| void | cs_internal_coupling_initialize_scalar_gradient (const cs_internal_coupling_t *cpl, const cs_real_t c_weight[], const cs_real_t pvar[], cs_real_3_t *restrict grad) | 
| Add contribution from coupled faces (internal coupling) to initialisation for iterative scalar gradient calculation.  More... | |
| void | cs_internal_coupling_initialize_vector_gradient (const cs_internal_coupling_t *cpl, const cs_real_t c_weight[], const cs_real_3_t pvar[], cs_real_33_t *restrict grad) | 
| Add contribution from coupled faces (internal coupling) to initialisation for iterative vector gradient calculation.  More... | |
| void | cs_internal_coupling_initialize_tensor_gradient (const cs_internal_coupling_t *cpl, const cs_real_t c_weight[], const cs_real_6_t pvar[], cs_real_63_t *restrict grad) | 
| Add contribution from coupled faces (internal coupling) to initialisation for iterative symmetric tensor gradient calculation.  More... | |
| void | cs_ic_field_set_exchcoeff (const int field_id, const cs_real_t *hbnd) | 
| Update internal coupling coefficients of the field of the given id using given boundary exchange coefficients passed by face id.  More... | |
| void | cs_ic_field_dist_data_by_face_id (const int field_id, int stride, const cs_real_t tab_distant[], cs_real_t tab_local[]) | 
| Get distant data using face id at all coupling faces for a given field id.  More... | |
| void cs_ic_field_dist_data_by_face_id | ( | const int | field_id, | 
| int | stride, | ||
| const cs_real_t | tab_distant[], | ||
| cs_real_t | tab_local[] | ||
| ) | 
Get distant data using face id at all coupling faces for a given field id.
| [in] | field_id | field id | 
| [in] | stride | number of values (interlaced) by entity | 
| [in] | tab_distant | exchanged data by face id | 
| [out] | tab_local | local data by face id | 
| void cs_ic_field_set_exchcoeff | ( | const int | field_id, | 
| const cs_real_t * | hbnd | ||
| ) | 
Update internal coupling coefficients of the field of the given id using given boundary exchange coefficients passed by face id.
| [in] | field_id | field id | 
| [in] | hbnd | boundary exchange coefficients passed by face id | 
| void cs_internal_coupling_add | ( | cs_mesh_t * | mesh, | 
| const char | criteria_cells[], | ||
| const char | criteria_faces[] | ||
| ) | 
Define coupling volume using given selection criteria.
Then, this volume must be seperated from the rest of the domain with a wall.
| [in,out] | mesh | pointer to mesh structure to modify | 
| [in] | criteria_cells | criteria for the first group of cells | 
| [in] | criteria_faces | criteria for faces to be joined | 
| void cs_internal_coupling_add_entity | ( | int | f_id | ) | 
| void cs_internal_coupling_add_volume | ( | cs_mesh_t * | mesh, | 
| const char | criteria_cells[] | ||
| ) | 
Define coupling volume using given criteria. Then, this volume will be separated from the rest of the domain with thin walls.
| [in,out] | mesh | pointer to mesh structure to modify | 
| [in] | criteria_cells | criteria for the first group of cells | 
| void cs_internal_coupling_bcs | ( | int | bc_type[] | ) | 
Impose wall BCs to internal coupled faces if not yet defined.
| [in,out] | bc_type | face boundary condition type | 
| cs_internal_coupling_t* cs_internal_coupling_by_id | ( | int | coupling_id | ) | 
Return the coupling associated with a given coupling_id.
| [in] | coupling_id | associated with a coupling entity | 
| void cs_internal_coupling_coupled_faces | ( | const cs_internal_coupling_t * | cpl, | 
| cs_lnum_t * | n_local, | ||
| cs_lnum_t * | faces_local[], | ||
| cs_lnum_t * | n_distant, | ||
| cs_lnum_t * | faces_distant[] | ||
| ) | 
| void cs_internal_coupling_dump | ( | void | ) | 
| void cs_internal_coupling_exchange_by_cell_id | ( | const cs_internal_coupling_t * | cpl, | 
| int | stride, | ||
| const cs_real_t | tab[], | ||
| cs_real_t | local[] | ||
| ) | 
Exchange variable between groups using cell id.
| [in] | cpl | pointer to coupling entity | 
| [in] | stride | number of values (non interlaced) by entity | 
| [in] | tab | variable exchanged | 
| [out] | local | local data | 
| void cs_internal_coupling_exchange_by_face_id | ( | const cs_internal_coupling_t * | cpl, | 
| int | stride, | ||
| const cs_real_t | tab[], | ||
| cs_real_t | local[] | ||
| ) | 
Exchange variable between groups using face id.
| [in] | cpl | pointer to coupling entity | 
| [in] | stride | number of values (non interlaced) by entity | 
| [in] | tab | variable exchanged | 
| [out] | local | local data | 
| void cs_internal_coupling_exchange_var | ( | const cs_internal_coupling_t * | cpl, | 
| int | stride, | ||
| cs_real_t | distant[], | ||
| cs_real_t | local[] | ||
| ) | 
Exchange quantities from distant to local (update local using distant).
| [in] | cpl | pointer to coupling entity | 
| [in] | stride | stride (e.g. 1 for double, 3 for interleaved coordinates) | 
| [in] | distant | distant values, size coupling->n_distant | 
| [out] | local | local values, size coupling->n_local | 
| void cs_internal_coupling_finalize | ( | void | ) | 
Destruction of all internal coupling related structures.
| void cs_internal_coupling_initialize | ( | void | ) | 
Initialize internal coupling related structures.
| void cs_internal_coupling_initialize_scalar_gradient | ( | const cs_internal_coupling_t * | cpl, | 
| const cs_real_t | c_weight[], | ||
| const cs_real_t | pvar[], | ||
| cs_real_3_t *restrict | grad | ||
| ) | 
Add contribution from coupled faces (internal coupling) to initialisation for iterative scalar gradient calculation.
| [in] | cpl | pointer to coupling entity | 
| [in] | c_weight | weighted gradient coefficient variable, or NULL | 
| [in] | pvar | variable | 
| [in,out] | grad | gradient | 
| void cs_internal_coupling_initialize_tensor_gradient | ( | const cs_internal_coupling_t * | cpl, | 
| const cs_real_t | c_weight[], | ||
| const cs_real_6_t | pvar[], | ||
| cs_real_63_t *restrict | grad | ||
| ) | 
Add contribution from coupled faces (internal coupling) to initialisation for iterative symmetric tensor gradient calculation.
| [in] | cpl | pointer to coupling entity | 
| [in] | c_weight | weighted gradient coefficient variable, or NULL | 
| [in,out] | pvar | variable | 
| [in,out] | grad | gradient | 
| void cs_internal_coupling_initialize_vector_gradient | ( | const cs_internal_coupling_t * | cpl, | 
| const cs_real_t | c_weight[], | ||
| const cs_real_3_t | pvar[], | ||
| cs_real_33_t *restrict | grad | ||
| ) | 
Add contribution from coupled faces (internal coupling) to initialisation for iterative vector gradient calculation.
| [in] | cpl | pointer to coupling entity | 
| [in] | c_weight | weighted gradient coefficient variable, or NULL | 
| [in] | pvar | variable | 
| [in,out] | grad | gradient | 
| void cs_internal_coupling_it_cocg_contribution | ( | const cs_internal_coupling_t * | cpl, | 
| cs_real_33_t | cocg[] | ||
| ) | 
| void cs_internal_coupling_iterative_scalar_gradient | ( | const cs_internal_coupling_t * | cpl, | 
| const cs_real_t | c_weight[], | ||
| cs_real_3_t *restrict | grad, | ||
| const cs_real_t | pvar[], | ||
| cs_real_3_t | rhs[] | ||
| ) | 
Add internal coupling rhs contribution for iterative gradient calculation.
| [in] | cpl | pointer to coupling entity | 
| [in] | c_weight | weighted gradient coefficient variable, or NULL | 
| [in] | grad | pointer to gradient | 
| [in] | pvar | pointer to variable | 
| [in,out] | rhs | pointer to rhs contribution | 
| void cs_internal_coupling_iterative_tensor_gradient | ( | const cs_internal_coupling_t * | cpl, | 
| const cs_real_t | c_weight[], | ||
| cs_real_63_t *restrict | grad, | ||
| const cs_real_6_t | pvar[], | ||
| cs_real_63_t | rhs[] | ||
| ) | 
Add internal coupling rhs contribution for iterative tensor gradient calculation.
| [in] | cpl | pointer to coupling entity | 
| [in] | c_weight | weighted gradient coefficient variable, or NULL | 
| [in] | grad | pointer to gradient | 
| [in] | pvar | pointer to variable | 
| [in,out] | rhs | pointer to rhs contribution | 
| void cs_internal_coupling_iterative_vector_gradient | ( | const cs_internal_coupling_t * | cpl, | 
| const cs_real_t | c_weight[], | ||
| cs_real_33_t *restrict | grad, | ||
| const cs_real_3_t | pvar[], | ||
| cs_real_33_t | rhs[] | ||
| ) | 
Add internal coupling rhs contribution for iterative vector gradient calculation.
| [in] | cpl | pointer to coupling entity | 
| [in] | c_weight | weighted gradient coefficient variable, or NULL | 
| [in] | grad | pointer to gradient | 
| [in] | pvar | pointer to variable | 
| [in,out] | rhs | pointer to rhs contribution | 
| void cs_internal_coupling_log | ( | const cs_internal_coupling_t * | cpl | ) | 
| void cs_internal_coupling_lsq_cocg_contribution | ( | const cs_internal_coupling_t * | cpl, | 
| cs_real_33_t | cocg[] | ||
| ) | 
| void cs_internal_coupling_lsq_cocg_weighted | ( | const cs_internal_coupling_t * | cpl, | 
| const cs_real_t * | c_weight, | ||
| cs_real_33_t | cocg[] | ||
| ) | 
| void cs_internal_coupling_lsq_scalar_gradient | ( | const cs_internal_coupling_t * | cpl, | 
| const cs_real_t | c_weight[], | ||
| const int | w_stride, | ||
| cs_real_4_t | rhsv[] | ||
| ) | 
Add internal coupling rhs contribution for LSQ gradient calculation.
| [in] | cpl | pointer to coupling entity | 
| [in] | c_weight | weighted gradient coefficient variable, or NULL | 
| [in] | w_stride | stride of weighting coefficient | 
| [in,out] | rhsv | pointer to rhs contribution | 
| void cs_internal_coupling_lsq_tensor_gradient | ( | const cs_internal_coupling_t * | cpl, | 
| const cs_real_t | c_weight[], | ||
| const int | w_stride, | ||
| const cs_real_6_t | pvar[], | ||
| cs_real_63_t | rhs[] | ||
| ) | 
Add internal coupling rhs contribution for LSQ gradient calculation.
| [in] | cpl | pointer to coupling entity | 
| [in] | c_weight | weighted gradient coefficient variable, or NULL | 
| [in] | w_stride | stride of weighting coefficient | 
| [in] | pvar | pointer to variable | 
| [in,out] | rhs | pointer to rhs contribution | 
| void cs_internal_coupling_lsq_vector_gradient | ( | const cs_internal_coupling_t * | cpl, | 
| const cs_real_t | c_weight[], | ||
| const int | w_stride, | ||
| const cs_real_3_t | pvar[], | ||
| cs_real_33_t | rhs[] | ||
| ) | 
Add internal coupling rhs contribution for LSQ gradient calculation.
| [in] | cpl | pointer to coupling entity | 
| [in] | c_weight | weighted gradient coefficient variable, or NULL | 
| [in] | w_stride | stride of weighting coefficient | 
| [in] | pvar | pointer to variable | 
| [in,out] | rhs | pointer to rhs contribution | 
| void cs_internal_coupling_map | ( | cs_mesh_t * | mesh | ) | 
| void cs_internal_coupling_matrix_add_ids | ( | int | coupling_id, | 
| const cs_gnum_t * | r_g_id, | ||
| cs_matrix_assembler_t * | ma | ||
| ) | 
| void cs_internal_coupling_matrix_add_values | ( | const cs_field_t * | f, | 
| cs_lnum_t | db_size, | ||
| cs_lnum_t | eb_size, | ||
| const cs_gnum_t | r_g_id[], | ||
| cs_matrix_assembler_values_t * | mav | ||
| ) | 
| int cs_internal_coupling_n_couplings | ( | void | ) | 
Return number of defined internal couplings.
| void cs_internal_coupling_preprocess | ( | cs_mesh_t * | mesh | ) | 
| void cs_internal_coupling_reconstruct_scalar_gradient | ( | const cs_internal_coupling_t * | cpl, | 
| cs_real_3_t *restrict | r_grad, | ||
| cs_real_3_t | grad[] | ||
| ) | 
Add internal coupling contribution for reconstruction of the gradient of a scalar.
| [in] | cpl | pointer to coupling entity | 
| [in] | r_grad | pointer to reconstruction gradient | 
| [in,out] | grad | pointer to gradient to be reconstructed var | 
| void cs_internal_coupling_reconstruct_tensor_gradient | ( | const cs_internal_coupling_t * | cpl, | 
| cs_real_63_t *restrict | r_grad, | ||
| cs_real_63_t | grad[] | ||
| ) | 
Add internal coupling contribution for reconstruction of the gradient of a symmetric tensor.
| [in] | cpl | pointer to coupling entity | 
| [in] | r_grad | pointer to reconstruction gradient | 
| [in,out] | grad | pointer to gradient to be reconstructed var | 
| void cs_internal_coupling_reconstruct_vector_gradient | ( | const cs_internal_coupling_t * | cpl, | 
| cs_real_33_t *restrict | r_grad, | ||
| cs_real_33_t | grad[] | ||
| ) | 
Add internal coupling contribution for reconstruction of the gradient of a vector.
| [in] | cpl | pointer to coupling entity | 
| [in] | r_grad | pointer to reconstruction gradient | 
| [in,out] | grad | pointer to gradient to be reconstructed var | 
| void cs_internal_coupling_setup | ( | void | ) | 
Setup internal coupling related parameters.
| void cs_internal_coupling_spmv_contribution | ( | bool | exclude_diag, | 
| const cs_field_t * | f, | ||
| const cs_real_t *restrict | x, | ||
| cs_real_t *restrict | y | ||
| ) | 
 1.8.16