8.1
general documentation
cs_lagr.h File Reference
#include "cs_defs.h"
#include "assert.h"
#include "cs_base.h"
#include "cs_field.h"
#include "cs_lagr_injection.h"
+ Include dependency graph for cs_lagr.h:

Go to the source code of this file.

Data Structures

struct  cs_lagr_const_dim_t
 
struct  cs_lagr_dim_t
 
struct  cs_lagr_time_scheme_t
 
struct  cs_lagr_model_t
 
struct  cs_lagr_particle_counter_t
 
struct  cs_lagr_specific_physics_t
 
struct  cs_lagr_reentrained_model_t
 
struct  cs_lagr_precipitation_model_t
 
struct  cs_lagr_clogging_model_t
 
struct  cs_lagr_shape_model_t
 
struct  cs_lagr_agglomeration_model_t
 
struct  cs_lagr_fragmentation_model_t
 
struct  cs_lagr_consolidation_model_t
 
struct  cs_lagr_time_step_t
 
struct  cs_lagr_injection_set_t
 
struct  cs_lagr_source_terms_t
 
struct  cs_lagr_zone_data_t
 
struct  cs_lagr_internal_condition_t
 
struct  cs_lagr_encrustation_t
 
struct  cs_lagr_physico_chemical_t
 
struct  cs_lagr_brownian_t
 
struct  cs_lagr_boundary_interactions_t
 
struct  cs_lagr_extra_module_t
 
struct  cs_lagr_coal_comb_t
 

Typedefs

typedef void() cs_lagr_injection_profile_compute_t(int zone_id, int location_id, const void *input, cs_lnum_t n_elts, const cs_lnum_t elt_ids[], cs_real_t profile[])
 Function pointer for computation of particle injection profile. More...
 

Enumerations

enum  cs_lagr_bc_type {
  CS_LAGR_BC_UNDEFINED , CS_LAGR_SYM , CS_LAGR_INLET , CS_LAGR_OUTLET ,
  CS_LAGR_REBOUND , CS_LAGR_DEPO1 , CS_LAGR_DEPO2 , CS_LAGR_DEPO_DLVO ,
  CS_LAGR_FOULING , CS_LAGR_BC_USER
}
 
enum  { CS_LAGR_IN_IMPOSED_FLUID_VALUE = -1 , CS_LAGR_IN_IMPOSED_NORM = 0 , CS_LAGR_IN_IMPOSED_COMPONENTS = 1 }
 
enum  cs_lagr_module_status_t { CS_LAGR_OFF = 0 , CS_LAGR_ONEWAY_COUPLING = 1 , CS_LAGR_TWOWAY_COUPLING = 2 , CS_LAGR_FROZEN_CONTINUOUS_PHASE = 3 }
 
enum  cs_lagr_module_shape_t { CS_LAGR_SHAPE_SPHERE_MODEL = 0 , CS_LAGR_SHAPE_SPHEROID_STOC_MODEL = 1 , CS_LAGR_SHAPE_SPHEROID_JEFFERY_MODEL = 2 }
 
enum  { CS_LAGR_PHYS_OFF = 0 , CS_LAGR_PHYS_HEAT = 1 , CS_LAGR_PHYS_COAL = 2 }
 

Functions

cs_lagr_injection_set_tcs_lagr_get_injection_set (cs_lagr_zone_data_t *zone_data, int zone_id, int set_id)
 Provide access to injection set structure. More...
 
void cs_lagr_injection_set_default (cs_lagr_injection_set_t *zis)
 Initialize injection set data structure fields to defaults. More...
 
cs_lagr_particle_counter_tcs_lagr_get_particle_counter (void)
 Get read/write pointer to global particle counter. More...
 
cs_lagr_particle_counter_tcs_lagr_update_particle_counter (void)
 Update global particle counter. More...
 
cs_lagr_specific_physics_tcs_get_lagr_specific_physics (void)
 Provide access to cs_lagr_specific_physics_t. More...
 
cs_lagr_reentrained_model_tcs_get_lagr_reentrained_model (void)
 Provide access to cs_lagr_reentrained_model_t. More...
 
