My Project
programmer's documentation
Macros | Functions
cs_xdef_eval.c File Reference
#include "cs_defs.h"
#include <assert.h>
#include <ctype.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
#include <bft_mem.h>
#include "cs_mesh_location.h"
#include "cs_reco.h"
#include "cs_time_step.h"
#include "cs_xdef_eval.h"
Include dependency graph for cs_xdef_eval.c:

Macros

#define _dp3   cs_math_3_dot_product
 

Functions

void cs_xdef_eval_scalar_by_val (cs_lnum_t n_elts, const cs_lnum_t *elt_ids, bool compact, const cs_mesh_t *mesh, const cs_cdo_connect_t *connect, const cs_cdo_quantities_t *quant, cs_real_t time_eval, void *input, cs_real_t *eval)
 Evaluate a scalar-valued quantity for a list of elements. More...
 
void cs_xdef_eval_vector_by_val (cs_lnum_t n_elts, const cs_lnum_t *elt_ids, bool compact, const cs_mesh_t *mesh, const cs_cdo_connect_t *connect, const cs_cdo_quantities_t *quant, cs_real_t time_eval, void *input, cs_real_t *eval)
 Evaluate a vector-valued quantity for a list of elements. More...
 
void cs_xdef_eval_tensor_by_val (cs_lnum_t n_elts, const cs_lnum_t *elt_ids, bool compact, const cs_mesh_t *mesh, const cs_cdo_connect_t *connect, const cs_cdo_quantities_t *quant, cs_real_t time_eval, void *input, cs_real_t *eval)
 Evaluate a tensor-valued quantity for a list of elements. More...
 
void cs_xdef_eval_scalar_at_cells_by_time_func (cs_lnum_t n_elts, const cs_lnum_t *elt_ids, bool compact, const cs_mesh_t *mesh, const cs_cdo_connect_t *connect, const cs_cdo_quantities_t *quant, cs_real_t time_eval, void *input, cs_real_t *eval)
 Evaluate a scalar-valued quantity with only a time-dependent variation for a list of elements. More...
 
void cs_xdef_eval_vector_at_cells_by_time_func (cs_lnum_t n_elts, const cs_lnum_t *elt_ids, bool compact, const cs_mesh_t *mesh, const cs_cdo_connect_t *connect, const cs_cdo_quantities_t *quant, cs_real_t time_eval, void *input, cs_real_t *eval)
 Evaluate a vector-valued quantity with only a time-dependent variation for a list of elements. More...
 
void cs_xdef_eval_tensor_at_cells_by_time_func (cs_lnum_t n_elts, const cs_lnum_t *elt_ids, bool compact, const cs_mesh_t *mesh, const cs_cdo_connect_t *connect, const cs_cdo_quantities_t *quant, cs_real_t time_eval, void *input, cs_real_t *eval)
 Evaluate a tensor-valued quantity with only a time-dependent variation for a list of elements. More...
 
void cs_xdef_eval_at_cells_by_analytic (cs_lnum_t n_elts, const cs_lnum_t *elt_ids, bool compact, const cs_mesh_t *mesh, const cs_cdo_connect_t *connect, const cs_cdo_quantities_t *quant, cs_real_t time_eval, void *input, cs_real_t *eval)
 Evaluate a quantity defined at cells using an analytic function. More...
 
void cs_xdef_eval_at_b_faces_by_analytic (cs_lnum_t n_elts, const cs_lnum_t *elt_ids, bool compact, const cs_mesh_t *mesh, const cs_cdo_connect_t *connect, const cs_cdo_quantities_t *quant, cs_real_t time_eval, void *input, cs_real_t *eval)
 Evaluate a quantity defined at border faces using an analytic function. More...
 
void cs_xdef_eval_avg_at_b_faces_by_analytic (cs_lnum_t n_elts, const cs_lnum_t *elt_ids, bool compact, const cs_mesh_t *mesh, const cs_cdo_connect_t *connect, const cs_cdo_quantities_t *quant, cs_real_t time_eval, void *input, cs_quadrature_type_t qtype, const int dim, cs_real_t *eval)
 Evaluate a quantity defined at border faces using an analytic function. More...
 
