9.0
general documentation
Loading...
Searching...
No Matches
cs_lagr_orientation.cpp File Reference
#include "base/cs_defs.h"
#include <math.h>
#include "bft/bft_printf.h"
#include "bft/bft_error.h"
#include "bft/bft_mem.h"
#include "base/cs_base.h"
#include "base/cs_field.h"
#include "base/cs_field_pointer.h"
#include "base/cs_math.h"
#include "mesh/cs_mesh.h"
#include "mesh/cs_mesh_quantities.h"
#include "base/cs_parameters.h"
#include "base/cs_physical_constants.h"
#include "pprt/cs_physical_model.h"
#include "base/cs_prototypes.h"
#include "base/cs_random.h"
#include "turb/cs_turbulence_model.h"
#include "lagr/cs_lagr.h"
#include "lagr/cs_lagr_particle.h"
#include "lagr/cs_lagr_event.h"
#include "lagr/cs_lagr_orientation.h"
Include dependency graph for cs_lagr_orientation.cpp:

Functions

static void _mean_stretching_phase_spheroid (const cs_real_t dtp, cs_real_t orientation[3], const cs_real_t Lambda, const cs_real_t beta, const cs_real_t gradvf_sym[3][3])
 Treatment of spheroid stretching by symetric part of the mean velocity gradient.
static void _mean_rotation_phase_spheroid (const cs_real_t dtp, cs_real_t orientation[3], const cs_real_t gradvf_ant[3][3])
 Treatment of spheroid rotation increment by antisymetric mean velocity gradient.
static void _bm_stretching_phase_spheroid (const cs_lnum_t ip, const cs_real_t dtp, const cs_real_t d_plus, cs_real_t orientation[3], const cs_real_t Lambda, const cs_real_t brown[])
 Treatment of spheroid stretching by Brownian effect.
static void _bm_rotation_phase_spheroid_by_quaternion (const cs_lnum_t ip, const cs_real_t dtp, const cs_real_t d_minus, cs_real_t orient_loc[3], cs_real_t quater_loc[4], const cs_real_t brown[])
 Treatment of spheroid rotation by Brownian on the sphere using quaternions.
void cs_lagr_orientation_dyn_spheroids (int iprev, const cs_real_t dt_p, const cs_real_t gradvf[][3][3])
 Integration of the equations of motion for particle orientation:
void cs_lagr_orientation_dyn_jeffery (cs_real_t dt_p, const cs_real_t gradvf[][3][3])
 Integration of the Jeffey equations in DNS mode.

Function Documentation

◆ _bm_rotation_phase_spheroid_by_quaternion()

void _bm_rotation_phase_spheroid_by_quaternion ( const cs_lnum_t ip,
const cs_real_t dtp,
const cs_real_t d_minus,
cs_real_t orient_loc[3],
cs_real_t quater_loc[4],
const cs_real_t brown[] )
static

Treatment of spheroid rotation by Brownian on the sphere using quaternions.

Principle: Use of quaternions to get the rotation angle

Parameters
[in]ipparticle number
[in]dtptime step
[in]d_minusreduced parameter for the (isotropic) fluctuation tensor
[in]orientationspheroid orientation (vector)
[in]brownnormal random number (9 values by particles)

◆ _bm_stretching_phase_spheroid()

void _bm_stretching_phase_spheroid ( const cs_lnum_t ip,
const cs_real_t dtp,
const cs_real_t d_plus,
cs_real_t orientation[3],
const cs_real_t Lambda,
const cs_real_t brown[] )
static

Treatment of spheroid stretching by Brownian effect.

Principle: Euler scheme

Parameters
[in]ipparticle number
[in]dtptime step
[in]d_plusreduced parameter for the (isotropic) fluctuation tensor
[in]orientationspheroid orientation (vector)
[in]Lambdaspheroid shape parameter
[in]brownnormal random number (9 values by particles)

◆ _mean_rotation_phase_spheroid()

void _mean_rotation_phase_spheroid ( const cs_real_t dtp,
cs_real_t orientation[3],
const cs_real_t gradvf_ant[3][3] )
static

Treatment of spheroid rotation increment by antisymetric mean velocity gradient.

Principle: exact matrix rotation (Rodrigues' formula)

TODO: use directly the antisymetric mean velocity gradient matrix Omega

Parameters
[in]dtptime step
[in]orientationspheroid orientation (vector)
[in]gradvf_antantisymetric part of the fluid velocity gradient (tensor)

◆ _mean_stretching_phase_spheroid()

void _mean_stretching_phase_spheroid ( const cs_real_t dtp,
cs_real_t orientation[3],
const cs_real_t Lambda,
const cs_real_t beta,
const cs_real_t gradvf_sym[3][3] )
static

Treatment of spheroid stretching by symetric part of the mean velocity gradient.

Principle: exact exponential scheme

Parameters
[in]dtptime step
[in]orientationspheroid orientation (vector)
[in]Lambdaspheroid shape parameter
[in]betacoefficient to be added to diagonal elements (if needed)
[in]gradvf_symsymetric part of the fluid velocity gradient (tensor)

◆ cs_lagr_orientation_dyn_jeffery()

void cs_lagr_orientation_dyn_jeffery ( cs_real_t dt_p,
const cs_real_t gradvf[][3][3] )

Integration of the Jeffey equations in DNS mode.

Parameters
[in]dt_plagrangian time step
[in]gradvffluid velocity gradient

◆ cs_lagr_orientation_dyn_spheroids()

void cs_lagr_orientation_dyn_spheroids ( int iprev,
const cs_real_t dt_p,
const cs_real_t gradvf[][3][3] )

Integration of the equations of motion for particle orientation:

Details in publication by M. Bossy and L. Campana (INRIA)

Parameters
[in]iprevtime step indicator for fields 0: use fields at current time step 1: use fields at previous time step
[in]dt_plagrangian time step
[in]gradvffluid velocity gradient