cs_lagr_precipitation_model_tcs_get_lagr_precipitation_model (void)
 Provide access to cs_lagr_precipitation_model_t. More...
 
cs_lagr_clogging_model_tcs_get_lagr_clogging_model (void)
 
cs_lagr_shape_model_tcs_get_lagr_shape_model (void)
 
cs_lagr_agglomeration_model_tcs_get_lagr_agglomeration_model (void)
 
cs_lagr_consolidation_model_tcs_get_lagr_consolidation_model (void)
 
cs_lagr_time_step_tcs_get_lagr_time_step (void)
 
cs_lagr_source_terms_tcs_get_lagr_source_terms (void)
 
cs_lagr_encrustation_tcs_get_lagr_encrustation (void)
 
cs_lagr_physico_chemical_tcs_get_lagr_physico_chemical (void)
 
cs_lagr_brownian_tcs_get_lagr_brownian (void)
 
cs_lagr_zone_data_tcs_lagr_get_boundary_conditions (void)
 Return pointer to the main boundary conditions structure. More...
 
cs_lagr_zone_data_tcs_lagr_get_volume_conditions (void)
 Return pointer to the main volume conditions structure. More...
 
cs_lagr_internal_condition_tcs_lagr_get_internal_conditions (void)
 Return pointer to the main internal conditions structure. More...
 
void cs_lagr_finalize_zone_conditions (void)
 Finalize the global boundary and volume condition structures. More...
 
void cs_lagr_finalize_internal_cond (void)
 
cs_lagr_boundary_interactions_tcs_get_lagr_boundary_interactions (void)
 
cs_lagr_extra_module_tcs_get_lagr_extra_module (void)
 
void cs_lagr_solve_initialize (const cs_real_t *dt)
 
void cs_lagr_init_arrays (void)
 
void cs_lagr_finalize (void)
 
void cs_lagr_add_fields (void)
 Create additional fields needed by the Lagrangien model. More...
 
void cs_lagr_solve_time_step (const int itypfb[], const cs_real_t *dt)
 

Variables

const cs_lagr_const_dim_tcs_glob_lagr_const_dim
 
cs_lagr_dim_tcs_glob_lagr_dim
 
cs_lagr_time_scheme_tcs_glob_lagr_time_scheme
 
cs_lagr_model_tcs_glob_lagr_model
 
const cs_lagr_particle_counter_tcs_glob_lagr_particle_counter
 
int cs_glob_lagr_log_frequency_n
 
cs_real_tbound_stat
 
cs_lagr_specific_physics_tcs_glob_lagr_specific_physics
 
cs_lagr_reentrained_model_tcs_glob_lagr_reentrained_model
 
cs_lagr_precipitation_model_tcs_glob_lagr_precipitation_model
 
cs_lagr_clogging_model_tcs_glob_lagr_clogging_model
 
cs_lagr_shape_model_tcs_glob_lagr_shape_model
 
cs_lagr_agglomeration_model_tcs_glob_lagr_agglomeration_model
 
cs_lagr_fragmentation_model_tcs_glob_lagr_fragmentation_model
 
cs_lagr_consolidation_model_tcs_glob_lagr_consolidation_model
 
cs_lagr_time_step_tcs_glob_lagr_time_step
 
cs_lagr_source_terms_tcs_glob_lagr_source_terms
 
cs_lagr_encrustation_tcs_glob_lagr_encrustation
 
cs_lagr_physico_chemical_tcs_glob_lagr_physico_chemical
 
cs_lagr_brownian_tcs_glob_lagr_brownian
 
cs_lagr_boundary_interactions_tcs_glob_lagr_boundary_interactions
 
cs_lagr_extra_module_tcs_glob_lagr_extra_module
 
cs_lagr_coal_comb_tcs_glob_lagr_coal_comb
 
const cs_lagr_zone_data_tcs_glob_lagr_boundary_conditions
 
const cs_lagr_zone_data_tcs_glob_lagr_volume_conditions
 
cs_lagr_internal_condition_tcs_glob_lagr_internal_conditions
 
cs_real_33_tcs_glob_lagr_b_face_proj
 