void cs_xdef_eval_at_vertices_by_analytic (cs_lnum_t n_elts, const cs_lnum_t *elt_ids, bool compact, const cs_mesh_t *mesh, const cs_cdo_connect_t *connect, const cs_cdo_quantities_t *quant, cs_real_t time_eval, void *input, cs_real_t *eval)
 Evaluate a quantity defined at vertices using an analytic function. More...
 
void cs_xdef_eval_scalar_at_cells_by_array (cs_lnum_t n_elts, const cs_lnum_t *elt_ids, bool compact, const cs_mesh_t *mesh, const cs_cdo_connect_t *connect, const cs_cdo_quantities_t *quant, cs_real_t time_eval, void *input, cs_real_t *eval)
 Evaluate a scalar-valued quantity at cells defined by an array. Array is assumed to be interlaced. More...
 
void cs_xdef_eval_nd_at_cells_by_array (cs_lnum_t n_elts, const cs_lnum_t *elt_ids, bool compact, const cs_mesh_t *mesh, const cs_cdo_connect_t *connect, const cs_cdo_quantities_t *quant, cs_real_t time_eval, void *input, cs_real_t *eval)
 Evaluate a nd-valued quantity at cells defined by an array. Array is assumed to be interlaced. More...
 
void cs_xdef_eval_at_vertices_by_array (cs_lnum_t n_elts, const cs_lnum_t *elt_ids, bool compact, const cs_mesh_t *mesh, const cs_cdo_connect_t *connect, const cs_cdo_quantities_t *quant, cs_real_t time_eval, void *input, cs_real_t *eval)
 Evaluate a quantity defined at vertices using an array. More...
 
void cs_xdef_eval_3_at_all_vertices_by_array (cs_lnum_t n_elts, const cs_lnum_t *elt_ids, bool compact, const cs_mesh_t *mesh, const cs_cdo_connect_t *connect, const cs_cdo_quantities_t *quant, cs_real_t time_eval, void *input, cs_real_t *eval)
 Evaluate a vector-valued quantity at all vertices defined by an array. Array is assumed to be interlaced. More...
 
void cs_xdef_eval_cell_by_field (cs_lnum_t n_elts, const cs_lnum_t *elt_ids, bool compact, const cs_mesh_t *mesh, const cs_cdo_connect_t *connect, const cs_cdo_quantities_t *quant, cs_real_t time_eval, void *input, cs_real_t *eval)
 Evaluate a quantity inside a cell defined using a field. More...
 

Macro Definition Documentation

◆ _dp3

#define _dp3   cs_math_3_dot_product

Function Documentation

◆ cs_xdef_eval_3_at_all_vertices_by_array()

void cs_xdef_eval_3_at_all_vertices_by_array ( cs_lnum_t  n_elts,
const cs_lnum_t elt_ids,
bool  compact,
const cs_mesh_t mesh,
const cs_cdo_connect_t connect,
const cs_cdo_quantities_t quant,
cs_real_t  time_eval,
void *  input,
cs_real_t eval 
)

Evaluate a vector-valued quantity at all vertices defined by an array. Array is assumed to be interlaced.

Parameters
[in]n_eltsnumber of elements to consider
[in]elt_idslist of element ids
[in]compacttrue:no indirection, false:indirection for output
[in]meshpointer to a cs_mesh_t structure
[in]connectpointer to a cs_cdo_connect_t structure
[in]quantpointer to a cs_cdo_quantities_t structure
[in]time_evalphysical time at which one evaluates the term
[in]inputpointer to an input structure
[out]evalresult of the evaluation

◆ cs_xdef_eval_at_b_faces_by_analytic()

void cs_xdef_eval_at_b_faces_by_analytic ( cs_lnum_t  n_elts,
const cs_lnum_t elt_ids,
bool  compact,
const cs_mesh_t mesh,
const cs_cdo_connect_t connect,
const cs_cdo_quantities_t quant,
cs_real_t  time_eval,
void *  input,
cs_real_t eval 
)

Evaluate a quantity defined at border faces using an analytic function.

