programmer's documentation
Macros | Functions
cs_cdo_scheme_geometry.c File Reference
#include "cs_defs.h"
#include <assert.h>
#include <bft_printf.h>
#include "cs_cdo_scheme_geometry.h"
Include dependency graph for cs_cdo_scheme_geometry.c:

Macros

#define _dp3   cs_math_3_dot_product
 

Functions

static void _get_wvf_pefcvol (short int f, const cs_quant_t pfq, const cs_cell_mesh_t *cm, const double hf_coef, const double f_coef, cs_real_t *wvf, cs_real_t *pefc_vol)
 Compute for a face the weight related to each vertex w_{v,f} This weight is equal to |dc(v) cap f|/|f| so that the sum of the weights is equal to 1. Compute also the volume pefc attached to each edge of the face. More...
 
void cs_compute_grd_ve (const short int v1, const short int v2, const cs_nvec3_t deq, const cs_real_3_t uvc[], const cs_real_t lvc[], cs_real_t *grd_v1, cs_real_t *grd_v2)
 Compute the gradient of a Lagrange hat function related to primal vertices in a p_{ef,c} subvolume of a cell c where e is an edge belonging to the face f with vertices v1 and v2. More...
 
void cs_compute_tef_grdc (short int f, const cs_cell_mesh_t *cm, cs_real_t *tef, cs_real_t *grd_c)
 Compute tef (the are of the triangle of base e and apex f Compute also the value of the constant gradient attached to xc in p_{f,c}. More...
 
void cs_compute_fwbs_q0 (short int f, const cs_cell_mesh_t *cm, cs_real_t *wvf, cs_real_t *pefc_vol)
 Compute for a face the weight related to each vertex w_{v,f} This weight is equal to |dc(v) cap f|/|f| so that the sum of the weights is equal to 1. Compute also the volume pefc attached to each edge of the face wvf should be allocated to n_max_vbyc and pefc_vol to n_max_ebyf. More...
 
double cs_compute_fwbs_q1 (short int f, const cs_cell_mesh_t *cm, cs_real_t *wvf, cs_real_t *pefc_vol)
 Compute for a face the weight related to each vertex w_{v,f} This weight is equal to |dc(v) cap f|/|f| so that the sum of the weights is equal to 1. Compute also the volume pefc attached to each edge of the face wvf should be allocated to n_max_vbyc and pefc_vol to n_max_ebyf. More...
 
void cs_compute_fwbs_q2 (short int f, const cs_cell_mesh_t *cm, cs_real_3_t grd_c, cs_real_t *wvf, cs_real_t *pefc_vol)
 Compute for a face the weight related to each vertex w_{v,f} This weight is equal to |dc(v) cap f|/|f| so that the sum of the weights is equal to 1. Compute also the volume pefc attached to each edge of the face wvf should be allocated to n_max_vbyc and pefc_vol to n_max_ebyf. More...
 
double cs_compute_fwbs_q3 (short int f, const cs_cell_mesh_t *cm, cs_real_3_t grd_c, cs_real_t *wvf, cs_real_t *pefc_vol)
 Compute for a face the weight related to each vertex w_{v,f} This weight is equal to |dc(v) cap f|/|f| so that the sum of the weights is equal to 1. Compute also the volume pefc attached to each edge of the face wvf should be allocated to n_max_vbyc and pefc_vol to n_max_ebyf. More...
 

Macro Definition Documentation

§ _dp3

#define _dp3   cs_math_3_dot_product

Function Documentation

§ _get_wvf_pefcvol()

static void _get_wvf_pefcvol ( short int  f,
const cs_quant_t  pfq,
const cs_cell_mesh_t cm,
const double  hf_coef,
const double  f_coef,
cs_real_t wvf,
cs_real_t pefc_vol 
)
inlinestatic

Compute for a face the weight related to each vertex w_{v,f} This weight is equal to |dc(v) cap f|/|f| so that the sum of the weights is equal to 1. Compute also the volume pefc attached to each edge of the face.

Parameters
[in]fid of the face in the cell-wise numbering
[in]pfqprimal face quantities
[in]cmpointer to a cs_cell_mesh_t structure
[in]hf_coefcoefficient related to the height of p_{f,c}
[in]f_coefcoefficient related to the area of f
[in,out]wvfpointer to an array storing the weight/vertex
[in,out]pefc_volpointer to an array storing the volume of pefc

§ cs_compute_fwbs_q0()

void cs_compute_fwbs_q0 ( short int  f,
const cs_cell_mesh_t cm,
cs_real_t wvf,
cs_real_t pefc_vol 
)

Compute for a face the weight related to each vertex w_{v,f} This weight is equal to |dc(v) cap f|/|f| so that the sum of the weights is equal to 1. Compute also the volume pefc attached to each edge of the face wvf should be allocated to n_max_vbyc and pefc_vol to n_max_ebyf.

Parameters
[in]fid of the face in the cell-wise numbering
[in]cmpointer to a cs_cell_mesh_t structure
[in,out]wvfpointer to an array storing the weight/vertex
[in,out]pefc_volpointer to an array storing the volume of pefc

§ cs_compute_fwbs_q1()

double cs_compute_fwbs_q1 ( short int  f,
const cs_cell_mesh_t cm,
cs_real_t wvf,
cs_real_t pefc_vol 
)

Compute for a face the weight related to each vertex w_{v,f} This weight is equal to |dc(v) cap f|/|f| so that the sum of the weights is equal to 1. Compute also the volume pefc attached to each edge of the face wvf should be allocated to n_max_vbyc and pefc_vol to n_max_ebyf.

Parameters
[in]fid of the face in the cell-wise numbering
[in]cmpointer to a cs_cell_mesh_t structure
[in,out]wvfpointer to an array storing the weight/vertex
[in,out]pefc_volpointer to an array storing the volume of pefc
Returns
the volume of p_{f,c}

§ cs_compute_fwbs_q2()

void cs_compute_fwbs_q2 ( short int  f,
const cs_cell_mesh_t cm,
cs_real_3_t  grd_c,
cs_real_t wvf,
cs_real_t pefc_vol 
)

Compute for a face the weight related to each vertex w_{v,f} This weight is equal to |dc(v) cap f|/|f| so that the sum of the weights is equal to 1. Compute also the volume pefc attached to each edge of the face wvf should be allocated to n_max_vbyc and pefc_vol to n_max_ebyf.

Parameters
[in]fid of the face in the cell-wise numbering
[in]cmpointer to a cs_cell_mesh_t structure
[in,out]grd_cgradient of the Lagrange function related to xc
[in,out]wvfpointer to an array storing the weight/vertex
[in,out]pefc_volpointer to an array storing the volume of pefc

§ cs_compute_fwbs_q3()

double cs_compute_fwbs_q3 ( short int  f,
const cs_cell_mesh_t cm,
cs_real_3_t  grd_c,
cs_real_t wvf,
cs_real_t pefc_vol 
)

Compute for a face the weight related to each vertex w_{v,f} This weight is equal to |dc(v) cap f|/|f| so that the sum of the weights is equal to 1. Compute also the volume pefc attached to each edge of the face wvf should be allocated to n_max_vbyc and pefc_vol to n_max_ebyf.

Parameters
[in]fid of the face in the cell-wise numbering
[in]cmpointer to a cs_cell_mesh_t structure
[in,out]grd_cgradient of the Lagrange function related to xc
[in,out]wvfpointer to an array storing the weight/vertex
[in,out]pefc_volpointer to an array storing the volume of pefc
Returns
the volume of p_{f,c}

§ cs_compute_grd_ve()

void cs_compute_grd_ve ( const short int  v1,
const short int  v2,
const cs_nvec3_t  deq,
const cs_real_3_t  uvc[],
const cs_real_t  lvc[],
cs_real_t grd_v1,
cs_real_t grd_v2 
)

Compute the gradient of a Lagrange hat function related to primal vertices in a p_{ef,c} subvolume of a cell c where e is an edge belonging to the face f with vertices v1 and v2.

Parameters
[in]v1number of the first vertex in cell numbering
[in]v2number of the second vertex in cell numbering
[in]deqdual edge quantities
[in]uvcxc –> xv unit tangent vector
[in]lvcxc –> xv vector length
[in,out]grd_v1gradient of Lagrange function related to v1
[in,out]grd_v2gradient of Lagrange function related to v2

§ cs_compute_tef_grdc()

void cs_compute_tef_grdc ( short int  f,
const cs_cell_mesh_t cm,
cs_real_t tef,
cs_real_t grd_c 
)

Compute tef (the are of the triangle of base e and apex f Compute also the value of the constant gradient attached to xc in p_{f,c}.

Parameters
[in]fid of the face in the cell-wise numbering
[in]cmpointer to a cs_cell_mesh_t structure
[in,out]tefpointer to an array storing area of tef triangles
[in,out]grd_cgradient of the Lagrange function related to xc