Typedef Documentation

◆ cs_lagr_injection_profile_compute_t

typedef void() cs_lagr_injection_profile_compute_t(int zone_id, int location_id, const void *input, cs_lnum_t n_elts, const cs_lnum_t elt_ids[], cs_real_t profile[])

Function pointer for computation of particle injection profile.

Note: if the input pointer is non-NULL, it must point to valid data when the selection function is called, so that value or structure should not be temporary (i.e. local);

Parameters
[in]zone_idid of associated mesh zone
[in]location_idid of associated mesh location
[in]inputpointer to optional (untyped) value or structure.
[in]n_eltsnumber of zone elements
[in]elt_idsids of zone elements
[out]profileweight of a given zone element (size: n_elts)

Enumeration Type Documentation

◆ anonymous enum

anonymous enum

Lagrangian injection condition types

Enumerator
CS_LAGR_IN_IMPOSED_FLUID_VALUE 

impose fluid value for the injected particles

CS_LAGR_IN_IMPOSED_NORM 

impose norm

CS_LAGR_IN_IMPOSED_COMPONENTS 

impose components (for vectors)

◆ anonymous enum

anonymous enum

Lagrangian additional physical model

Enumerator
CS_LAGR_PHYS_OFF 
CS_LAGR_PHYS_HEAT 
CS_LAGR_PHYS_COAL 

◆ cs_lagr_bc_type

Lagrangian boundary condition types

Enumerator
CS_LAGR_BC_UNDEFINED 

undefined conditions

CS_LAGR_SYM 

symmetry

CS_LAGR_INLET 

inlet

CS_LAGR_OUTLET 

outlet

CS_LAGR_REBOUND 

elastic rebound

CS_LAGR_DEPO1 

immediate deposition and elimination

CS_LAGR_DEPO2 

deposition

CS_LAGR_DEPO_DLVO 

deposition based on DLVO theory

CS_LAGR_FOULING 

fouling (combustion)

CS_LAGR_BC_USER 

user-defined

◆ cs_lagr_module_shape_t

Particle shape condition types

Enumerator
CS_LAGR_SHAPE_SPHERE_MODEL 

Impose spherical particles

CS_LAGR_SHAPE_SPHEROID_STOC_MODEL 

Impose spheroids (stochastic model for transport)

CS_LAGR_SHAPE_SPHEROID_JEFFERY_MODEL 

◆ cs_lagr_module_status_t

Lagrangian module status. the different values correspond to the following coupling:

  • CS_LAGR_OFF: Lagrangian module off
  • CS_LAGR_ONEWAY_COUPLING: Lagrangian two-phase flow in one-way coupling (no influence of the particles on the continuous phase)
  • CS_LAGR_TWOWAY_COUPLING: Lagrangian two-phase flow with two-way coupling (influence of the particles on the dynamics of the continuous phase). Dynamics, temperature and mass may be coupled independently.
  • CS_LAGR_FROZEN_CONTINUOUS_PHASE: Lagrangian two-phase flow on frozen i continuous phase. This option only only be used in case of a calculation restart. All the Eulerian fields are frozen (including the scalar fields). This option automatically implies iccvfg = 1
Enumerator
CS_LAGR_OFF 
CS_LAGR_ONEWAY_COUPLING 
CS_LAGR_TWOWAY_COUPLING 
CS_LAGR_FROZEN_CONTINUOUS_PHASE 

Function Documentation

◆ cs_get_lagr_agglomeration_model()

cs_lagr_agglomeration_model_t* cs_get_lagr_agglomeration_model ( void  )

◆ cs_get_lagr_boundary_interactions()

cs_lagr_boundary_interactions_t* cs_get_lagr_boundary_interactions ( void  )

◆ cs_get_lagr_brownian()

cs_lagr_brownian_t* cs_get_lagr_brownian ( void  )

◆ cs_get_lagr_clogging_model()

cs_lagr_clogging_model_t* cs_get_lagr_clogging_model ( void  )

◆ cs_get_lagr_consolidation_model()

cs_lagr_consolidation_model_t* cs_get_lagr_consolidation_model ( void  )

