programmer's documentation
Functions
cs_advection_field.h File Reference
#include "cs_cdo.h"
#include "cs_param.h"
#include "cs_cdo_connect.h"
#include "cs_cdo_quantities.h"
#include "cs_time_step.h"
Include dependency graph for cs_advection_field.h:

Go to the source code of this file.

Functions

cs_adv_field_t * cs_advection_field_create (const char *name, const cs_cdo_quantities_t *cdoq, const cs_cdo_connect_t *connect, const cs_time_step_t *time_step)
 Create and initialize a new advection field structure. More...
 
cs_adv_field_t * cs_advection_field_free (cs_adv_field_t *adv)
 Free a cs_adv_field_t structure. More...
 
bool cs_advection_field_check_name (const cs_adv_field_t *adv, const char *ref_name)
 Check if the given advection field has the name ref_name. More...
 
bool cs_advection_field_is_uniform (const cs_adv_field_t *adv)
 returns true if the advection field is uniform, otherwise false More...
 
bool cs_advection_field_is_cellwise (const cs_adv_field_t *adv)
 returns true if the advection field is uniform in each cell otherwise false More...
 
const char * cs_advection_field_get_name (const cs_adv_field_t *adv)
 Retrieve the name of an advection field. More...
 
void cs_advection_field_summary (const cs_adv_field_t *adv)
 Print a summary of a cs_adv_field_t structure. More...
 
void cs_advection_field_set_option (cs_adv_field_t *adv, const char *keyname, const char *keyval)
 Set optional parameters related to a cs_adv_field_t structure. More...
 
void cs_advection_field_def_by_value (cs_adv_field_t *adv, const char *val)
 Define the value of a cs_adv_field_t structure. More...
 
void cs_advection_field_def_by_analytic (cs_adv_field_t *adv, cs_analytic_func_t *func)
 Define a cs_adv_field_t structure thanks to an analytic function. More...
 
void cs_advection_field_def_by_array (cs_adv_field_t *adv, cs_flag_t support, const cs_real_t *array)
 Define a cs_adv_field_t structure thanks to an array of values. More...
 
void cs_advection_field_create_field (cs_adv_field_t *adv)
 Create a cs_field_t structure related to an advection field. More...
 
void cs_advection_field_get_cell_vector (cs_lnum_t c_id, const cs_adv_field_t *adv, cs_nvec3_t *vect)
 Compute the value of the advection field at the cell center. More...
 
void cs_advection_field_at_cells (const cs_adv_field_t *adv, cs_real_t *cell_values)
 Compute the value of the advection field at cell centers. More...
 
void cs_advection_field_at_vertices (const cs_adv_field_t *adv, cs_real_t *vtx_values)
 Compute the value of the advection field at vertices. More...
 
void cs_advection_field_get_flux_dfaces (cs_lnum_t c_id, const cs_param_advection_t a_info, const cs_adv_field_t *adv, cs_real_t *fluxes)
 Compute the value of the flux of the advection field across the the dual faces of a cell. More...
 
cs_real_t cs_advection_field_get_flux_svef (cs_lnum_t v_id, cs_lnum_t e_id, cs_lnum_t f_id, const cs_param_advection_t a_info, const cs_adv_field_t *adv)
 Compute the value of the flux of the advection field across the triangle defined by a vertex, the face and edge barycenters. More...
 
void cs_advection_field_update (cs_adv_field_t *adv)
 Update the values of the related field(s) More...
 
void cs_advection_field_post (const cs_adv_field_t *adv)
 Perform the postprocessing if needed. More...
 

Function Documentation

void cs_advection_field_at_cells ( const cs_adv_field_t *  adv,
cs_real_t cell_values 
)

Compute the value of the advection field at cell centers.

Parameters
[in]advpointer to a cs_adv_field_t structure
[in,out]cell_valuesarray of values at cell centers
void cs_advection_field_at_vertices ( const cs_adv_field_t *  adv,
cs_real_t vtx_values 
)

Compute the value of the advection field at vertices.

Parameters
[in]advpointer to a cs_adv_field_t structure
[in,out]vectpointer to a cs_nvec3_t structure (meas/unitv)
bool cs_advection_field_check_name ( const cs_adv_field_t *  adv,
const char *  ref_name 
)

Check if the given advection field has the name ref_name.

Parameters
[in]advpointer to a cs_adv_field_t structure to test
[in]ref_namename of the advection field to find
Returns
true if the name of the advection field is ref_name otherwise false
cs_adv_field_t* cs_advection_field_create ( const char *  name,
const cs_cdo_quantities_t cdoq,
const cs_cdo_connect_t connect,
const cs_time_step_t time_step 
)

Create and initialize a new advection field structure.

Parameters
[in]namename of the advection field
[in]cdoqpointer to a cs_cdo_quantities_t struct.
[in]connectpointer to a cs_cdo_connect_t struct.
[in]time_steppointer to a cs_time_step_t struct.
Returns
a pointer to a new allocated cs_adv_field_t structure
void cs_advection_field_create_field ( cs_adv_field_t *  adv)

Create a cs_field_t structure related to an advection field.

Parameters
[in,out]advpointer to a cs_adv_field_t structure
void cs_advection_field_def_by_analytic ( cs_adv_field_t *  adv,
cs_analytic_func_t func 
)

Define a cs_adv_field_t structure thanks to an analytic function.

Parameters
[in,out]advpointer to a cs_adv_field_t structure
[in]funcpointer to a function
void cs_advection_field_def_by_array ( cs_adv_field_t *  adv,
cs_flag_t  support,
const cs_real_t array 
)

Define a cs_adv_field_t structure thanks to an array of values.

Parameters
[in,out]advpointer to a cs_adv_field_t structure
[in]supportflag to know where is defined the values
[in]arraypointer to an array
void cs_advection_field_def_by_value ( cs_adv_field_t *  adv,
const char *  val 
)

Define the value of a cs_adv_field_t structure.

Parameters
[in,out]advpointer to a cs_adv_field_t structure
[in]keyvalaccessor to the value to set
cs_adv_field_t* cs_advection_field_free ( cs_adv_field_t *  adv)

Free a cs_adv_field_t structure.

Parameters
[in,out]advpointer to a cs_adv_field_t structure to free
Returns
a NULL pointer
void cs_advection_field_get_cell_vector ( cs_lnum_t  c_id,
const cs_adv_field_t *  adv,
cs_nvec3_t vect 
)

Compute the value of the advection field at the cell center.

Parameters
[in]c_idid of the current cell
[in]advpointer to a cs_adv_field_t structure
[in,out]vectpointer to a cs_nvec3_t structure (meas + unitv)
void cs_advection_field_get_flux_dfaces ( cs_lnum_t  c_id,
const cs_param_advection_t  a_info,
const cs_adv_field_t *  adv,
cs_real_t fluxes 
)

Compute the value of the flux of the advection field across the the dual faces of a cell.

Parameters
[in]c_idid of the current cell
[in]a_infoset of parameters for the advection operator
[in]advpointer to a cs_adv_field_t structure
[in,out]fluxesarray of values attached to dual faces of a cell
cs_real_t cs_advection_field_get_flux_svef ( cs_lnum_t  v_id,
cs_lnum_t  e_id,
cs_lnum_t  f_id,
const cs_param_advection_t  a_info,
const cs_adv_field_t *  adv 
)

Compute the value of the flux of the advection field across the triangle defined by a vertex, the face and edge barycenters.

Parameters
[in]v_idid of the current vertex
[in]e_idid of the current edge
[in]f_idid of the current face
[in]a_infoset of parameters for the advection operator
[in]advpointer to a cs_adv_field_t structure
Returns
the value of the flux across s(v,e,f)
const char* cs_advection_field_get_name ( const cs_adv_field_t *  adv)

Retrieve the name of an advection field.

Parameters
[in]advpointer to an advection field structure
Returns
the name of the related advection field
bool cs_advection_field_is_cellwise ( const cs_adv_field_t *  adv)

returns true if the advection field is uniform in each cell otherwise false

Parameters
[in]advpointer to a property to test
Returns
true or false
bool cs_advection_field_is_uniform ( const cs_adv_field_t *  adv)

returns true if the advection field is uniform, otherwise false

Parameters
[in]advpointer to a property to test
Returns
true or false
void cs_advection_field_post ( const cs_adv_field_t *  adv)

Perform the postprocessing if needed.

Parameters
[in]advpointer to a cs_adv_field_t structure
void cs_advection_field_set_option ( cs_adv_field_t *  adv,
const char *  keyname,
const char *  keyval 
)

Set optional parameters related to a cs_adv_field_t structure.

Parameters
[in,out]advpointer to a cs_adv_field_t structure
[in]keynamename of key related to the member of adv to set
[in]keyvalaccessor to the value to set
void cs_advection_field_summary ( const cs_adv_field_t *  adv)

Print a summary of a cs_adv_field_t structure.

Parameters
[in]advpointer to a cs_adv_field_t structure to summarize
void cs_advection_field_update ( cs_adv_field_t *  adv)

Update the values of the related field(s)

Parameters
[in,out]advpointer to a cs_adv_field_t structure