|
programmer's documentation
|
#include "cs_cdo_connect.h"#include "cs_cdo_quantities.h"#include "cs_equation_param.h"#include "cs_equation_common.h"#include "cs_field.h"#include "cs_param.h"#include "cs_mesh.h"#include "cs_restart.h"#include "cs_time_step.h"
Go to the source code of this file.
Functions | |
| int | cs_equation_get_n_equations (void) |
| Retrieve the number of equations. More... | |
| cs_equation_t * | cs_equation_by_name (const char *eqname) |
| Find the cs_equation_t structure with name eqname Return NULL if not find. More... | |
| bool | cs_equation_has_field_name (const cs_equation_t *eq, const char *fld_name) |
| Check if the asociated field to a cs_equation_t structure has name equal to fld_name. More... | |
| cs_equation_param_t * | cs_equation_param_by_name (const char *eqname) |
| Return the cs_equation_param_t structure associated to a cs_equation_t structure thanks to the equation name. More... | |
| cs_equation_param_t * | cs_equation_get_param (const cs_equation_t *eq) |
| Return the cs_equation_param_t structure associated to a cs_equation_t structure. More... | |
| cs_equation_t * | cs_equation_by_id (int eq_id) |
| Find the cs_equation_t structure with id eq_id Return NULL if not find. More... | |
| const char * | cs_equation_get_name (const cs_equation_t *eq) |
| Return the name related to the given cs_equation_t structure. More... | |
| int | cs_equation_get_id (const cs_equation_t *eq) |
| Return the id number related to the given cs_equation_t structure. More... | |
| cs_field_t * | cs_equation_get_field (const cs_equation_t *eq) |
| Return the field structure associated to a cs_equation_t structure. More... | |
| int | cs_equation_get_field_id (const cs_equation_t *eq) |
| Return the id related to the variable field structure associated to the cs_equation_t structure. More... | |
| cs_field_t * | cs_equation_get_boundary_flux (const cs_equation_t *eq) |
| Return the field structure for the (normal) boundary flux associated to a cs_equation_t structure. More... | |
| cs_flag_t | cs_equation_get_flag (const cs_equation_t *eq) |
| Return the flag associated to an equation. More... | |
| void | cs_equation_set_flag (cs_equation_t *eq, cs_flag_t flag) |
| Redefine the flag associated to an equation. More... | |
| cs_equation_builder_t * | cs_equation_get_builder (const cs_equation_t *eq) |
| Return the cs_equation_builder_t structure associated to a cs_equation_t structure. Only for an advanced usage. More... | |
| void * | cs_equation_get_scheme_context (const cs_equation_t *eq) |
| Return a pointer to a structure useful to handle low-level operations for the given equation. More... | |
| bool | cs_equation_is_steady (const cs_equation_t *eq) |
| Return true is the given equation is steady otherwise false. More... | |
| bool | cs_equation_uses_new_mechanism (const cs_equation_t *eq) |
| Return true is the given equation is steady otherwise false. More... | |
| cs_equation_t * | cs_equation_add (const char *eqname, const char *varname, cs_equation_type_t eqtype, int dim, cs_param_bc_type_t default_bc) |
| Add a new equation structure and set a first set of parameters. More... | |
| cs_equation_t * | cs_equation_add_user (const char *eqname, const char *varname, int dim, cs_param_bc_type_t default_bc) |
| Add a new user equation structure and set a first set of parameters. More... | |
| void | cs_equation_destroy_all (void) |
| Destroy all cs_equation_t structures. More... | |
| void | cs_equation_log_monitoring (void) |
| Print a synthesis of the monitoring information in the performance file. More... | |
| void | cs_equation_log_setup (void) |
| Summarize all cs_equation_t structures. More... | |
| void | cs_equation_set_linear_solvers (void) |
| Setup the linear algebra requirements. More... | |
| void | cs_equation_assign_range_set (const cs_cdo_connect_t *connect) |
| Assign cs_range_set_t structures for synchronization when computing in parallel mode After this call, parameters related to an equation are set once for all. More... | |
| bool | cs_equation_assign_functions (void) |
| Assign a set of pointer functions for managing the cs_equation_t structure during the computation. More... | |
| void | cs_equation_create_fields (void) |
| Create a field structure related to all cs_equation_t structures. More... | |
| void | cs_equation_initialize (const cs_mesh_t *mesh, const cs_cdo_connect_t *connect, const cs_cdo_quantities_t *quant, const cs_time_step_t *ts) |
| Allocate and initialize the builder of the algebraic system. Set the initialize condition to all variable fields associated to each cs_equation_t structure. More... | |
| void | cs_equation_solve_steady_state (const cs_mesh_t *mesh, cs_equation_t *eq) |
| Build and then solve the linear system for this equation when the goal is to find the steady state. More... | |
| void | cs_equation_solve (const cs_mesh_t *mesh, double dt_cur, cs_equation_t *eq) |
| Build and then solve the linear system for an equation with an unsteady term. More... | |
| void | cs_equation_build_system (const cs_mesh_t *mesh, const cs_time_step_t *time_step, double dt_cur, cs_equation_t *eq) |
| Build the linear system for this equation. More... | |
| void | cs_equation_solve_deprecated (cs_equation_t *eq) |
| Solve the linear system for this equation. More... | |
| cs_property_t * | cs_equation_get_diffusion_property (const cs_equation_t *eq) |
| Return a pointer to the cs_property_t structure associated to the diffusion term for this equation (NULL if not activated). More... | |
| cs_property_t * | cs_equation_get_time_property (const cs_equation_t *eq) |
| Return a pointer to the cs_property_t structure associated to the unsteady term for this equation (NULL if not activated). More... | |
| cs_property_t * | cs_equation_get_reaction_property (const cs_equation_t *eq, const int reaction_id) |
| Return a pointer to the cs_property_t structure associated to the reaction term with id equal to reaction_id and related to this equation. More... | |
| cs_param_space_scheme_t | cs_equation_get_space_scheme (const cs_equation_t *eq) |
| Return the type of numerical scheme used for the discretization in space. More... | |
| int | cs_equation_get_space_poly_degree (const cs_equation_t *eq) |
| Return the max. degree used in the polynomial basis for the space discretization. More... | |
| int | cs_equation_get_var_dim (const cs_equation_t *eq) |
| Return the dimension of the variable solved by this equation. More... | |
| cs_equation_type_t | cs_equation_get_type (const cs_equation_t *eq) |
| Return the type of equation for the given equation structure. More... | |
| cs_real_t * | cs_equation_get_face_values (const cs_equation_t *eq) |
| For a given equation, retrieve an array of values related to each face of the mesh for the unknowns. More... | |
| cs_real_t * | cs_equation_get_cell_values (const cs_equation_t *eq) |
| Get the values at each cell centers for the field unknowns related to this equation. More... | |
| cs_real_t * | cs_equation_get_vertex_values (const cs_equation_t *eq) |
| For a given equation, retrieve an array of values related to each vertex of the mesh for the unknowns. More... | |
| void | cs_equation_compute_flux_across_plane (const cs_equation_t *eq, const char *ml_name, const cs_real_3_t direction, cs_real_t *diff_flux, cs_real_t *conv_flux) |
| Compute the diffusive and convective flux across a plane defined by a mesh location structure attached to the name ml_name. More... | |
| void | cs_equation_compute_diff_flux_cellwise (const cs_equation_t *eq, cs_flag_t location, cs_real_t t_eval, cs_real_t *diff_flux) |
| Cellwise computation of the diffusive flux across all cell faces. Primal or dual faces are considered according to the space scheme. More... | |
| void | cs_equation_compute_vtx_field_gradient (const cs_equation_t *eq, cs_real_t *v_gradient) |
| Cellwise computation of the discrete gradient at vertices. More... | |
| void | cs_equation_compute_peclet (const cs_equation_t *eq, const cs_time_step_t *ts, cs_real_t peclet[]) |
| Compute and post-process Peclet number if requested. More... | |
| void | cs_equation_read_extra_restart (cs_restart_t *restart) |
| Write into the restart file additionnal arrays (not defined as fields) but useful for the checkpoint/restart process. More... | |
| void | cs_equation_write_extra_restart (cs_restart_t *restart) |
| Write into the restart file additionnal arrays (not defined as fields) but useful for the checkpoint/restart process. More... | |
| void | cs_equation_post_balance (const cs_mesh_t *mesh, const cs_cdo_connect_t *connect, const cs_cdo_quantities_t *cdoq, const cs_time_step_t *ts, double dt_cur) |
| Predefined extra-operations related to all equations. More... | |
| void | cs_equation_extra_post (void) |
| Predefined extra-operations related to equations according to the type of numerical scheme (for the space discretization) More... | |
| cs_equation_t* cs_equation_add | ( | const char * | eqname, |
| const char * | varname, | ||
| cs_equation_type_t | eqtype, | ||
| int | dim, | ||
| cs_param_bc_type_t | default_bc | ||
| ) |
Add a new equation structure and set a first set of parameters.
| [in] | eqname | name of the equation |
| [in] | varname | name of the variable associated to this equation |
| [in] | eqtype | type of equation (user, predefined...) |
| [in] | dim | dimension of the unknow attached to this equation |
| [in] | default_bc | type of boundary condition set by default |
| cs_equation_t* cs_equation_add_user | ( | const char * | eqname, |
| const char * | varname, | ||
| int | dim, | ||
| cs_param_bc_type_t | default_bc | ||
| ) |
Add a new user equation structure and set a first set of parameters.
| [in] | eqname | name of the equation |
| [in] | varname | name of the variable associated to this equation |
| [in] | dim | dimension of the unknow attached to this equation |
| [in] | default_bc | type of boundary condition set by default |
| bool cs_equation_assign_functions | ( | void | ) |
Assign a set of pointer functions for managing the cs_equation_t structure during the computation.
| void cs_equation_assign_range_set | ( | const cs_cdo_connect_t * | connect | ) |
Assign cs_range_set_t structures for synchronization when computing in parallel mode After this call, parameters related to an equation are set once for all.
| [in] | connect | pointer to a cs_cdo_connect_t structure |
Assign cs_range_set_t structures for synchronization when computing in parallel mode After this call, parameters related to an equation are set once for all.
| [in] | connect | pointer to a cs_cdo_connect_t structure |
| void cs_equation_build_system | ( | const cs_mesh_t * | mesh, |
| const cs_time_step_t * | time_step, | ||
| double | dt_cur, | ||
| cs_equation_t * | eq | ||
| ) |
Build the linear system for this equation.
| [in] | mesh | pointer to a cs_mesh_t structure |
| [in] | time_step | pointer to a time step structure |
| [in] | dt_cur | value of the current time step |
| [in,out] | eq | pointer to a cs_equation_t structure |
| cs_equation_t* cs_equation_by_id | ( | int | eq_id | ) |
Find the cs_equation_t structure with id eq_id Return NULL if not find.
| [in] | eq_id | id of the equation to find |
| cs_equation_t* cs_equation_by_name | ( | const char * | eqname | ) |
Find the cs_equation_t structure with name eqname Return NULL if not find.
| [in] | eqname | name of the equation to find |
| void cs_equation_compute_diff_flux_cellwise | ( | const cs_equation_t * | eq, |
| cs_flag_t | location, | ||
| cs_real_t | t_eval, | ||
| cs_real_t * | diff_flux | ||
| ) |
Cellwise computation of the diffusive flux across all cell faces. Primal or dual faces are considered according to the space scheme.
| [in] | eq | pointer to a cs_equation_t structure |
| [in] | location | indicate where the flux has to be computed |
| [in] | t_eval | time at which one performs the evaluation |
| [in,out] | diff_flux | value of the diffusive flux |
| void cs_equation_compute_flux_across_plane | ( | const cs_equation_t * | eq, |
| const char * | ml_name, | ||
| const cs_real_3_t | direction, | ||
| cs_real_t * | diff_flux, | ||
| cs_real_t * | conv_flux | ||
| ) |
Compute the diffusive and convective flux across a plane defined by a mesh location structure attached to the name ml_name.
| [in] | eq | pointer to a cs_equation_t structure |
| [in] | ml_name | name of the related mesh location |
| [in] | direction | vector indicating in which direction flux is > 0 |
| [in,out] | diff_flux | value of the diffusive part of the flux |
| [in,out] | conv_flux | value of the convective part of the flux |
| void cs_equation_compute_peclet | ( | const cs_equation_t * | eq, |
| const cs_time_step_t * | ts, | ||
| cs_real_t | peclet[] | ||
| ) |
Compute and post-process Peclet number if requested.
| [in] | eq | pointer to a cs_equation_t structure |
| [in] | ts | pointer to a cs_time_step_t struct. |
| [in,out] | peclet | pointer to an array storing the resulting Peclet number in each cell |
| void cs_equation_compute_vtx_field_gradient | ( | const cs_equation_t * | eq, |
| cs_real_t * | v_gradient | ||
| ) |
Cellwise computation of the discrete gradient at vertices.
| [in] | eq | pointer to a cs_equation_t structure |
| [in,out] | v_gradient | gradient at vertices |
| void cs_equation_create_fields | ( | void | ) |
Create a field structure related to all cs_equation_t structures.
| void cs_equation_destroy_all | ( | void | ) |
Destroy all cs_equation_t structures.
| void cs_equation_extra_post | ( | void | ) |
Predefined extra-operations related to equations according to the type of numerical scheme (for the space discretization)
| cs_field_t* cs_equation_get_boundary_flux | ( | const cs_equation_t * | eq | ) |
Return the field structure for the (normal) boundary flux associated to a cs_equation_t structure.
| [in] | eq | pointer to a cs_equation_t structure |
| cs_equation_builder_t* cs_equation_get_builder | ( | const cs_equation_t * | eq | ) |
Return the cs_equation_builder_t structure associated to a cs_equation_t structure. Only for an advanced usage.
| [in] | eq | pointer to a cs_equation_t structure |
| cs_real_t* cs_equation_get_cell_values | ( | const cs_equation_t * | eq | ) |
Get the values at each cell centers for the field unknowns related to this equation.
| [in] | eq | pointer to a cs_equation_t structure |
Get the values at each cell centers for the field unknowns related to this equation.
| [in] | eq | pointer to a cs_equation_t structure |
| cs_property_t* cs_equation_get_diffusion_property | ( | const cs_equation_t * | eq | ) |
Return a pointer to the cs_property_t structure associated to the diffusion term for this equation (NULL if not activated).
| [in] | eq | pointer to a cs_equation_t structure |
| cs_real_t* cs_equation_get_face_values | ( | const cs_equation_t * | eq | ) |
For a given equation, retrieve an array of values related to each face of the mesh for the unknowns.
| [in] | eq | pointer to a cs_equation_t structure |
| cs_field_t* cs_equation_get_field | ( | const cs_equation_t * | eq | ) |
Return the field structure associated to a cs_equation_t structure.
| [in] | eq | pointer to a cs_equation_t structure |
| int cs_equation_get_field_id | ( | const cs_equation_t * | eq | ) |
Return the id related to the variable field structure associated to the cs_equation_t structure.
| [in] | eq | pointer to a cs_equation_t structure |
| cs_flag_t cs_equation_get_flag | ( | const cs_equation_t * | eq | ) |
Return the flag associated to an equation.
| [in] | eq | pointer to a cs_equation_t structure |
| int cs_equation_get_id | ( | const cs_equation_t * | eq | ) |
Return the id number related to the given cs_equation_t structure.
| [in] | eq | pointer to a cs_equation_t structure |
| int cs_equation_get_n_equations | ( | void | ) |
Retrieve the number of equations.
| const char* cs_equation_get_name | ( | const cs_equation_t * | eq | ) |
Return the name related to the given cs_equation_t structure.
| [in] | eq | pointer to a cs_equation_t structure |
| cs_equation_param_t* cs_equation_get_param | ( | const cs_equation_t * | eq | ) |
Return the cs_equation_param_t structure associated to a cs_equation_t structure.
| [in] | eq | pointer to a cs_equation_t structure |
| cs_property_t* cs_equation_get_reaction_property | ( | const cs_equation_t * | eq, |
| const int | reaction_id | ||
| ) |
Return a pointer to the cs_property_t structure associated to the reaction term with id equal to reaction_id and related to this equation.
| [in] | eq | pointer to a cs_equation_t structure |
| [in] | reaction_id | id related to this reaction term |
| void* cs_equation_get_scheme_context | ( | const cs_equation_t * | eq | ) |
Return a pointer to a structure useful to handle low-level operations for the given equation.
| [in] | eq | pointer to a cs_equation_t structure |
| int cs_equation_get_space_poly_degree | ( | const cs_equation_t * | eq | ) |
Return the max. degree used in the polynomial basis for the space discretization.
| [in] | eq | pointer to a cs_equation_t structure |
| cs_param_space_scheme_t cs_equation_get_space_scheme | ( | const cs_equation_t * | eq | ) |
Return the type of numerical scheme used for the discretization in space.
| [in] | eq | pointer to a cs_equation_t structure |
| cs_property_t* cs_equation_get_time_property | ( | const cs_equation_t * | eq | ) |
Return a pointer to the cs_property_t structure associated to the unsteady term for this equation (NULL if not activated).
| [in] | eq | pointer to a cs_equation_t structure |
| cs_equation_type_t cs_equation_get_type | ( | const cs_equation_t * | eq | ) |
Return the type of equation for the given equation structure.
| [in] | eq | pointer to a cs_equation_t structure |
| int cs_equation_get_var_dim | ( | const cs_equation_t * | eq | ) |
Return the dimension of the variable solved by this equation.
| [in] | eq | pointer to a cs_equation_t structure |
| cs_real_t* cs_equation_get_vertex_values | ( | const cs_equation_t * | eq | ) |
For a given equation, retrieve an array of values related to each vertex of the mesh for the unknowns.
| [in] | eq | pointer to a cs_equation_t structure |
| bool cs_equation_has_field_name | ( | const cs_equation_t * | eq, |
| const char * | fld_name | ||
| ) |
Check if the asociated field to a cs_equation_t structure has name equal to fld_name.
| [in] | eq | pointer to a cs_equation_t structure to test |
| [in] | fld_name | name of the field |
| void cs_equation_initialize | ( | const cs_mesh_t * | mesh, |
| const cs_cdo_connect_t * | connect, | ||
| const cs_cdo_quantities_t * | quant, | ||
| const cs_time_step_t * | ts | ||
| ) |
Allocate and initialize the builder of the algebraic system. Set the initialize condition to all variable fields associated to each cs_equation_t structure.
| [in] | mesh | pointer to a cs_mesh_t structure |
| [in] | connect | pointer to a cs_cdo_connect_t structure |
| [in] | quant | pointer to a cs_cdo_quantities_t structure |
| [in] | ts | pointer to a cs_time_step_t structure |
| bool cs_equation_is_steady | ( | const cs_equation_t * | eq | ) |
Return true is the given equation is steady otherwise false.
| [in] | eq | pointer to a cs_equation_t structure |
| void cs_equation_log_monitoring | ( | void | ) |
Print a synthesis of the monitoring information in the performance file.
| void cs_equation_log_setup | ( | void | ) |
Summarize all cs_equation_t structures.
| cs_equation_param_t* cs_equation_param_by_name | ( | const char * | eqname | ) |
Return the cs_equation_param_t structure associated to a cs_equation_t structure thanks to the equation name.
| [in] | eqname | name of the equation |
| void cs_equation_post_balance | ( | const cs_mesh_t * | mesh, |
| const cs_cdo_connect_t * | connect, | ||
| const cs_cdo_quantities_t * | cdoq, | ||
| const cs_time_step_t * | ts, | ||
| double | dt_cur | ||
| ) |
Predefined extra-operations related to all equations.
| [in] | mesh | pointer to a cs_mesh_t structure |
| [in] | connect | pointer to a cs_cdo_connect_t structure |
| [in] | cdoq | pointer to a cs_cdo_quantities_t structure |
| [in] | ts | pointer to a cs_time_step_t struct. |
| [in] | dt_cur | value of the current time step |
| void cs_equation_read_extra_restart | ( | cs_restart_t * | restart | ) |
Write into the restart file additionnal arrays (not defined as fields) but useful for the checkpoint/restart process.
| [in,out] | restart | pointer to a cs_restart_t structure |
| void cs_equation_set_flag | ( | cs_equation_t * | eq, |
| cs_flag_t | flag | ||
| ) |
Redefine the flag associated to an equation.
| [in,out] | eq | pointer to a cs_equation_t structure |
| [in] | flag | new flag to set |
| void cs_equation_set_linear_solvers | ( | void | ) |
Setup the linear algebra requirements.
| void cs_equation_solve | ( | const cs_mesh_t * | mesh, |
| double | dt_cur, | ||
| cs_equation_t * | eq | ||
| ) |
Build and then solve the linear system for an equation with an unsteady term.
| [in] | mesh | pointer to a cs_mesh_t structure |
| [in] | dt_cur | value of the current time step |
| [in,out] | eq | pointer to a cs_equation_t structure |
| void cs_equation_solve_deprecated | ( | cs_equation_t * | eq | ) |
Solve the linear system for this equation.
| [in,out] | eq | pointer to a cs_equation_t structure |
| void cs_equation_solve_steady_state | ( | const cs_mesh_t * | mesh, |
| cs_equation_t * | eq | ||
| ) |
Build and then solve the linear system for this equation when the goal is to find the steady state.
| [in] | mesh | pointer to a cs_mesh_t structure |
| [in,out] | eq | pointer to a cs_equation_t structure |
| bool cs_equation_uses_new_mechanism | ( | const cs_equation_t * | eq | ) |
Return true is the given equation is steady otherwise false.
| [in] | eq | pointer to a cs_equation_t structure |
| void cs_equation_write_extra_restart | ( | cs_restart_t * | restart | ) |
Write into the restart file additionnal arrays (not defined as fields) but useful for the checkpoint/restart process.
| [in,out] | restart | pointer to a cs_restart_t structure |
1.8.13