◆ cs_get_lagr_encrustation()

cs_lagr_encrustation_t* cs_get_lagr_encrustation ( void  )

◆ cs_get_lagr_extra_module()

cs_lagr_extra_module_t* cs_get_lagr_extra_module ( void  )

◆ cs_get_lagr_physico_chemical()

cs_lagr_physico_chemical_t* cs_get_lagr_physico_chemical ( void  )

◆ cs_get_lagr_precipitation_model()

cs_lagr_precipitation_model_t* cs_get_lagr_precipitation_model ( void  )

Provide access to cs_lagr_precipitation_model_t.

Returns
pointer to lagrangian precipitation model options

◆ cs_get_lagr_reentrained_model()

cs_lagr_reentrained_model_t* cs_get_lagr_reentrained_model ( void  )

Provide access to cs_lagr_reentrained_model_t.

Returns
pointer to lagrangian reentrained model options

◆ cs_get_lagr_shape_model()

cs_lagr_shape_model_t* cs_get_lagr_shape_model ( void  )

◆ cs_get_lagr_source_terms()

cs_lagr_source_terms_t* cs_get_lagr_source_terms ( void  )

◆ cs_get_lagr_specific_physics()

cs_lagr_specific_physics_t* cs_get_lagr_specific_physics ( void  )

Provide access to cs_lagr_specific_physics_t.

Returns
pointer to lagrangian specific physics options

◆ cs_get_lagr_time_step()

cs_lagr_time_step_t* cs_get_lagr_time_step ( void  )

◆ cs_lagr_add_fields()

void cs_lagr_add_fields ( void  )

Create additional fields needed by the Lagrangien model.

Most additional fields can be defined directly in cs_lagr_options_definition, but some fields may be mapped to different fields based on the calling module (i.e. code_saturne or neptune_cfd), and possibly defined after that call.

◆ cs_lagr_finalize()

void cs_lagr_finalize ( void  )

◆ cs_lagr_finalize_internal_cond()

void cs_lagr_finalize_internal_cond ( void  )

◆ cs_lagr_finalize_zone_conditions()

void cs_lagr_finalize_zone_conditions ( void  )

Finalize the global boundary and volume condition structures.

Finalize the global boundary and volume condition structures.

Returns
pointer to current internal conditions structure

◆ cs_lagr_get_boundary_conditions()

cs_lagr_zone_data_t* cs_lagr_get_boundary_conditions ( void  )

Return pointer to the main boundary conditions structure.

Returns
pointer to current boundary zone data structure

◆ cs_lagr_get_injection_set()

cs_lagr_injection_set_t* cs_lagr_get_injection_set ( cs_lagr_zone_data_t zone_data,
int  zone_id,
int  set_id 
)

Provide access to injection set structure.

This access method ensures the strucure is initialized for the given zone and injection set.

Parameters
[in]zone_datapointer to boundary or volume conditions structure
[in]zone_idzone id
[in]set_idinjection set id
Returns
pointer to injection set data structure

◆ cs_lagr_get_internal_conditions()

cs_lagr_internal_condition_t* cs_lagr_get_internal_conditions ( void  )

Return pointer to the main internal conditions structure.

The structure is allocated on demand, when this function is first called.

Returns
pointer to current internal_conditions structure

◆ cs_lagr_get_particle_counter()

cs_lagr_particle_counter_t* cs_lagr_get_particle_counter ( void  )

Get read/write pointer to global particle counter.

Returns
pointer to lagrangian particle counter structure

◆ cs_lagr_get_volume_conditions()

cs_lagr_zone_data_t* cs_lagr_get_volume_conditions ( void  )

Return pointer to the main volume conditions structure.

Returns
pointer to current volume zone data structure

◆ cs_lagr_init_arrays()

void cs_lagr_init_arrays ( void  )

◆ cs_lagr_injection_set_default()

void cs_lagr_injection_set_default ( cs_lagr_injection_set_t zis)

Initialize injection set data structure fields to defaults.

Parameters
[in,out]zispointer to structure to initialize

◆ cs_lagr_solve_initialize()