Parameters
[in]n_eltsnumber of elements to consider
[in]elt_idslist of element ids
[in]compacttrue:no indirection, false:indirection for output
[in]meshpointer to a cs_mesh_t structure
[in]connectpointer to a cs_cdo_connect_t structure
[in]quantpointer to a cs_cdo_quantities_t structure
[in]time_evalphysical time at which one evaluates the term
[in]inputpointer to an input structure
[out]evalresult of the evaluation

◆ cs_xdef_eval_at_cells_by_analytic()

void cs_xdef_eval_at_cells_by_analytic ( cs_lnum_t  n_elts,
const cs_lnum_t elt_ids,
bool  compact,
const cs_mesh_t mesh,
const cs_cdo_connect_t connect,
const cs_cdo_quantities_t quant,
cs_real_t  time_eval,
void *  input,
cs_real_t eval 
)

Evaluate a quantity defined at cells using an analytic function.

Parameters
[in]n_eltsnumber of elements to consider
[in]elt_idslist of element ids
[in]compacttrue:no indirection, false:indirection for output
[in]meshpointer to a cs_mesh_t structure
[in]connectpointer to a cs_cdo_connect_t structure
[in]quantpointer to a cs_cdo_quantities_t structure
[in]time_evalphysical time at which one evaluates the term
[in]inputpointer to an input structure
[out]evalresult of the evaluation

◆ cs_xdef_eval_at_vertices_by_analytic()

void cs_xdef_eval_at_vertices_by_analytic ( cs_lnum_t  n_elts,
const cs_lnum_t elt_ids,
bool  compact,
const cs_mesh_t mesh,
const cs_cdo_connect_t connect,
const cs_cdo_quantities_t quant,
cs_real_t  time_eval,
void *  input,
cs_real_t eval 
)

Evaluate a quantity defined at vertices using an analytic function.

Parameters
[in]n_eltsnumber of elements to consider
[in]elt_idslist of element ids
[in]compacttrue:no indirection, false:indirection for output
[in]meshpointer to a cs_mesh_t structure
[in]connectpointer to a cs_cdo_connect_t structure
[in]quantpointer to a cs_cdo_quantities_t structure
[in]time_evalphysical time at which one evaluates the term
[in]inputpointer to an input structure
[out]evalresult of the evaluation

◆ cs_xdef_eval_at_vertices_by_array()

void cs_xdef_eval_at_vertices_by_array ( cs_lnum_t  n_elts,
const cs_lnum_t elt_ids,
bool  compact,
const cs_mesh_t mesh,
const cs_cdo_connect_t connect,
const cs_cdo_quantities_t quant,
cs_real_t  time_eval,
void *  input,
cs_real_t eval 
)

Evaluate a quantity defined at vertices using an array.

Parameters
[in]n_eltsnumber of elements to consider
[in]elt_idslist of element ids
[in]compacttrue:no indirection, false:indirection for output
[in]meshpointer to a cs_mesh_t structure
[in]connectpointer to a cs_cdo_connect_t structure
[in]quantpointer to a cs_cdo_quantities_t structure
[in]time_evalphysical time at which one evaluates the term
[in]inputpointer to an input structure
[out]evalresult of the evaluation

◆ cs_xdef_eval_avg_at_b_faces_by_analytic()

void cs_xdef_eval_avg_at_b_faces_by_analytic ( cs_lnum_t  n_elts,
const cs_lnum_t elt_ids,
bool  compact,
const cs_mesh_t mesh,
const cs_cdo_connect_t connect,
const cs_cdo_quantities_t quant,
cs_real_t  time_eval,
void *  input,
cs_quadrature_type_t  qtype,
const int  dim,
cs_real_t eval 
)

Evaluate a quantity defined at border faces using an analytic function.

Parameters
[in]n_eltsnumber of elements to consider
[in]elt_idslist of element ids
[in]compacttrue:no indirection, false:indirection for output
[in]meshpointer to a cs_mesh_t structure
[in]connectpointer to a cs_cdo_connect_t structure
[in]quantpointer to a cs_cdo_quantities_t structure
[in]time_evalphysical time at which one evaluates the term
[in]inputpointer to an input structure
[in]qtypequadrature type
[in]dimdimension of the analytic function return
[out]evalresult of the evaluation

◆ cs_xdef_eval_cell_by_field()

