|
programmer's documentation
|
#include "cs_defs.h"#include <assert.h>#include <stdio.h>#include <stdlib.h>#include <string.h>#include "bft_mem.h"#include "bft_error.h"#include "bft_printf.h"#include "cs_field.h"#include "cs_gradient.h"#include "cs_gradient_perio.h"#include "cs_halo.h"#include "cs_halo_perio.h"#include "cs_mesh.h"#include "cs_log.h"#include "cs_map.h"#include "cs_parameters.h"#include "cs_parall.h"#include "cs_mesh_location.h"#include "cs_mesh_quantities.h"#include "cs_internal_coupling.h"#include "cs_field_operator.h"
Functions | |
| static void | _field_interpolate_by_mean (const cs_field_t *f, cs_lnum_t n_points, const cs_lnum_t point_location[], cs_real_t *val) |
| static void | _field_interpolate_by_gradient (const cs_field_t *f, cs_lnum_t n_points, const cs_lnum_t point_location[], const cs_real_3_t point_coords[], cs_real_t *val) |
| static void | _local_extrema_scalar (const cs_real_t *restrict pvar, cs_halo_type_t halo_type, cs_real_t *local_max, cs_real_t *local_min) |
| void | cs_field_gradient_scalar (const cs_field_t *f, bool use_previous_t, int inc, bool recompute_cocg, cs_real_3_t *restrict grad) |
| Compute cell gradient of scalar field or component of vector or tensor field. More... | |
| void | cs_field_gradient_potential (const cs_field_t *f, bool use_previous_t, int inc, bool recompute_cocg, int hyd_p_flag, cs_real_3_t f_ext[], cs_real_3_t *restrict grad) |
| Compute cell gradient of scalar field or component of vector or tensor field. More... | |
| void | cs_field_gradient_vector (const cs_field_t *f, bool use_previous_t, int inc, cs_real_33_t *restrict grad) |
| Compute cell gradient of vector field. More... | |
| void | cs_field_gradient_tensor (const cs_field_t *f, bool use_previous_t, int inc, cs_real_63_t *restrict grad) |
| Compute cell gradient of tensor field. More... | |
| void | cs_field_interpolate (cs_field_t *f, cs_field_interpolate_t interpolation_type, cs_lnum_t n_points, const cs_lnum_t point_location[], const cs_real_3_t point_coords[], cs_real_t *val) |
| Interpolate field values at a given set of points. More... | |
| void | cs_field_local_extrema_scalar (int f_id, cs_halo_type_t halo_type, cs_real_t *local_max, cs_real_t *local_min) |
| Find local extrema of a given scalar field at each cell. More... | |
| void | cs_field_set_volume_average (cs_field_t *f, const cs_real_t va) |
| Shift field values in order to set its spatial average (fluid volume average) to a given value. More... | |
| void | cs_field_synchronize (cs_field_t *f, cs_halo_type_t halo_type) |
| Synchronize current parallel and periodic field values. More... | |
Field based algebraic operators.
|
static |
|
static |
|
static |
| void cs_field_gradient_potential | ( | const cs_field_t * | f, |
| bool | use_previous_t, | ||
| int | inc, | ||
| bool | recompute_cocg, | ||
| int | hyd_p_flag, | ||
| cs_real_3_t | f_ext[], | ||
| cs_real_3_t *restrict | grad | ||
| ) |
Compute cell gradient of scalar field or component of vector or tensor field.
| [in] | f | pointer to field |
| [in] | use_previous_t | should we use values from the previous time step ? |
| [in] | inc | if 0, solve on increment; 1 otherwise |
| [in] | recompute_cocg | should COCG FV quantities be recomputed ? |
| [in] | hyd_p_flag | flag for hydrostatic pressure |
| [in] | f_ext | exterior force generating the hydrostatic pressure |
| [out] | grad | gradient |
| void cs_field_gradient_scalar | ( | const cs_field_t * | f, |
| bool | use_previous_t, | ||
| int | inc, | ||
| bool | recompute_cocg, | ||
| cs_real_3_t *restrict | grad | ||
| ) |
Compute cell gradient of scalar field or component of vector or tensor field.
| [in] | f | pointer to field |
| [in] | use_previous_t | should we use values from the previous time step ? |
| [in] | inc | if 0, solve on increment; 1 otherwise |
| [in] | recompute_cocg | should COCG FV quantities be recomputed ? |
| [out] | grad | gradient |
| void cs_field_gradient_tensor | ( | const cs_field_t * | f, |
| bool | use_previous_t, | ||
| int | inc, | ||
| cs_real_63_t *restrict | grad | ||
| ) |
Compute cell gradient of tensor field.
| [in] | f | pointer to field |
| [in] | use_previous_t | should we use values from the previous time step ? |
| [in] | inc | if 0, solve on increment; 1 otherwise |
| [out] | grad | gradient |
| void cs_field_gradient_vector | ( | const cs_field_t * | f, |
| bool | use_previous_t, | ||
| int | inc, | ||
| cs_real_33_t *restrict | grad | ||
| ) |
Compute cell gradient of vector field.
| [in] | f | pointer to field |
| [in] | use_previous_t | should we use values from the previous time step ? |
| [in] | inc | if 0, solve on increment; 1 otherwise |
| [out] | grad | gradient |
| void cs_field_interpolate | ( | cs_field_t * | f, |
| cs_field_interpolate_t | interpolation_type, | ||
| cs_lnum_t | n_points, | ||
| const cs_lnum_t | point_location[], | ||
| const cs_real_3_t | point_coords[], | ||
| cs_real_t * | val | ||
| ) |
Interpolate field values at a given set of points.
| [in] | f | pointer to field |
| [in] | interpolation_type | interpolation type |
| [in] | n_points | number of points at which interpolation is required |
| [in] | point_location | location of points in mesh elements (based on the field location) |
| [in] | point_coords | point coordinates |
| [out] | val | interpolated values |
| void cs_field_local_extrema_scalar | ( | int | f_id, |
| cs_halo_type_t | halo_type, | ||
| cs_real_t * | local_max, | ||
| cs_real_t * | local_min | ||
| ) |
Find local extrema of a given scalar field at each cell.
This assumes the field values have been synchronized.
| [in] | f | id scalar field id |
| [in] | halo_type | halo type |
| [in,out] | local_max | local maximum value |
| [in,out] | local_min | local minimum value |
| void cs_field_set_volume_average | ( | cs_field_t * | f, |
| const cs_real_t | va | ||
| ) |
Shift field values in order to set its spatial average (fluid volume average) to a given value.
Shift field values in order to set its spatial average to a given value.
| [in] | f | pointer to field |
| [in] | va | real value of fluid volume average to be set |
| void cs_field_synchronize | ( | cs_field_t * | f, |
| cs_halo_type_t | halo_type | ||
| ) |
Synchronize current parallel and periodic field values.
This function currently only upates fields based on CS_MESH_LOCATION_CELLS.
| [in,out] | f | pointer to field |
| [in] | halo_type | halo type |
1.8.13