programmer's documentation
Data Structures | Functions
cs_internal_coupling.h File Reference
#include <ple_locator.h>
#include "cs_base.h"
#include "cs_mesh.h"
#include "cs_parameters.h"
Include dependency graph for cs_internal_coupling.h:

Go to the source code of this file.

Data Structures

struct  cs_internal_coupling_t
 

Functions

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)
 
cs_internal_coupling_tcs_internal_coupling_by_id (int coupling_id)
 
void cs_internal_coupling_exchange_var (const cs_internal_coupling_t *cpl, int stride, cs_real_t distant[], cs_real_t local[])
 
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[])
 
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[])
 
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_initialize (void)
 
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, void *input, const cs_real_t *restrict x, cs_real_t *restrict y)
 
void cs_matrix_preconditionning_add_coupling_contribution (void *input, cs_real_t *ad)
 
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_ic_set_exchcoeff (const int field_id, const cs_real_t *hbord)
 
void cs_internal_coupling_add_volume (cs_mesh_t *mesh, const char criteria_cells[])
 
void cs_internal_coupling_add_volumes_finalize (cs_mesh_t *mesh)
 
void cs_internal_coupling_add (cs_mesh_t *mesh, const char criteria_cells[], const char criteria_faces[])
 
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...
 

Function Documentation

◆ cs_ic_set_exchcoeff()

void cs_ic_set_exchcoeff ( const int  field_id,
const cs_real_t hbord 
)

◆ cs_internal_coupling_add()

void cs_internal_coupling_add ( cs_mesh_t mesh,
const char  criteria_cells[],
const char  criteria_faces[] 
)

◆ cs_internal_coupling_add_entity()

void cs_internal_coupling_add_entity ( int  f_id)

◆ cs_internal_coupling_add_volume()

void cs_internal_coupling_add_volume ( cs_mesh_t mesh,
const char  criteria_cells[] 
)

◆ cs_internal_coupling_add_volumes_finalize()

void cs_internal_coupling_add_volumes_finalize ( cs_mesh_t mesh)

◆ cs_internal_coupling_bcs()

void cs_internal_coupling_bcs ( int  bc_type[])

Impose wall BCs to internal coupled faces if not yet defined.

Parameters
[in,out]bc_typeface boundary condition type

◆ cs_internal_coupling_by_id()

cs_internal_coupling_t* cs_internal_coupling_by_id ( int  coupling_id)

◆ cs_internal_coupling_coupled_faces()

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[] 
)

◆ cs_internal_coupling_dump()

void cs_internal_coupling_dump ( void  )

◆ cs_internal_coupling_exchange_by_cell_id()

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[] 
)

◆ cs_internal_coupling_exchange_by_face_id()

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[] 
)

◆ cs_internal_coupling_exchange_var()

void cs_internal_coupling_exchange_var ( const cs_internal_coupling_t cpl,
int  stride,
cs_real_t  distant[],
cs_real_t  local[] 
)

◆ cs_internal_coupling_finalize()

void cs_internal_coupling_finalize ( void  )

◆ cs_internal_coupling_initialize()

void cs_internal_coupling_initialize ( void  )

◆ cs_internal_coupling_initialize_scalar_gradient()

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.

Parameters
[in]cplpointer to coupling entity
[in]c_weightweighted gradient coefficient variable, or NULL
[in,out]pvarvariable
[in,out]gradgradient

◆ cs_internal_coupling_initialize_tensor_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.

Parameters
[in]cplpointer to coupling entity
[in]c_weightweighted gradient coefficient variable, or NULL
[in,out]pvarvariable
[in,out]gradgradient

◆ cs_internal_coupling_initialize_vector_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.

Parameters
[in]cplpointer to coupling entity
[in]c_weightweighted gradient coefficient variable, or NULL
[in,out]pvarvariable
[in,out]gradgradient

◆ cs_internal_coupling_it_cocg_contribution()

void cs_internal_coupling_it_cocg_contribution ( const cs_internal_coupling_t cpl,
cs_real_33_t  cocg[] 
)

◆ cs_internal_coupling_iterative_scalar_gradient()

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.

Parameters
[in]cplpointer to coupling entity
[in]c_weightweighted gradient coefficient variable, or NULL
[in]gradpointer to gradient
[in]pvarpointer to variable
[in,out]rhspointer to rhs contribution

◆ cs_internal_coupling_iterative_tensor_gradient()

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.

Parameters
[in]cplpointer to coupling entity
[in]c_weightweighted gradient coefficient variable, or NULL
[in]gradpointer to gradient
[in]pvarpointer to variable
[in,out]rhspointer to rhs contribution

◆ cs_internal_coupling_iterative_vector_gradient()

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.

Parameters
[in]cplpointer to coupling entity
[in]c_weightweighted gradient coefficient variable, or NULL
[in]gradpointer to gradient
[in]pvarpointer to variable
[in,out]rhspointer to rhs contribution

◆ cs_internal_coupling_log()

void cs_internal_coupling_log ( const cs_internal_coupling_t cpl)

◆ cs_internal_coupling_lsq_cocg_contribution()

void cs_internal_coupling_lsq_cocg_contribution ( const cs_internal_coupling_t cpl,
cs_real_33_t  cocg[] 
)

◆ cs_internal_coupling_lsq_cocg_weighted()

void cs_internal_coupling_lsq_cocg_weighted ( const cs_internal_coupling_t cpl,
const cs_real_t c_weight,
cs_real_33_t  cocg[] 
)

◆ cs_internal_coupling_lsq_scalar_gradient()

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.

Parameters
[in]cplpointer to coupling entity
[in]c_weightweighted gradient coefficient variable, or NULL
[in]w_stridestride of weighting coefficient
[in,out]rhspointer to rhs contribution

◆ cs_internal_coupling_lsq_tensor_gradient()

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.

Parameters
[in]cplpointer to coupling entity
[in]c_weightweighted gradient coefficient variable, or NULL
[in]w_stridestride of weighting coefficient
[in]pvarpointer to variable
[in,out]rhspointer to rhs contribution

◆ cs_internal_coupling_lsq_vector_gradient()

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.

Parameters
[in]cplpointer to coupling entity
[in]c_weightweighted gradient coefficient variable, or NULL
[in]w_stridestride of weighting coefficient
[in]pvarpointer to variable
[in,out]rhspointer to rhs contribution

◆ cs_internal_coupling_reconstruct_scalar_gradient()

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.

Parameters
[in]cplpointer to coupling entity
[in]r_gradpointer to reconstruction gradient
[in,out]gradpointer to gradient to be reconstructed var

◆ cs_internal_coupling_reconstruct_tensor_gradient()

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.

Parameters
[in]cplpointer to coupling entity
[in]r_gradpointer to reconstruction gradient
[in,out]gradpointer to gradient to be reconstructed var

◆ cs_internal_coupling_reconstruct_vector_gradient()

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.

Parameters
[in]cplpointer to coupling entity
[in]r_gradpointer to reconstruction gradient
[in,out]gradpointer to gradient to be reconstructed var

◆ cs_internal_coupling_spmv_contribution()

void cs_internal_coupling_spmv_contribution ( bool  exclude_diag,
void *  input,
const cs_real_t *restrict  x,
cs_real_t *restrict  y 
)

◆ cs_matrix_preconditionning_add_coupling_contribution()

void cs_matrix_preconditionning_add_coupling_contribution ( void *  input,
cs_real_t ad 
)