void cs_xdef_eval_cell_by_field ( cs_lnum_t  n_elts,
const cs_lnum_t elt_ids,
bool  compact,
const cs_mesh_t mesh,
const cs_cdo_connect_t connect,
const cs_cdo_quantities_t quant,
cs_real_t  time_eval,
void *  input,
cs_real_t eval 
)

Evaluate a quantity inside a cell defined using a field.

Parameters
[in]n_eltsnumber of elements to consider
[in]elt_idslist of element ids
[in]compacttrue:no indirection, false:indirection for output
[in]meshpointer to a cs_mesh_t structure
[in]connectpointer to a cs_cdo_connect_t structure
[in]quantpointer to a cs_cdo_quantities_t structure
[in]time_evalphysical time at which one evaluates the term
[in]inputpointer to an input structure
[out]evalresult of the evaluation

◆ cs_xdef_eval_nd_at_cells_by_array()

void cs_xdef_eval_nd_at_cells_by_array ( cs_lnum_t  n_elts,
const cs_lnum_t elt_ids,
bool  compact,
const cs_mesh_t mesh,
const cs_cdo_connect_t connect,
const cs_cdo_quantities_t quant,
cs_real_t  time_eval,
void *  input,
cs_real_t eval 
)

Evaluate a nd-valued quantity at cells defined by an array. Array is assumed to be interlaced.

Parameters
[in]n_eltsnumber of elements to consider
[in]elt_idslist of element ids
[in]compacttrue:no indirection, false:indirection for output
[in]meshpointer to a cs_mesh_t structure
[in]connectpointer to a cs_cdo_connect_t structure
[in]quantpointer to a cs_cdo_quantities_t structure
[in]time_evalphysical time at which one evaluates the term
[in]inputpointer to an input structure
[out]evalresult of the evaluation

◆ cs_xdef_eval_scalar_at_cells_by_array()

void cs_xdef_eval_scalar_at_cells_by_array ( cs_lnum_t  n_elts,
const cs_lnum_t elt_ids,
bool  compact,
const cs_mesh_t mesh,
const cs_cdo_connect_t connect,
const cs_cdo_quantities_t quant,
cs_real_t  time_eval,
void *  input,
cs_real_t eval 
)

Evaluate a scalar-valued quantity at cells defined by an array. Array is assumed to be interlaced.

Parameters
[in]n_eltsnumber of elements to consider
[in]elt_idslist of element ids
[in]compacttrue:no indirection, false:indirection for output
[in]meshpointer to a cs_mesh_t structure
[in]connectpointer to a cs_cdo_connect_t structure
[in]quantpointer to a cs_cdo_quantities_t structure
[in]time_evalphysical time at which one evaluates the term
[in]inputpointer to an input structure
[out]evalresult of the evaluation

◆ cs_xdef_eval_scalar_at_cells_by_time_func()

void cs_xdef_eval_scalar_at_cells_by_time_func ( cs_lnum_t  n_elts,
const cs_lnum_t elt_ids,
bool  compact,
const cs_mesh_t mesh,
const cs_cdo_connect_t connect,
const cs_cdo_quantities_t quant,
cs_real_t  time_eval,
void *  input,
cs_real_t eval 
)

Evaluate a scalar-valued quantity with only a time-dependent variation for a list of elements.

Parameters
[in]n_eltsnumber of elements to consider
[in]elt_idslist of element ids
[in]compacttrue:no indirection, false:indirection for output
[in]meshpointer to a cs_mesh_t structure
[in]connectpointer to a cs_cdo_connect_t structure
[in]quantpointer to a cs_cdo_quantities_t structure
[in]time_evalphysical time at which one evaluates the term
[in]inputpointer to an input structure
[out]evalresult of the evaluation

◆ cs_xdef_eval_scalar_by_val()

void cs_xdef_eval_scalar_by_val ( cs_lnum_t  n_elts,
const cs_lnum_t elt_ids,
bool  compact,
const cs_mesh_t mesh,
const cs_cdo_connect_t connect,
const cs_cdo_quantities_t quant,
cs_real_t  time_eval,
void *  input,
cs_real_t eval 
)

Evaluate a scalar-valued quantity for a list of elements.

