Namespaces | |
angular | |
basic function of angular dynamics of particle | |
init | |
pptype | |
Classes | |
struct | ParticleContact |
struct | PPContact |
struct | PPContactModelBase |
struct | WPContact |
struct | NormDist |
struct | WPContactModelBase |
struct | ContactData |
struct | ParticleData |
struct | ParticleData< 3 > |
struct | ParticleData< 2 > |
struct | ParticleField |
struct | PFluidData |
struct | SmartData |
class | CavityQueue |
This class is designed for saving the cavity in the particlefield smartplist. More... | |
class | SmartPList |
particle field list model More... | |
struct | EllipsoidalPointParticle |
the base of single ellipsoidal point particle More... | |
class | EllipsoidalShape |
particle type class More... | |
class | EllipsoidLevelSet |
struct | ParticleModel |
struct | ShapeIntegral |
class | SwimmerItf |
struct | ForceModel |
struct | TorqueModel |
struct | CoupleBase |
struct | CoupleCart |
struct | DeltaFun |
struct | DeltaFunMap |
Typedefs | |
template<int N_dim> | |
using | PFList = SmartPList< ParticleField< N_dim > > |
using | PartID = std::tuple< uInt, uInt, uInt > |
using | CavityIndex = CavityQueue< int > |
using | FM_ptr = std::shared_ptr< dmdyn::ForceModel > |
using | TM_ptr = std::shared_ptr< dmdyn::TorqueModel > |
Enumerations | |
enum class | ContactShapeType { None = 0 , SphereToSphere , EllipsoidToEllipsoid } |
enum class | ContactStatus { Do_Not_Contact = 0 , Contact } |
enum class | ContactComponent { Single = 0 , Multi } |
control whether collision will happen only in the same type particle (Single) or in different type particle (Multi) More... | |
enum class | WPDetectMethod { CenterPnt = 0 , EquRadius , MaxRadius , FullResolved } |
Wall contact detection method. More... | |
enum class | PBoundaryType { P = 0 , W , N } |
particle boundary type More... | |
enum class | SPLTag { Free = 0 , ReadOnly , AddOnly , GetAndRemoveOnly , AddVirtualListOnly } |
enum class | ShapeType { Sphere = 0 , Spheroid , Ellipsoid } |
enum class | CoupleType { Force = 0 , Torque = 1 , Stresslet } |
enum class | DeltaFunType { FourPnts , ThreePnts , TwoPnts , OnePnts , FourPntsCos } |
Functions | |
template<int N_dim = 3> | |
requires (N_dim==2||N_dim==3) void Ellipsoid< N_dim > | |
compute particle constant parameters More... | |
template<int N_dim> | |
Real | Distance (ParticleField< N_dim > &pf_i, ParticleField< N_dim > &pf_j) |
calculate the distance between two particle More... | |
static PBoundaryType | vConfigPBoundaryType (std::string type) |
static WPDetectMethod | vConfigWPDetectMethod (std::string type) |
template<int N_dim> | |
Vecr< N_dim > | HouseholderTransfer (const Vecr< N_dim > &xyz, const Vecr< N_dim > &dir, const Vecr< N_dim > &pos) |
HouseholderTransfer. More... | |
template<int N_dim> | |
Vecr< N_dim > | HouseholderTransfer (const Vecr< N_dim > &vel, const Vecr< N_dim > &dir) |
template<int N_dim> | |
std::ostream & | operator<< (std::ostream &os, const ParticleData< N_dim > &x) |
print particle data More... | |
template<int N_dim> | |
std::ostream & | operator<< (std::ostream &os, const PFluidData< N_dim > &x) |
template<int N_dim> | |
requires(N_dim==2||N_dim==3) struct Ellipsoid | requires (N_dim==2||N_dim==3) Ellipsoid< N_dim > |
basic model of ellipsoid More... | |
template<int N_dim> | |
requires (N_dim==3||N_dim==2||N_dim==1) static inline Real Rep(const Real &kvisc | |
particle Reynolds Number Re_p, base on diameter More... | |
template<int N_dim> | |
requires(N_dim==2||N_dim==3) struct IBEllipsoid | requires (N_dim==2||N_dim==3) IBEllipsoid< N_dim > |
basic model of ellipsoid More... | |
template<int N_dim> | |
requires(N_dim==2||N_dim==3) struct IBSphere | requires (N_dim==2||N_dim==3) IBSphere< N_dim > |
template<int N_dim> | |
requires(N_dim==2||N_dim==3) struct Sphere | requires (N_dim==2||N_dim==3) Sphere< N_dim > |
basic model of sphere More... | |
template<int N_dim> | |
requires(N_dim==2||N_dim==3) struct SpheroidInertialess | requires (N_dim==2||N_dim==3) SpheroidInertialess< N_dim > |
basic model of inertialess spheroid More... | |
switch (modelid) | |
static std::vector< std::string > | PresetForceModel (const int &modelid) |
Generate force model name list for preset particle models. More... | |
static std::vector< std::string > | PresetTorqueModel (const int &modelid) |
Generate torque model name list for preset particle models. More... | |
static CoupleType | vConfigCoupleType (const std::string &type) |
static DeltaFunType | vConfigDeltaFunType (const std::string &type) |
static int | vConfigDeltaWidth (const DeltaFunType type) |
Variables | |
std::vector< FM_ptr > & | vectorlist |
std::vector< FM_ptr > const std::vector< std::string > & | strlist |
const Real & | radius |
const Real const Real | fluidvel [] |
using dmdyn::CavityIndex = typedef CavityQueue<int> |
using dmdyn::FM_ptr = typedef std::shared_ptr<dmdyn::ForceModel> |
typedef std::tuple< uInt, uInt, uInt > dmdyn::PartID |
using dmdyn::PFList = typedef SmartPList<ParticleField<N_dim> > |
using dmdyn::TM_ptr = typedef std::shared_ptr<dmdyn::TorqueModel> |
|
strong |
|
strong |
|
strong |
|
strong |
|
strong |
|
strong |
|
strong |
|
strong |
|
strong |
Real dmdyn::Distance | ( | ParticleField< N_dim > & | pf_i, |
ParticleField< N_dim > & | pf_j | ||
) |
calculate the distance between two particle
pf_i | particleField i |
pf_j | particleField j |
References dmdyn::ParticleField< N_dim >::pdata.
Vecr<N_dim> dmdyn::HouseholderTransfer | ( | const Vecr< N_dim > & | xyz, |
const Vecr< N_dim > & | dir, | ||
const Vecr< N_dim > & | pos | ||
) |
HouseholderTransfer.
N_dim |
xyz | position point |
dir | direction of plane |
pos | postion at plane |
References blin::Dot(), and blin::Norm2().
|
inline |
print particle data
Real |
os | |
x |
|
inline |
|
static |
Generate force model name list for preset particle models.
modelid |
References dmdyn::pptype::kEllipsoid, dmdyn::pptype::kEllipsoid_tracer, dmdyn::pptype::kSphere, dmdyn::pptype::kSphere_empircal, dmdyn::pptype::kSphere_oseen, dmdyn::pptype::kSphere_tracer, dmdyn::pptype::kSpheroid_inertialess, and dmdyn::pptype::kSpheroid_inertialess_swimmer.
|
static |
Generate torque model name list for preset particle models.
modelid |
References dmdyn::pptype::kEllipsoid, dmdyn::pptype::kEllipsoid_tracer, dmdyn::pptype::kSphere, dmdyn::pptype::kSpheroid_inertialess, and dmdyn::pptype::kSpheroid_inertialess_swimmer.
requires (N_dim == 2 || N_dim == 3) struct Ellipsoid dmdyn::requires | ( | N_dim | = = 2 || N_dim == 3 | ) |
basic model of ellipsoid
model id from 100-103
N_dim |
References PresetForceModel(), PresetTorqueModel(), radius, and vConfigWPDetectMethod().
requires (N_dim == 2 || N_dim == 3) struct IBEllipsoid dmdyn::requires | ( | N_dim | = = 2 || N_dim == 3 | ) |
basic model of ellipsoid
model id from 100-103
N_dim |
References dmdyn::ParticleModel::id.
requires (N_dim == 2 || N_dim == 3) struct IBSphere dmdyn::requires | ( | N_dim | = = 2 || N_dim == 3 | ) |
References dmdyn::ParticleModel::id.
requires (N_dim == 2 || N_dim == 3) struct Sphere dmdyn::requires | ( | N_dim | = = 2 || N_dim == 3 | ) |
basic model of sphere
model id from 100-103
N_dim |
References PresetForceModel(), PresetTorqueModel(), radius, and vConfigWPDetectMethod().
requires (N_dim == 2 || N_dim == 3) struct SpheroidInertialess dmdyn::requires | ( | N_dim | = = 2 || N_dim == 3 | ) |
basic model of inertialess spheroid
model id from 300-399
N_dim |
References PresetForceModel(), PresetTorqueModel(), and vConfigWPDetectMethod().
dmdyn::requires | ( | N_dim | = =2||N_dim==3 | ) |
compute particle constant parameters
N_dim |
ghost collision
GlowinskiCollision model
Cohesion model
Lubrication model
Collision model
GlowinskiCollision model
Stokes drag
Stokes drag with Oseen correction
Stokes drag with empirical correction
Gyrotaxis torque for inertialess spheroids. written by jingran qiu
GlowinskiCollision model
Stokes drag
Stokes drag with Oseen correction
Stokes drag with empirical correction
Gyrotaxis torque for inertialess spheroids. written by jingran qiu
References dmdyn::ParticleField< N_dim >::contact_force, dmdyn::ParticleField< N_dim >::contact_torque, dmdyn::angular::CrossVec3(), dmdyn::ContactData< N_dim >::curr_ind, dmdyn::ContactData< N_dim >::disp_tan_new, dmdyn::ContactData< N_dim >::disp_tan_old, Distance(), dmdyn::ParticleField< N_dim >::dtc, EllipsoidToEllipsoid, dmdyn::ParticleField< N_dim >::fdata, Force, dmdyn::ParticleField< N_dim >::getParticleID(), dmdyn::ContactData< N_dim >::if_cal_once, dmdyn::ContactData< N_dim >::impart_vel_new, dmdyn::ContactData< N_dim >::impart_vel_old, quadpack::max(), quadpack::min(), dmdyn::ContactData< N_dim >::nbrs_contact_init_state, dmdyn::ContactData< N_dim >::nbrs_contact_stage_new, dmdyn::ContactData< N_dim >::nbrs_contact_stage_old, dmdyn::ContactData< N_dim >::nbrs_pp_contact, dmdyn::ContactData< N_dim >::nbrs_pp_index, dmdyn::ParticleField< N_dim >::ncollid_step, dmdyn::ParticleField< N_dim >::np_step, dmdyn::ParticleField< N_dim >::particle_typeid, dmdyn::ParticleField< N_dim >::pdata, mathconst::PI, dmdyn::ParticleField< N_dim >::rk_step, SphereToSphere, and dmdyn::ParticleField< N_dim >::time_scheme.
dmdyn::requires | ( | N_dim | = =3||N_dim==2||N_dim==1 | ) | const & |
particle Reynolds Number Re_p, base on diameter
Re_p=2*r*|u_f-v_p|/\nu
kvisc | kinematic viscosity \nu |
radius | particle radius |
fluidvel | fluid velocity at particle postion |
partvel | particle velocity |
dmdyn::switch | ( | modelid | ) |
|
inlinestatic |
|
inlinestatic |
References FourPnts, FourPntsCos, OnePnts, ThreePnts, and TwoPnts.
|
inlinestatic |
References FourPnts, FourPntsCos, OnePnts, ThreePnts, and TwoPnts.
|
inlinestatic |
|
inlinestatic |
References CenterPnt, EquRadius, FullResolved, and MaxRadius.
const Real& dmdyn::radius |
std::vector< TM_ptr > const std::vector< std::string > & dmdyn::strlist |
std::vector< TM_ptr > & dmdyn::vectorlist |