void cs_lagr_solve_initialize ( const cs_real_t dt)

◆ cs_lagr_solve_time_step()

void cs_lagr_solve_time_step ( const int  itypfb[],
const cs_real_t dt 
)

◆ cs_lagr_update_particle_counter()

cs_lagr_particle_counter_t* cs_lagr_update_particle_counter ( void  )

Update global particle counter.

All fields handled in the local particle set are updated relative to that data (using global sums).

Returns
pointer to lagrangian particle counter structure

Variable Documentation

◆ bound_stat

cs_real_t* bound_stat
extern

◆ cs_glob_lagr_agglomeration_model

cs_lagr_agglomeration_model_t* cs_glob_lagr_agglomeration_model
extern

◆ cs_glob_lagr_b_face_proj

cs_real_33_t* cs_glob_lagr_b_face_proj
extern

◆ cs_glob_lagr_boundary_conditions

const cs_lagr_zone_data_t* cs_glob_lagr_boundary_conditions
extern

◆ cs_glob_lagr_boundary_interactions

cs_lagr_boundary_interactions_t* cs_glob_lagr_boundary_interactions
extern

◆ cs_glob_lagr_brownian

cs_lagr_brownian_t* cs_glob_lagr_brownian
extern

◆ cs_glob_lagr_clogging_model

cs_lagr_clogging_model_t* cs_glob_lagr_clogging_model
extern

◆ cs_glob_lagr_coal_comb

cs_lagr_coal_comb_t* cs_glob_lagr_coal_comb
extern

◆ cs_glob_lagr_consolidation_model

cs_lagr_consolidation_model_t* cs_glob_lagr_consolidation_model
extern

◆ cs_glob_lagr_const_dim

const cs_lagr_const_dim_t* cs_glob_lagr_const_dim
extern

Fixed constants

◆ cs_glob_lagr_dim

cs_lagr_dim_t* cs_glob_lagr_dim
extern

General dimensions

◆ cs_glob_lagr_encrustation

cs_lagr_encrustation_t* cs_glob_lagr_encrustation
extern

◆ cs_glob_lagr_extra_module

cs_lagr_extra_module_t* cs_glob_lagr_extra_module
extern

◆ cs_glob_lagr_fragmentation_model

cs_lagr_fragmentation_model_t* cs_glob_lagr_fragmentation_model
extern

◆ cs_glob_lagr_internal_conditions

cs_lagr_internal_condition_t* cs_glob_lagr_internal_conditions
extern

◆ cs_glob_lagr_log_frequency_n

int cs_glob_lagr_log_frequency_n
extern

◆ cs_glob_lagr_model

cs_lagr_model_t* cs_glob_lagr_model
extern

Main Lagragian physical model parameters

◆ cs_glob_lagr_particle_counter

const cs_lagr_particle_counter_t* cs_glob_lagr_particle_counter
extern

Read-only pointer to global particle counter

◆ cs_glob_lagr_physico_chemical

cs_lagr_physico_chemical_t* cs_glob_lagr_physico_chemical
extern

◆ cs_glob_lagr_precipitation_model

cs_lagr_precipitation_model_t* cs_glob_lagr_precipitation_model
extern

◆ cs_glob_lagr_reentrained_model

cs_lagr_reentrained_model_t* cs_glob_lagr_reentrained_model
extern

◆ cs_glob_lagr_shape_model

cs_lagr_shape_model_t* cs_glob_lagr_shape_model
extern

◆ cs_glob_lagr_source_terms

cs_lagr_source_terms_t* cs_glob_lagr_source_terms
extern

◆ cs_glob_lagr_specific_physics

cs_lagr_specific_physics_t* cs_glob_lagr_specific_physics
extern

◆ cs_glob_lagr_time_scheme

cs_lagr_time_scheme_t* cs_glob_lagr_time_scheme
extern

Time and Lagrangian-Eulerian coupling scheme

◆ cs_glob_lagr_time_step

cs_lagr_time_step_t* cs_glob_lagr_time_step
extern

◆ cs_glob_lagr_volume_conditions

const cs_lagr_zone_data_t* cs_glob_lagr_volume_conditions
extern