PeriDEM 0.2.0
PeriDEM -- Peridynamics-based high-fidelity model for granular media
|
A class to apply displacement boundary condition. More...
#include <particleULoading.h>
Public Member Functions | |
ParticleULoading (std::vector< inp::PBCData > &bc_data) | |
Constructor. | |
bool | needToProcessParticle (size_t id, const inp::PBCData &bc) |
Function that checks if given particle with id = id needs to be processed within boundary condition data bc. | |
bool | needToComputeDof (const util::Point &x, size_t id, const inp::PBCData &bc) |
Function that checks if we need to do computation at a given point x within a particle with id = id. | |
void | setFixity (particle::BaseParticle *particle) |
Sets fixity mask. | |
void | apply (const double &time, particle::BaseParticle *particle) |
Applies displacement boundary condition. | |
Public Member Functions inherited from loading::ParticleLoading | |
ParticleLoading ()=default | |
Constructor. | |
Data Fields | |
std::vector< bool > | d_pZeroDisplacementApplied |
Flag to indicate whether particles are fixed. | |
Additional Inherited Members | |
Protected Attributes inherited from loading::ParticleLoading | |
std::vector< inp::PBCData > | d_bcData |
List of displacement bcs. | |
A class to apply displacement boundary condition.
Definition at line 35 of file particleULoading.h.
loading::ParticleULoading::ParticleULoading | ( | std::vector< inp::PBCData > & | bc_data | ) |
Constructor.
bc_data | Boundary condition data |
Definition at line 33 of file particleULoading.cpp.
References loading::ParticleLoading::d_bcData, and d_pZeroDisplacementApplied.
void loading::ParticleULoading::apply | ( | const double & | time, |
particle::BaseParticle * | particle | ||
) |
Applies displacement boundary condition.
time | Current time |
particle | Particle object pointer |
Definition at line 115 of file particleULoading.cpp.
References util::derRotate2D(), util::parallel::getNThreads(), and util::rotate2D().
bool loading::ParticleULoading::needToComputeDof | ( | const util::Point & | x, |
size_t | id, | ||
const inp::PBCData & | bc | ||
) |
Function that checks if we need to do computation at a given point x within a particle with id = id.
x | Coordinates of a point within particle (reference coordinate) |
id | Id of particle in all particle list |
bc | Boundary condition data |
Definition at line 60 of file particleULoading.cpp.
References util::geometry::GeomData::d_geom_p, inp::PBCData::d_isRegionActive, inp::PBCData::d_pList, inp::PBCData::d_pNotList, inp::PBCData::d_regionGeomData, and inp::PBCData::d_selectionType.
bool loading::ParticleULoading::needToProcessParticle | ( | size_t | id, |
const inp::PBCData & | bc | ||
) |
Function that checks if given particle with id = id needs to be processed within boundary condition data bc.
id | Id of particle in all particle list |
bc | Boundary condition data |
Definition at line 41 of file particleULoading.cpp.
References inp::PBCData::d_pList, inp::PBCData::d_pNotList, and inp::PBCData::d_selectionType.
void loading::ParticleULoading::setFixity | ( | particle::BaseParticle * | particle | ) |
Sets fixity mask.
particle | Particle object pointer |
Definition at line 90 of file particleULoading.cpp.
std::vector<bool> loading::ParticleULoading::d_pZeroDisplacementApplied |
Flag to indicate whether particles are fixed.
Definition at line 79 of file particleULoading.h.
Referenced by ParticleULoading().