MechSys  1.0
Computing library for simulations in continuum and discrete mechanics
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Types | Public Member Functions | Public Attributes
LBM::Domain Class Reference

#include <Domain.h>

List of all members.

Public Types

typedef void(* ptDFun_t )(Domain &Dom, void *UserData)

Public Member Functions

 Domain (LBMethod Method, Array< double > nu, iVec3_t Ndim, double dx, double dt)
 Time step.
 Domain (LBMethod Method, double nu, iVec3_t Ndim, double dx, double dt)
 Time step.
void ApplyForce (size_t n=0, size_t Np=1)
 Apply the interaction forces and the collision operator.
void Collide (size_t n=0, size_t Np=1)
 Apply the interaction forces and the collision operator.
void ImprintLattice ()
 Imprint the DEM particles into the lattices.
void Solve (double Tf, double dtOut, ptDFun_t ptSetup=NULL, ptDFun_t ptReport=NULL, char const *FileKey=NULL, bool RenderVideo=true, size_t Nproc=1)
 Solve the Domain dynamics.
void AddDisk (int TheTag, Vec3_t const &TheX, Vec3_t const &TheV, Vec3_t const &TheW, double Therho, double TheR, double dt)
 Add a disk element.
void AddSphere (int TheTag, Vec3_t const &TheX, Vec3_t const &TheV, Vec3_t const &TheW, double Therho, double TheR, double dt)
 Add a disk element.
void ResetContacts ()
 Reset contacts for verlet method DEM.
void ResetDisplacements ()
 Reset the displacements for the verlet method DEM.
double MaxDisplacement ()
 Give the maximun displacement of DEM particles.
void BoundingBox (Vec3_t &Xmin, Vec3_t &Xmax)
 Bounding box for DEM particles.

Public Attributes

bool PrtVec
 Print Vector data into the xdmf-h5 files.
Array< LatticeLat
 Fluid Lattices.
Array< Particle * > Particles
 Array of Disks.
Array< Interacton * > Interactons
 Array of insteractons.
Array< Interacton * > CInteractons
 Array of valid interactons.
Array< iVec3_tCellPairs
 pairs of cells
set< pair< Particle
*, Particle * > > 
Listofpairs
 List of pair of particles associated per interacton for memory optimization.
double Time
 Time of the simulation.
double dt
 Timestep.
double Alpha
 Verlet distance.
double Gmix
 Interaction constant for the mixture.
void * UserData
 User Data.
size_t idx_out
 The discrete time step.

Member Typedef Documentation

typedef void(* LBM::Domain::ptDFun_t)(Domain &Dom, void *UserData)

Constructor & Destructor Documentation

LBM::Domain::Domain ( LBMethod  Method,
Array< double >  nu,
iVec3_t  Ndim,
double  dx,
double  dt 
) [inline]

Time step.

Parameters:
MethodType of array, for example D2Q9
nuViscosity for each fluid
NdimCell divisions per side
dxSpace spacing
LBM::Domain::Domain ( LBMethod  Method,
double  nu,
iVec3_t  Ndim,
double  dx,
double  dt 
) [inline]

Time step.

Parameters:
MethodType of array, for example D2Q9
nuViscosity for each fluid
NdimCell divisions per side
dxSpace spacing

Member Function Documentation

void LBM::Domain::AddDisk ( int  TheTag,
Vec3_t const &  TheX,
Vec3_t const &  TheV,
Vec3_t const &  TheW,
double  Therho,
double  TheR,
double  dt 
) [inline]

Add a disk element.

void LBM::Domain::AddSphere ( int  TheTag,
Vec3_t const &  TheX,
Vec3_t const &  TheV,
Vec3_t const &  TheW,
double  Therho,
double  TheR,
double  dt 
) [inline]

Add a disk element.

void LBM::Domain::ApplyForce ( size_t  n = 0,
size_t  Np = 1 
) [inline]

Apply the interaction forces and the collision operator.

void LBM::Domain::BoundingBox ( Vec3_t Xmin,
Vec3_t Xmax 
) [inline]

Bounding box for DEM particles.

void LBM::Domain::Collide ( size_t  n = 0,
size_t  Np = 1 
)

Apply the interaction forces and the collision operator.

Imprint the DEM particles into the lattices.

double LBM::Domain::MaxDisplacement ( ) [inline]

Give the maximun displacement of DEM particles.

void LBM::Domain::ResetContacts ( ) [inline]

Reset contacts for verlet method DEM.

Reset the displacements for the verlet method DEM.

void LBM::Domain::Solve ( double  Tf,
double  dtOut,
ptDFun_t  ptSetup = NULL,
ptDFun_t  ptReport = NULL,
char const *  FileKey = NULL,
bool  RenderVideo = true,
size_t  Nproc = 1 
) [inline]

Solve the Domain dynamics.


Member Data Documentation

Verlet distance.

pairs of cells

Array of valid interactons.

Timestep.

Interaction constant for the mixture.

The discrete time step.

Array of insteractons.

Fluid Lattices.

List of pair of particles associated per interacton for memory optimization.

Array of Disks.

Print Vector data into the xdmf-h5 files.

Time of the simulation.

User Data.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines