| 
    My Project
    
   programmer's documentation 
   | 
 
#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_log.h"#include "cs_param_cdo.h"#include "cs_reco.h"#include "cs_volume_zone.h"#include "cs_xdef_eval.h"#include "cs_property.h"
Macros | |
| #define | CS_PROPERTY_DBG 0 | 
Functions | |
| void | cs_property_set_shared_pointers (const cs_cdo_quantities_t *quant, const cs_cdo_connect_t *connect) | 
| Set shared pointers to main domain members.  More... | |
| int | cs_property_get_n_properties (void) | 
| Retrieve the number of properties.  More... | |
| cs_property_t * | cs_property_add (const char *name, cs_property_type_t type) | 
| Create and initialize a new property structure.  More... | |
| cs_property_t * | cs_property_by_name (const char *name) | 
| Find the related property definition from its name.  More... | |
| cs_property_t * | cs_property_by_id (int id) | 
| Find the related property definition from its id.  More... | |
| void | cs_property_set_option (cs_property_t *pty, cs_property_key_t key) | 
| Set optional parameters related to a cs_property_t structure.  More... | |
| void | cs_property_destroy_all (void) | 
| Free all cs_property_t structures and the array storing all the structures.  More... | |
| void | cs_property_finalize_setup (void) | 
| Last stage of the definition of a property based on several definitions (i.e. definition by subdomains)  More... | |
| cs_xdef_t * | cs_property_def_iso_by_value (cs_property_t *pty, const char *zname, double val) | 
| Define an isotropic cs_property_t structure by value for entities related to a volume zone.  More... | |
| cs_xdef_t * | cs_property_def_ortho_by_value (cs_property_t *pty, const char *zname, double val[]) | 
| Define an orthotropic cs_property_t structure by value for entities related to a volume zone.  More... | |
| cs_xdef_t * | cs_property_def_aniso_by_value (cs_property_t *pty, const char *zname, cs_real_t tens[3][3]) | 
| Define an anisotropic cs_property_t structure by value for entities related to a volume zone.  More... | |
| cs_xdef_t * | cs_property_def_by_time_func (cs_property_t *pty, const char *zname, cs_time_func_t *func, void *input) | 
| Define a cs_property_t structure thanks to an analytic function in a subdomain attached to the mesh location named ml_name.  More... | |
| cs_xdef_t * | cs_property_def_by_analytic (cs_property_t *pty, const char *zname, cs_analytic_func_t *func, void *input) | 
| Define a cs_property_t structure thanks to an analytic function in a subdomain attached to the mesh location named ml_name.  More... | |
| cs_xdef_t * | cs_property_def_by_func (cs_property_t *pty, const char *zname, void *context, cs_xdef_eval_t *get_eval_at_cell, cs_xdef_cw_eval_t *get_eval_at_cell_cw) | 
| Define a cs_property_t structure thanks to law depending on one scalar variable in a subdomain attached to the mesh location named ml_name.  More... | |
| cs_xdef_t * | cs_property_def_by_array (cs_property_t *pty, cs_flag_t loc, cs_real_t *array, bool is_owner, cs_lnum_t *index) | 
| Define a cs_property_t structure thanks to an array of values.  More... | |
| void | cs_property_def_by_field (cs_property_t *pty, cs_field_t *field) | 
| Define a cs_property_t structure thanks to an array of values.  More... | |
| void | cs_property_eval_at_cells (cs_real_t t_eval, const cs_property_t *pty, cs_real_t *array) | 
| Evaluate the value of the property at each cell. Store the evaluation in the given array.  More... | |
| void | cs_property_get_cell_tensor (cs_lnum_t c_id, cs_real_t t_eval, const cs_property_t *pty, bool do_inversion, cs_real_3_t *tensor) | 
| Compute the value of the tensor attached a property at the cell center.  More... | |
| cs_real_t | cs_property_get_cell_value (cs_lnum_t c_id, cs_real_t t_eval, const cs_property_t *pty) | 
| Compute the value of a property at the cell center.  More... | |
| void | cs_property_tensor_in_cell (const cs_cell_mesh_t *cm, const cs_property_t *pty, cs_real_t t_eval, bool do_inversion, cs_real_3_t *tensor) | 
| Compute the value of the tensor attached a property at the cell center Version using a cs_cell_mesh_t structure.  More... | |
| cs_real_t | cs_property_value_in_cell (const cs_cell_mesh_t *cm, const cs_property_t *pty, cs_real_t t_eval) | 
| Compute the value of a property at the cell center Version using a cs_cell_mesh_t structure.  More... | |
| void | cs_property_get_fourier (const cs_property_t *pty, cs_real_t t_eval, double dt, cs_real_t fourier[]) | 
| Compute the Fourier number in each cell.  More... | |
| void | cs_property_log_setup (void) | 
| Print a summary of the settings for all defined cs_property_t structures.  More... | |
Variables | |
| static const char | _err_empty_pty [] | 
| static const cs_cdo_quantities_t * | cs_cdo_quant | 
| static const cs_cdo_connect_t * | cs_cdo_connect | 
| static int | _n_properties = 0 | 
| static int | _n_max_properties = 0 | 
| static cs_property_t ** | _properties = NULL | 
| #define CS_PROPERTY_DBG 0 | 
| cs_property_t* cs_property_add | ( | const char * | name, | 
| cs_property_type_t | type | ||
| ) | 
Create and initialize a new property structure.
| [in] | name | name of the property | 
| [in] | type | type of property | 
| cs_property_t* cs_property_by_id | ( | int | id | ) | 
Find the related property definition from its id.
| [in] | id | id of the property to find | 
| cs_property_t* cs_property_by_name | ( | const char * | name | ) | 
Find the related property definition from its name.
| [in] | name | name of the property to find | 
| cs_xdef_t* cs_property_def_aniso_by_value | ( | cs_property_t * | pty, | 
| const char * | zname, | ||
| cs_real_t | tens[3][3] | ||
| ) | 
Define an anisotropic cs_property_t structure by value for entities related to a volume zone.
| [in,out] | pty | pointer to a cs_property_t structure | 
| [in] | zname | name of the associated zone (if NULL or "" all cells are considered) | 
| [in] | tens | values to set (3x3 tensor) | 
| cs_xdef_t* cs_property_def_by_analytic | ( | cs_property_t * | pty, | 
| const char * | zname, | ||
| cs_analytic_func_t * | func, | ||
| void * | input | ||
| ) | 
Define a cs_property_t structure thanks to an analytic function in a subdomain attached to the mesh location named ml_name.
| [in,out] | pty | pointer to a cs_property_t structure | 
| [in] | zname | name of the associated zone (if NULL or "" all cells are considered) | 
| [in] | func | pointer to a cs_analytic_func_t function | 
| [in] | input | NULL or pointer to a structure cast on-the-fly | 
| cs_xdef_t* cs_property_def_by_array | ( | cs_property_t * | pty, | 
| cs_flag_t | loc, | ||
| cs_real_t * | array, | ||
| bool | is_owner, | ||
| cs_lnum_t * | index | ||
| ) | 
Define a cs_property_t structure thanks to an array of values.
| [in,out] | pty | pointer to a cs_property_t structure | 
| [in] | loc | information to know where are located values | 
| [in] | array | pointer to an array | 
| [in] | is_owner | transfer the lifecycle to the cs_xdef_t structure (true or false) | 
| [in] | index | optional pointer to the array index | 
| void cs_property_def_by_field | ( | cs_property_t * | pty, | 
| cs_field_t * | field | ||
| ) | 
Define a cs_property_t structure thanks to an array of values.
| [in,out] | pty | pointer to a cs_property_t structure | 
| [in] | field | pointer to a cs_field_t structure | 
| cs_xdef_t* cs_property_def_by_func | ( | cs_property_t * | pty, | 
| const char * | zname, | ||
| void * | context, | ||
| cs_xdef_eval_t * | get_eval_at_cell, | ||
| cs_xdef_cw_eval_t * | get_eval_at_cell_cw | ||
| ) | 
Define a cs_property_t structure thanks to law depending on one scalar variable in a subdomain attached to the mesh location named ml_name.
| [in,out] | pty | pointer to a cs_property_t structure | 
| [in] | zname | name of the associated zone (if NULL or "" all cells are considered) | 
| [in] | context | pointer to a structure (may be NULL) | 
| [in] | get_eval_at_cell | pointer to a function (may be NULL) | 
| [in] | get_eval_at_cell_cw | pointer to a function | 
| cs_xdef_t* cs_property_def_by_time_func | ( | cs_property_t * | pty, | 
| const char * | zname, | ||
| cs_time_func_t * | func, | ||
| void * | input | ||
| ) | 
Define a cs_property_t structure thanks to an analytic function in a subdomain attached to the mesh location named ml_name.
| [in,out] | pty | pointer to a cs_property_t structure | 
| [in] | zname | name of the associated zone (if NULL or "" all cells are considered) | 
| [in] | func | pointer to a cs_analytic_func_t function | 
| [in] | input | NULL or pointer to a structure cast on-the-fly | 
| cs_xdef_t* cs_property_def_iso_by_value | ( | cs_property_t * | pty, | 
| const char * | zname, | ||
| double | val | ||
| ) | 
Define an isotropic cs_property_t structure by value for entities related to a volume zone.
| [in,out] | pty | pointer to a cs_property_t structure | 
| [in] | zname | name of the associated zone (if NULL or "" all cells are considered) | 
| [in] | val | value to set | 
| cs_xdef_t* cs_property_def_ortho_by_value | ( | cs_property_t * | pty, | 
| const char * | zname, | ||
| double | val[] | ||
| ) | 
Define an orthotropic cs_property_t structure by value for entities related to a volume zone.
| [in,out] | pty | pointer to a cs_property_t structure | 
| [in] | zname | name of the associated zone (if NULL or "" all cells are considered) | 
| [in] | val | values to set (vector of size 3) | 
| void cs_property_destroy_all | ( | void | ) | 
Free all cs_property_t structures and the array storing all the structures.
| void cs_property_eval_at_cells | ( | cs_real_t | t_eval, | 
| const cs_property_t * | pty, | ||
| cs_real_t * | array | ||
| ) | 
Evaluate the value of the property at each cell. Store the evaluation in the given array.
| [in] | t_eval | physical time at which one evaluates the term | 
| [in] | pty | pointer to a cs_property_t structure | 
| [in,out] | array | pointer to an array of values (must be allocated) | 
| void cs_property_finalize_setup | ( | void | ) | 
Last stage of the definition of a property based on several definitions (i.e. definition by subdomains)
| void cs_property_get_cell_tensor | ( | cs_lnum_t | c_id, | 
| cs_real_t | t_eval, | ||
| const cs_property_t * | pty, | ||
| bool | do_inversion, | ||
| cs_real_3_t * | tensor | ||
| ) | 
Compute the value of the tensor attached a property at the cell center.
| [in] | c_id | id of the current cell | 
| [in] | t_eval | physical time at which one evaluates the term | 
| [in] | pty | pointer to a cs_property_t structure | 
| [in] | do_inversion | true or false | 
| [in,out] | tensor | 3x3 matrix | 
| cs_real_t cs_property_get_cell_value | ( | cs_lnum_t | c_id, | 
| cs_real_t | t_eval, | ||
| const cs_property_t * | pty | ||
| ) | 
Compute the value of a property at the cell center.
| [in] | c_id | id of the current cell | 
| [in] | t_eval | physical time at which one evaluates the term | 
| [in] | pty | pointer to a cs_property_t structure | 
| void cs_property_get_fourier | ( | const cs_property_t * | pty, | 
| cs_real_t | t_eval, | ||
| double | dt, | ||
| cs_real_t | fourier[] | ||
| ) | 
Compute the Fourier number in each cell.
| [in] | pty | pointer to the diffusive property struct. | 
| [in] | t_eval | physical time at which one evaluates the term | 
| [in] | dt | value of the current time step | 
| [in,out] | fourier | pointer to an array storing Fourier numbers | 
| int cs_property_get_n_properties | ( | void | ) | 
Retrieve the number of properties.
| void cs_property_log_setup | ( | void | ) | 
Print a summary of the settings for all defined cs_property_t structures.
| void cs_property_set_option | ( | cs_property_t * | pty, | 
| cs_property_key_t | key | ||
| ) | 
Set optional parameters related to a cs_property_t structure.
| [in,out] | pty | pointer to a cs_property_t structure | 
| [in] | key | key related to a setting option | 
| void cs_property_set_shared_pointers | ( | const cs_cdo_quantities_t * | quant, | 
| const cs_cdo_connect_t * | connect | ||
| ) | 
Set shared pointers to main domain members.
| [in] | quant | additional mesh quantities struct. | 
| [in] | connect | pointer to a cs_cdo_connect_t struct. | 
| void cs_property_tensor_in_cell | ( | const cs_cell_mesh_t * | cm, | 
| const cs_property_t * | pty, | ||
| cs_real_t | t_eval, | ||
| bool | do_inversion, | ||
| cs_real_3_t * | tensor | ||
| ) | 
Compute the value of the tensor attached a property at the cell center Version using a cs_cell_mesh_t structure.
| [in] | cm | pointer to a cs_cell_mesh_t structure | 
| [in] | pty | pointer to a cs_property_t structure | 
| [in] | t_eval | physical time at which one evaluates the term | 
| [in] | do_inversion | true or false | 
| [in,out] | tensor | 3x3 matrix | 
| cs_real_t cs_property_value_in_cell | ( | const cs_cell_mesh_t * | cm, | 
| const cs_property_t * | pty, | ||
| cs_real_t | t_eval | ||
| ) | 
Compute the value of a property at the cell center Version using a cs_cell_mesh_t structure.
| [in] | cm | pointer to a cs_cell_mesh_t structure | 
| [in] | pty | pointer to a cs_property_t structure | 
| [in] | t_eval | physical time at which one evaluates the term | 
      
  | 
  static | 
      
  | 
  static | 
      
  | 
  static | 
      
  | 
  static | 
      
  | 
  static | 
      
  | 
  static | 
 1.8.16