|  | programmer's documentation | 
#include "cs_defs.h"#include <assert.h>#include <errno.h>#include <stdio.h>#include <stdarg.h>#include <string.h>#include <math.h>#include <float.h>#include "bft_error.h"#include "bft_mem.h"#include "bft_printf.h"#include "cs_blas.h"#include "cs_field.h"#include "cs_halo.h"#include "cs_halo_perio.h"#include "cs_log.h"#include "cs_mesh.h"#include "cs_ext_neighborhood.h"#include "cs_mesh_quantities.h"#include "cs_prototypes.h"#include "cs_timer.h"#include "cs_gradient.h"#include "cs_gradient_perio.h"
| Functions | |
| void | permas (const cs_int_t *iappel, cs_real_t rom[]) | 
| void | perinr (const cs_int_t *const imrgra, const cs_int_t *const iwarnp, const cs_real_t *const epsrgp, const cs_real_t *const extrap) | 
| void | pering (const cs_int_t *f_id, cs_int_t *tr_dim, cs_real_t dpdx[], cs_real_t dpdy[], cs_real_t dpdz[]) | 
| void | cs_gradient_perio_initialize (void) | 
| Initialize gradient rotational periodicity computation API.  More... | |
| void | cs_gradient_perio_finalize (void) | 
| Finalize gradient rotational periodicity computation API.  More... | |
| void | cs_gradient_perio_update_mesh (void) | 
| Update gradient rotational periodicity computation API in case of mesh modification.  More... | |
| void | cs_gradient_perio_init_rij (const cs_field_t *f, int *tr_dim, cs_real_3_t grad[]) | 
| Initialize ghost cell values for Reynolds stress tensor gradient.  More... | |
| void | cs_gradient_perio_process_rij (const cs_int_t *f_id, cs_real_3_t grad[]) | 
| Process grad buffers in case of rotation on Reynolds stress tensor.  More... | |
Specific functions for gradient reconstruction of the Reynolds stress tensor in the case of periodicity of rotation.
| void cs_gradient_perio_finalize | ( | void | ) | 
Finalize gradient rotational periodicity computation API.
| void cs_gradient_perio_init_rij | ( | const cs_field_t * | f, | 
| int * | tr_dim, | ||
| cs_real_3_t | grad[] | ||
| ) | 
Initialize ghost cell values for Reynolds stress tensor gradient.
We retrieve the gradient given by perinr (phyvar) for the Reynolds stress tensor in a buffer on ghost cells. then we define dpdx, dpdy and dpdz gradient (1 -> n_cells_with_ghosts).
We can't implicitly take into account rotation of a gradient of a tensor variable because we have to know all components.
We set idimtr to 2 for the Reynolds stress tensor.
We assume that is correct to treat periodicities implicitly for the other variables when reconstructing gradients.
| [in] | f | pointer to field | 
| [out] | tr_dim | 2 for tensor (Rij) in case of rotation, 0 otherwise | 
| [in,out] | grad | gradient of field | 
| void cs_gradient_perio_initialize | ( | void | ) | 
Initialize gradient rotational periodicity computation API.
| void cs_gradient_perio_process_rij | ( | const cs_int_t * | f_id, | 
| cs_real_3_t | grad[] | ||
| ) | 
Process grad buffers in case of rotation on Reynolds stress tensor.
We retrieve the gradient given by cs_gradient_perio_init_rij (phyvar) for the Reynolds stress tensor in a buffer on ghost cells. Then we define grad gradient (1 -> n_cells_with_ghosts).
We can't implicitly take into account rotation of a gradient of a tensor variable because we have to know all components.
We assume that is correct to treat periodicities implicitly for the other variables when reconstructing gradients.
| [in] | f_id | field index | 
| [in,out] | grad | gradient of field | 
size of _drdxyz and _wdrdxy = n_ghost_cells*6*3
| void cs_gradient_perio_update_mesh | ( | void | ) | 
Update gradient rotational periodicity computation API in case of mesh modification.
| void pering | ( | const cs_int_t * | f_id, | 
| cs_int_t * | tr_dim, | ||
| cs_real_t | dpdx[], | ||
| cs_real_t | dpdy[], | ||
| cs_real_t | dpdz[] | ||
| ) | 
| void perinr | ( | const cs_int_t *const | imrgra, | 
| const cs_int_t *const | iwarnp, | ||
| const cs_real_t *const | epsrgp, | ||
| const cs_real_t *const | extrap | ||
| ) | 
 1.8.3.1
 1.8.3.1