Parameters
[in]n_eltsnumber of elements to consider
[in]elt_idslist of element ids
[in]compacttrue:no indirection, false:indirection for output
[in]meshpointer to a cs_mesh_t structure
[in]connectpointer to a cs_cdo_connect_t structure
[in]quantpointer to a cs_cdo_quantities_t structure
[in]time_evalphysical time at which one evaluates the term
[in]inputpointer to an input structure
[out]evalresult of the evaluation

◆ cs_xdef_eval_tensor_at_cells_by_time_func()

void cs_xdef_eval_tensor_at_cells_by_time_func ( cs_lnum_t  n_elts,
const cs_lnum_t elt_ids,
bool  compact,
const cs_mesh_t mesh,
const cs_cdo_connect_t connect,
const cs_cdo_quantities_t quant,
cs_real_t  time_eval,
void *  input,
cs_real_t eval 
)

Evaluate a tensor-valued quantity with only a time-dependent variation for a list of elements.

Parameters
[in]n_eltsnumber of elements to consider
[in]elt_idslist of element ids
[in]compacttrue:no indirection, false:indirection for output
[in]meshpointer to a cs_mesh_t structure
[in]connectpointer to a cs_cdo_connect_t structure
[in]quantpointer to a cs_cdo_quantities_t structure
[in]time_evalphysical time at which one evaluates the term
[in]inputpointer to an input structure
[out]evalresult of the evaluation

◆ cs_xdef_eval_tensor_by_val()

void cs_xdef_eval_tensor_by_val ( cs_lnum_t  n_elts,
const cs_lnum_t elt_ids,
bool  compact,
const cs_mesh_t mesh,
const cs_cdo_connect_t connect,
const cs_cdo_quantities_t quant,
cs_real_t  time_eval,
void *  input,
cs_real_t eval 
)

Evaluate a tensor-valued quantity for a list of elements.

Parameters
[in]n_eltsnumber of elements to consider
[in]elt_idslist of element ids
[in]compacttrue:no indirection, false:indirection for output
[in]meshpointer to a cs_mesh_t structure
[in]connectpointer to a cs_cdo_connect_t structure
[in]quantpointer to a cs_cdo_quantities_t structure
[in]time_evalphysical time at which one evaluates the term
[in]inputpointer to an input structure
[out]evalresult of the evaluation

◆ cs_xdef_eval_vector_at_cells_by_time_func()

void cs_xdef_eval_vector_at_cells_by_time_func ( cs_lnum_t  n_elts,
const cs_lnum_t elt_ids,
bool  compact,
const cs_mesh_t mesh,
const cs_cdo_connect_t connect,
const cs_cdo_quantities_t quant,
cs_real_t  time_eval,
void *  input,
cs_real_t eval 
)

Evaluate a vector-valued quantity with only a time-dependent variation for a list of elements.

Parameters
[in]n_eltsnumber of elements to consider
[in]elt_idslist of element ids
[in]compacttrue:no indirection, false:indirection for output
[in]meshpointer to a cs_mesh_t structure
[in]connectpointer to a cs_cdo_connect_t structure
[in]quantpointer to a cs_cdo_quantities_t structure
[in]time_evalphysical time at which one evaluates the term
[in]inputpointer to an input structure
[out]evalresult of the evaluation

◆ cs_xdef_eval_vector_by_val()

void cs_xdef_eval_vector_by_val ( cs_lnum_t  n_elts,
const cs_lnum_t elt_ids,
bool  compact,
const cs_mesh_t mesh,
const cs_cdo_connect_t connect,
const cs_cdo_quantities_t quant,
cs_real_t  time_eval,
void *  input,
cs_real_t eval 
)

Evaluate a vector-valued quantity for a list of elements.

Parameters
[in]n_eltsnumber of elements to consider
[in]elt_idslist of element ids
[in]compacttrue:no indirection, false:indirection for output
[in]meshpointer to a cs_mesh_t structure
[in]connectpointer to a cs_cdo_connect_t structure
[in]quantpointer to a cs_cdo_quantities_t structure
[in]time_evalphysical time at which one evaluates the term
[in]inputpointer to an input structure
[out]evalresult of the evaluation