Go to the documentation of this file.
13 #ifndef __LATTICEMASTER_H
14 #define __LATTICEMASTER_H
74 #include <boost/filesystem/path.hpp>
172 void runRunnables(RunnableVector::iterator begin, RunnableVector::iterator end);
192 return std::string(PACKAGE_VERSION);
246 const std::string &meshName,
250 void addMesh2D(
const std::string&,
const std::string&,
int);
252 void addTriMesh(
const std::string &meshName,
const std::string &fileName);
266 void addExIG(
const std::string&,
const std::string&);
271 void addRotBondedIG(
int,
const std::string&,
double,
double,
double,
double,
double,
double,
double,
double,
bool,
bool,
double);
370 void addScalarInteractionSaveField(
const std::string&,
const std::string&,
const std::string&,
const std::string&,
const std::string&,
int,
int,
int,
bool checked=
false);
372 void addVectorInteractionSaveField(
const std::string&,
const std::string&,
const std::string&,
const std::string&,
const std::string&,
int,
int,
int,
bool checked=
false);
373 void addTaggedScalarInteractionSaveField(
const std::string&,
const std::string&,
const std::string&,
const std::string&,
const std::string&,
int,
int,
int,
int,
int,
bool);
374 void addTaggedScalarParticleDistributionSaver(
const std::string&,
const std::string&,
const std::string&,
int,
int,
int,
int,
int,
int,
double,
double,
int);
377 void addVectorWallField(
const string&,
const string&,vector<string>,
const string&,
int,
int,
int);
393 const std::string &fileNamePrefix,
413 const std::string &fileNamePrefix,
424 const char *particleType,
430 const char *particleType,
507 const Vec3 &minBBoxPt,
508 const Vec3 &maxBBoxPt,
531 template <
class TmplParticle>
558 template <
class TmplIterator,
class TmplParticle>
569 template <
class TmplIterator>
573 template <
typename TmplVisitor>
576 template <
typename TmplVisitor>
579 template <
typename TmplVisitor>
582 template <
typename TmplVisitor>
584 const string &meshName,
590 template <
typename TmplVisitor,
typename TmplParticle>
596 template <
typename TmplVisitor>
612 template<
typename TmplParticle>
void resume(const std::string &name)
Definition: Timer.cpp:217
const RunnableVector & getPreTimeStepRunnableVector() const
Definition: LatticeMaster.h:445
double k_s
Definition: FractalFriction.h:37
void appendTagBuildPrms(const MeshTagBuildPrms &buildPrms)
Definition: LatticeMaster.cpp:2970
const int CMD_ADD_HIF
Definition: sublattice_cmd.h:115
const int CMD_CHECKNEIGHBORS
Definition: sublattice_cmd.h:22
void addVectorParticleSaveFieldWT(const std::string &, const std::string &, const std::string &, int, int, int, const MaxTrigParams &)
Definition: LatticeMaster.cpp:1576
void setConsoleBuffered(unsigned int)
Definition: LatticeMaster.cpp:3608
virtual std::string getTypeString() const
Definition: BTriMeshIP.cpp:87
Definition: LatticeMaster.cpp:3423
const int CMD_SPHEREBODYMOVE
Definition: sublattice_cmd.h:99
void packInto(AMPIBuffer *) const
Definition: LatticeParam.cpp:36
const int CMD_ADDESPHEREBODYIG
Definition: sublattice_cmd.h:96
void broadcastCommand()
Definition: BroadCast_cmd.cpp:28
Buffer for MPI scatter/gather, root component.
Definition: mpisgbuf.h:94
virtual void performSnapShot(int currentTime)
Definition: CheckPointController.cpp:109
const int CMD_INITLATTICECIRC
Definition: sublattice_cmd.h:42
void barrier()
Definition: comm.cpp:155
Definition: CheckPointController.h:32
Mesh2DIGCommand(const MpiRankAndComm &globalRankAndComm)
Definition: LatticeMaster.cpp:2934
const int CMD_WMOVE
Definition: sublattice_cmd.h:25
BondedTriMeshIGCommand(const MpiRankAndComm &globalRankAndComm)
Definition: LatticeMaster.cpp:2957
int m_center_id
Definition: LatticeMaster.h:151
class to read 2D meshes, or more precisely, the edges thereof, from Finley mesh format files
Definition: Mesh2DReader.h:68
bool isCheckPoint(int time)
Definition: CheckPointController.cpp:349
Console & Info()
set verbose level of next message to "inf"
const int CMD_MAKELATTICE
Definition: sublattice_cmd.h:31
void setParticleNonRot(int)
Definition: LatticeMaster.cpp:1090
Interaction group parameters for Linear Dashpot interactions.
Definition: LinearDashpotInteraction.h:25
virtual void gather()
Definition: mpisgbuf.cpp:82
const int CMD_ADD_SIF
Definition: sublattice_cmd.h:110
const int CMD_ADDMESH2DIG
Definition: sublattice_cmd.h:76
Definition: LatticeMaster.cpp:2646
void addWallIG(const CEWallIGP &)
Definition: LatticeMaster.cpp:562
double m_damp
Definition: LinearDashpotInteraction.h:27
base class for broadcast commands
Definition: BroadCast_cmd.h:25
Interaction parameters for frictional interaction between rotational particles.
Definition: RotFricInteraction.h:38
void applyForceToSphereBody(const std::string &, const Vec3 &)
void setVerbosity(int)
Definition: LatticeMaster.cpp:3580
void saveTimingData()
Definition: LatticeMaster.cpp:2014
Interaction group parameters for Hertzian viscoelastic interactions.
Definition: HertzianViscoElasticInteraction.h:25
std::vector< int > IntVector
Definition: LatticeMaster.h:116
Definition: BodyForceGroup.h:68
std::pair< int, int > ParticleIdPair
Definition: LatticeMaster.h:124
void readGeometryFile(const std::string &fileName)
Definition: LatticeMaster.cpp:460
Definition: RotThermElasticInteraction.h:24
const int CMD_ADD_SPF
Definition: sublattice_cmd.h:107
const int CMD_ADDBWALLIG
Definition: sublattice_cmd.h:40
void addWall(const std::string &, const Vec3 &, const Vec3 &)
Definition: LatticeMaster.cpp:540
double m_E
Definition: HertzMindlinViscoInteraction.h:48
std::vector< MeshTriData > MeshTriDataVector
Definition: LatticeMaster.h:127
MPI send/recv buffer with automagically adjusted size.
Definition: mpivbuf.h:35
double getTimeStepSize() const
Definition: LatticeMaster.h:198
NodeIterator & getNodeIterator()
Definition: MeshReader.cpp:113
double k
Definition: RotFricInteraction.h:72
Definition: BodyForceGroup.h:27
const std::string & getMeshName() const
Definition: ETriMeshIP.h:55
double k_s
Definition: RotThermFricInteraction.h:51
bool hasAnyPeriodicDimensions() const
Definition: GeometryInfo.cpp:265
Vec3 getSphereBodyForce(const std::string &)
Definition: LatticeMaster.cpp:807
void broadcast(int)
Definition: mpicmdbuf.cpp:38
bool getScaling() const
Definition: SoftBWallInteractionGroup.h:41
void addExIG(const std::string &, const std::string &)
Definition: LatticeMaster.cpp:3498
void addParticles(TmplIterator &it)
Definition: LatticeMaster.hpp:262
const int CMD_FINISH
Definition: sublattice_cmd.h:16
Definition: ETriMeshIP.h:18
const int CMD_REMOVEIG
Definition: sublattice_cmd.h:78
const RunnableVector & getPostTimeStepRunnableVector() const
Definition: LatticeMaster.h:467
void setComm(MPI_Comm)
Definition: comm.cpp:43
virtual std::string getTypeString() const
Definition: BTriMeshIP.cpp:74
void do2dCalculations(bool do2d)
Definition: LatticeMaster.cpp:215
void tagParticleNearestTo(int, int, const Vec3 &)
Definition: LatticeMaster.cpp:960
double m_nu
Definition: HertzianViscoElasticInteraction.h:29
Abstract base class for master part of field.
Definition: FieldMaster.h:40
int m_tag
Definition: BTriMeshIP.h:65
Definition: LatticeMaster.h:121
const int CMD_NSEARCH
Definition: sublattice_cmd.h:20
Definition: LatticeMaster.cpp:3327
Interaction parameters for frictional interaction.
Definition: FrictionInteraction.h:28
const int CMD_SETCONSOLEFNAME
Definition: sublattice_cmd.h:101
IntVector getPeriodicDimensions() const
Definition: GeometryInfo.cpp:306
double r_cut
Definition: AdhesiveFriction.h:35
Console & Debug()
set verbose level of next message to "dbg"
void addPairIG(const CElasticIGP &prms)
Definition: LatticeMaster.cpp:2458
GeometryInfo m_geo_info
Definition: LatticeMaster.h:143
~CLatticeMaster()
Definition: LatticeMaster.cpp:115
void appendTriMeshPrms(const BTriMeshIP &triMeshPrms)
Definition: LatticeMaster.cpp:2962
std::vector< unsigned int > ProcessDims
Definition: LatticeParam.h:32
TriMeshDataPair readTriMesh(const std::string &fileName, int)
Definition: LatticeMaster.cpp:3192
Vec3 getWallForce(const std::string &)
Definition: LatticeMaster.cpp:704
const int CMD_GETSPHEREBODYPOS
Definition: sublattice_cmd.h:97
const TmplData & next()
Definition: IterativeReader.hpp:43
void readAndDistributeMesh2D(const std::string &, int)
Definition: LatticeMaster.cpp:3288
command for adding bonded interactions with 2d mesh
Definition: BMesh2D_cmd.h:28
void addTaggedScalarParticleDistributionSaver(const std::string &, const std::string &, const std::string &, int, int, int, int, int, int, double, double, int)
Definition: LatticeMaster.cpp:1490
double diffusivity
Definition: RotThermElasticInteraction.h:36
double m_cutoff
Definition: LinearDashpotInteraction.h:28
double mu_s
Definition: RotFricInteraction.h:74
RotIGPCommand(const MpiRankAndComm &globalRankAndComm)
Definition: LatticeMaster.cpp:2582
double m_maxGap
Definition: BTriMeshIP.h:78
void setPeriodicDimensions(BoolVector periodicDimensions)
Definition: GeometryInfo.cpp:315
void setTimingFileName(const std::string &fileName)
Definition: LatticeMaster.cpp:205
void initSnapShotController(const std::string &, int, int, int)
Definition: LatticeMaster.cpp:1732
void setCheckPointParams(const std::string &fileNamePrefix, int beginTime, int endTime, int timeInterval, bool writeThroughMaster, int precision=12)
Definition: CheckPointController.cpp:365
void Initialize()
Definition: console.cpp:54
void makeLattice(const char *particleType, double gridSize, double verletDist)
initialization functions
Definition: LatticeMaster.cpp:239
virtual void packInto(CVarMPIBuffer *) const
Definition: DampingIGP.cpp:49
double mu_s
Definition: RotThermFricInteraction.h:50
std::string getLsmVersion() const
Definition: LatticeMaster.h:190
int tag
Definition: MeshData.h:45
int m_t
Definition: LatticeMaster.h:153
void runEnd()
Definition: LatticeMaster.cpp:2003
void getSlaveSpatialDomains()
Definition: LatticeMaster.cpp:408
void addTaggedPairIG(const CRotFrictionIGP &prms, int, int, int, int)
Definition: LatticeMaster.cpp:2660
IGPCommand(const MpiRankAndComm &globalRankAndComm)
Definition: LatticeMaster.cpp:2440
Definition: BodyForceGroup.h:51
double k
Definition: BTriMeshIP.h:21
class to read triangle meshes from Finley mesh format files
Definition: MeshReader.h:68
void appendIGP(const AIGParam &prms)
Definition: LatticeMaster.cpp:2450
Console & Error()
set verbose level of next message to "err"
double m_E
Definition: HertzianElasticInteraction.h:27
double getSpringConst() const
Definition: ElasticInteraction.h:36
void addSphereBody(const std::string &, const Vec3 &, const double &)
Definition: LatticeMaster.cpp:739
const int CMD_GETMESH2DSTRESS
Definition: sublattice_cmd.h:121
MPI_Comm m_local_comm
Definition: LatticeMaster.h:163
void visitMeshFaceReferences(const string &meshName)
Definition: LatticeMaster.hpp:81
TriMeshIGCommand(const MpiRankAndComm &globalRankAndComm)
Definition: LatticeMaster.cpp:2908
const std::string & getTimingFileName() const
Definition: LatticeMaster.cpp:210
double mu_d
Definition: RotFricInteraction.h:73
const GeometryInfo & getGeometryInfo() const
Definition: CheckPointInfo.cpp:124
double m_dbl_NaN
Definition: LatticeMaster.h:167
const int CMD_GETNUMPARTICLES
Definition: sublattice_cmd.h:53
const int CMD_PMOVE
Definition: sublattice_cmd.h:23
void runRunnables(RunnableVector::iterator begin, RunnableVector::iterator end)
Definition: LatticeMaster.cpp:2039
void appendBuoyancyIGP(const esys::lsm::BuoyancyIGP &buoyancyIGP)
Definition: LatticeMaster.cpp:3340
double dt
Definition: FrictionInteraction.h:41
virtual std::string getTypeString() const
Definition: BodyForceGroup.h:77
bool m_geometry_is_initialized
Definition: LatticeMaster.h:145
virtual std::string getTypeString() const
Definition: DampingIGP.h:58
void appendGapBuildPrms(const MeshGapBuildPrms &)
Definition: BMesh2D_cmd.cpp:28
double diffusivity
Definition: RotThermFricInteraction.h:53
void setBBox(const Vec3 &min, const Vec3 &max)
Definition: GeometryInfo.cpp:348
map< int, ConnIdVector > m_temp_conn
Definition: LatticeMaster.h:139
const int CMD_MOVETAGGEDNODES
Definition: sublattice_cmd.h:57
virtual void append(int)
Definition: mpivbuf.cpp:152
double m_nu
Definition: HertzianElasticInteraction.h:28
const int CMD_PDENS
Definition: sublattice_cmd.h:77
const int CMD_MOVENODE
Definition: sublattice_cmd.h:56
Definition: Runnable.h:24
double k_s
Definition: AdhesiveFriction.h:33
std::string getSphereBodyName() const
Definition: ESphereBodyInteractionGroup.h:40
void setMpiComm(MPI_Comm mpiComm)
Definition: CheckPointController.cpp:122
void SetFilename(const string &)
Definition: console.cpp:92
void setMaxIter(int mi)
Definition: DampingIGP.h:55
Interaction group parameters for CBWallInteractionGroups.
Definition: BWallInteractionGroup.h:39
void setTimeStep(double t)
Definition: DampingIGP.h:52
void setTimeStepSize(double dt)
Definition: LatticeMaster.cpp:285
void visitTriMeshFaceForce(const string &meshName, TmplVisitor &visitor)
Definition: LatticeMaster.hpp:147
TML_Comm m_tml_global_comm
Definition: LatticeMaster.h:162
double m_A
Definition: HertzianViscoElasticFrictionInteraction.h:49
int getTag() const
Definition: BWallInteractionGroup.h:47
RunnableVector & getPostTimeStepRunnableVector()
Definition: LatticeMaster.h:475
double m_nu
Definition: HertzMindlinViscoInteraction.h:49
Interaction group parameters for CEWallInteractionGroups.
Definition: brokenEWallInteractionGroup.h:33
const int CMD_EXIG
Definition: sublattice_cmd.h:33
void removeIG(const std::string &)
Definition: LatticeMaster.cpp:2890
void oneStep()
Definition: LatticeMaster.cpp:1298
void runPreRunnables()
Definition: LatticeMaster.cpp:2047
void setName(const std::string &name)
Definition: IGParam.cpp:28
void addBondedTriMeshIG(const BTriMeshIP &triMeshPrms, const MeshTagBuildPrms &buildPrms)
Definition: LatticeMaster.cpp:2990
const int CMD_ADD_VWF
Definition: sublattice_cmd.h:114
const int CMD_IDPARTICLEMOVE
Definition: sublattice_cmd.h:67
int m_max_ts
Definition: LatticeMaster.h:150
const int CMD_PSETND
Definition: sublattice_cmd.h:43
void setParticleNonTrans(int)
Definition: LatticeMaster.cpp:1107
IGPCommand(const MpiRankAndComm &globalRankAndComm, int commandId)
Definition: LatticeMaster.cpp:2445
int getNumParticles()
Definition: LatticeMaster.cpp:2414
A convenience class encapsulating an MPI barrier. Includes timing of the wait and a debug message ( v...
Definition: mpibarrier.h:31
void setParticleDensity(int tag, int mask, double rho)
Definition: LatticeMaster.cpp:1165
virtual void packInto(CVarMPIBuffer *pBuffer) const
Definition: BodyForceGroup.cpp:44
double getNu() const
Definition: ViscWallIG.h:44
double dt
Definition: HertzianViscoElasticFrictionInteraction.h:54
double mu_0
Definition: FractalFriction.h:36
NodeIterator & getNodeIterator()
Definition: Mesh2DReader.cpp:120
Interaction group parameters for CElasticInteractionGroups.
Definition: ElasticInteraction.h:25
const int CMD_ADDTAGGEDEWALLIG
Definition: sublattice_cmd.h:94
Definition: BTriMeshIP.h:76
double getTiming(const std::string &name) const
Definition: Timer.cpp:197
void runInit()
Definition: LatticeMaster.cpp:1987
void addScalarTriangleSaveField(const string &, const string &, const string &, const string &, int, int, int)
Definition: LatticeMaster.cpp:1898
double getShearK() const
Definition: SoftBWallInteractionGroup.h:40
Interaction group parameters for Hertz-Mindlin interactions.
Definition: HertzMindlinViscoInteraction.h:28
const int CMD_ADD_VTF
Definition: sublattice_cmd.h:112
Class for master part of a scalar field which is defined on all particles.
Definition: ParticleFieldMaster.h:36
double ks
Definition: RotThermBondedInteraction.h:51
void setWallNormal(const std::string &, const Vec3 &)
Definition: LatticeMaster.cpp:1243
void SetVerbose(int vl=7)
set verbose level - defaults to all
Definition: console.cpp:122
void addMesh2DIG(const ETriMeshIP &prms)
Definition: LatticeMaster.cpp:2944
const int CMD_ADD_VIF
Definition: sublattice_cmd.h:111
Interaction group parameters for CSoftBWallInteractionGroups.
Definition: SoftBWallInteractionGroup.h:32
void addBondedIG(const CBondedIGP &)
Definition: LatticeMaster.cpp:2240
Definition: RotThermFricInteraction.h:35
void performCheckPointsThroughMaster(const std::string &fileNamePrefix, int beginTime, int endTime, int timeInterval, int precision)
Definition: LatticeMaster.cpp:1699
std::pair< MeshNodeDataVector, MeshTriDataVector > TriMeshDataPair
Definition: LatticeMaster.h:128
virtual void issueCheckPointLoadingCmd(const std::string &)
Definition: CheckPointController.cpp:248
double x0
Definition: FractalFriction.h:40
command for getting mesh node reference list
Definition: GetRef_cmd.h:41
double mu
Definition: FrictionInteraction.h:39
std::vector< ParticleIdPair > ParticleIdPairVector
Definition: LatticeMaster.h:125
Definition: CheckPointable.cpp:17
int m_mask
Definition: BTriMeshIP.h:66
void visitParticles(const IdVector &particleIdVector, TmplVisitor &visitor)
Definition: LatticeMaster.hpp:228
double m_E
Definition: HertzianViscoElasticFrictionInteraction.h:50
CheckPointController * m_pSnapShotController
Definition: LatticeMaster.h:134
void addTriMesh(const std::string &meshName, const std::string &fileName)
Definition: LatticeMaster.cpp:3116
double mu
Definition: HertzianViscoElasticFrictionInteraction.h:52
const int CMD_ADD_STF
Definition: sublattice_cmd.h:113
void appendGapBuildPrms(const MeshGapBuildPrms &buildPrms)
Definition: LatticeMaster.cpp:2977
void addVectorParticleSaveField(const std::string &, const std::string &, const std::string &, int, int, int)
Definition: LatticeMaster.cpp:1518
std::vector< int > ConnIdVector
Definition: LatticeMaster.h:138
void appendData(std::ostream &oStream)
Definition: Timer.cpp:270
const int CMD_ADDCAPPEDBONDEDIG
Definition: sublattice_cmd.h:74
void searchNeighbors(bool)
Definition: LatticeMaster.cpp:1328
bool scaling
Definition: RotFricInteraction.h:77
double kt
Definition: RotThermBondedInteraction.h:51
Definition: MeshData.h:40
std::string m_timingFileName
Definition: LatticeMaster.h:131
const int CMD_ADDSIG
Definition: sublattice_cmd.h:38
double y0
Definition: FractalFriction.h:40
double kb
Definition: RotThermBondedInteraction.h:51
Vec3 m_init_max_pt
Definition: LatticeMaster.h:169
const int CMD_CALC
Definition: sublattice_cmd.h:18
Definition: LatticeMaster.cpp:2438
void setNumSteps(int s)
Definition: LatticeMaster.cpp:180
double m_kr
Definition: RotElasticInteraction.h:31
Console & XDebug()
set verbose level of next message to "xdg"
Definition: BTriMeshIP.h:63
double k
Definition: FrictionInteraction.h:38
vector< AFieldMaster * > m_save_fields
Definition: LatticeMaster.h:140
MPI_Group m_mpi_local_group
Definition: LatticeMaster.h:164
MpiWTimers * m_pTimers
Definition: LatticeMaster.h:132
const int CMD_GETWALLPOS
Definition: sublattice_cmd.h:84
bool m_first_time
Definition: LatticeMaster.h:156
const int CMD_SEND_FIELDS
Definition: sublattice_cmd.h:109
virtual void performCheckPoint(int currentTime)
Definition: CheckPointController.cpp:90
const int CMD_ADDEWALLIG
Definition: sublattice_cmd.h:29
Definition: CheckPointInfo.h:30
Definition: RotThermBondedInteraction.h:35
int findParticleNearestTo(const Vec3 &pos)
Definition: LatticeMaster.cpp:983
bool meanR_scaling
Definition: RotFricInteraction.h:79
double m_k
Definition: ElasticInteraction.h:28
void setVisc(double v)
Definition: DampingIGP.h:50
const esys::lsm::CLatticeParam::ProcessDims & getProcessDims() const
Definition: LatticeMaster.cpp:301
double dt
Definition: HertzMindlinInteraction.h:50
void broadcast_cont_packed(const T &)
Definition: comm_coll.hpp:85
void appendTypeAndName(const TmplData &namedWithType)
Definition: BroadCast_cmd.hpp:20
std::vector< Vec3 > Vec3Vector
Definition: GeometryInfo.h:27
const int CMD_ADDTRIMESHIG
Definition: sublattice_cmd.h:55
double m_A
Definition: HertzianViscoElasticInteraction.h:27
const int CMD_GETSPHEREBODYFORCE
Definition: sublattice_cmd.h:98
int tag
Definition: RotThermBondedInteraction.h:54
std::string toString(const TmplData &data)
Definition: StringUtil.h:128
void readAndDistributeTriMesh(const std::string &, const std::string &, int)
Definition: LatticeMaster.cpp:3145
Master part of a scalar field which is defined on the triangles in a given triangle mesh.
Definition: ScalarTriangleFieldMaster.h:32
SIGCommand(const MpiRankAndComm &globalRankAndComm)
Definition: LatticeMaster.cpp:3329
const std::string & getName() const
Definition: BTriMeshIP.cpp:48
Definition: BMesh2DIP.h:17
Console & Warning()
set verbose level of next message to "wrn"
void addScalarParticleSaveField(const std::string &, const std::string &, const std::string &, int, int, int)
field saving functions
Definition: LatticeMaster.cpp:1399
const int CMD_ADDROTBONDEDIG
Definition: sublattice_cmd.h:52
void init()
Definition: LatticeMaster.cpp:136
const int CMD_UPDATE
Definition: sublattice_cmd.h:21
void addRotBondedIG(int, const std::string &, double, double, double, double, double, double, double, double, bool, bool, double)
Definition: LatticeMaster.cpp:2332
void translateMeshBy(const std::string &, const Vec3 &)
Definition: LatticeMaster.cpp:937
double dy
origin and grid spacing of the array
Definition: FractalFriction.h:40
const int CMD_PERFORMTIMING
Definition: sublattice_cmd.h:50
double k
Definition: FractalFriction.h:35
double k_s
Definition: FrictionInteraction.h:40
EdgeIterator & getEdgeIterator()
Definition: Mesh2DReader.cpp:130
void addPreTimeStepRunnable(esys::lsm::Runnable &runnable)
Definition: LatticeMaster.cpp:2029
void updateInteractions()
Definition: LatticeMaster.cpp:1376
void setParticleVel(int, const Vec3 &)
Definition: LatticeMaster.cpp:1125
void moveSingleNodeBy(const std::string &, int, const Vec3 &)
Definition: LatticeMaster.cpp:896
void addTaggedVectorParticleSaveFieldWT(const std::string &, const std::string &, const std::string &, int, int, int, int, int, const MaxTrigParams &)
Definition: LatticeMaster.cpp:1607
const int CMD_SETVERBOSITY
Definition: sublattice_cmd.h:93
void addSingleIG(const esys::lsm::GravityIGP &gravityIGP)
Definition: LatticeMaster.cpp:3347
void addPostTimeStepRunnable(esys::lsm::Runnable &runnable)
Definition: LatticeMaster.cpp:2034
Class for master part of a vector field which is defined on all particles.
Definition: ParticleFieldMaster.h:69
Definition: GeometryInfo.h:34
void applyForceToWall(const std::string &, const Vec3 &)
Definition: LatticeMaster.cpp:1262
void setParticleNonDynamic(int)
Definition: LatticeMaster.cpp:1073
void appendIGP(const AIGParam &prms)
Definition: LatticeMaster.cpp:2652
void run()
Definition: LatticeMaster.cpp:2195
double m_kr
Definition: RotThermElasticInteraction.h:35
DampingCommand(const MpiRankAndComm &globalRankAndComm)
Definition: LatticeMaster.cpp:3425
void addDamping(const CDampingIGP &dampingIGP)
Definition: LatticeMaster.cpp:3431
Class for sending commands from the LatticeMaster to the SubLatticeControler.
Definition: mpicmdbuf.h:30
double m_total_time
Definition: LatticeMaster.h:152
const int CMD_WVEL
Definition: sublattice_cmd.h:49
const int CMD_WFORCE
Definition: sublattice_cmd.h:46
bool hasNext() const
Definition: IterativeReader.hpp:31
bool m_bbx_has_been_set
Definition: LatticeMaster.h:144
const int CMD_DO2DCALCULATIONS
Definition: sublattice_cmd.h:58
void visitMesh2dNodeReferences(const string &meshName, TmplVisitor &visitor)
Definition: LatticeMaster.hpp:87
const int CMD_PSETNR
Definition: sublattice_cmd.h:61
double diffusivity
Definition: RotThermBondedInteraction.h:53
virtual void broadcast(int)
Definition: mpivbuf.cpp:251
virtual void clear()
Definition: mpivbuf.h:53
double m_nu
Definition: HertzianViscoElasticFrictionInteraction.h:51
MPI_Comm m_global_comm
Definition: LatticeMaster.h:163
void setGeometryInfo(const esys::lsm::GeometryInfo &geoInfo)
Definition: CheckPointController.cpp:403
int ny
array size
Definition: FractalFriction.h:41
virtual std::string getTypeString() const
Definition: LocalDampingIGP.h:50
const int CMD_GETPARTICLEPOSN
Definition: sublattice_cmd.h:65
Class for master part of a scalar field which is defined on all particles.
Definition: InteractionFieldMaster.h:38
void setupWorkers(int numWorkers)
Definition: LatticeMaster.cpp:145
Interaction group parameters for CESphereBodyInteractionGroups.
Definition: ESphereBodyInteractionGroup.h:33
bool m_isInitialized
Definition: LatticeMaster.h:155
double getNormalK() const
Definition: SoftBWallInteractionGroup.h:39
Interaction group parameters for Hertzian viscoelastic interactions with friction.
Definition: HertzianViscoElasticFrictionInteraction.h:28
void moveSphereBodyBy(const std::string &, const Vec3 &)
Definition: LatticeMaster.cpp:1224
int m_global_rank
Definition: LatticeMaster.h:148
void broadcast()
Definition: BroadCast_cmd.cpp:43
void saveTimingDataToFile(const std::string &fileNamePrefix)
Definition: LatticeMaster.cpp:187
double k
Definition: AdhesiveFriction.h:31
const int CMD_PTVEL
Definition: sublattice_cmd.h:86
std::vector< bool > BoolVector
Definition: BlockGenerator.h:28
void pause(const std::string &name)
Definition: Timer.cpp:211
void initializeConsole(const string &, int)
Definition: LatticeMaster.cpp:3624
std::string m_particle_type
Definition: LatticeMaster.h:157
void setNumTimeSteps(int numTimeSteps)
Definition: CheckPointController.cpp:418
bool isIdenticalGeometry(const GeometryInfo &) const
Definition: GeometryInfo.cpp:404
void stop(const std::string &name, bool elapseIsStopMinusStart=false)
Definition: Timer.cpp:191
double k
Definition: RotThermFricInteraction.h:48
int tag
Definition: MeshData2D.h:47
void setParticleAngVel(int, const Vec3 &)
Definition: LatticeMaster.cpp:1186
const int CMD_TRANSLATEMESHBY
Definition: sublattice_cmd.h:82
void addVectorTriangleSaveField(const string &, const string &, const string &, const string &, int, int, int)
Definition: LatticeMaster.cpp:1865
const int CMD_INITCONSOLE
Definition: sublattice_cmd.h:100
esys::lsm::IntVector m_particle_dimensions
Definition: LatticeMaster.h:170
double dt
Definition: AdhesiveFriction.h:34
std::vector< esys::lsm::Runnable * > RunnableVector
Definition: LatticeMaster.h:123
Interaction group parameters for Hertzian elastic interactions.
Definition: HertzianElasticInteraction.h:25
boost::python::object iter(const boost::python::object &pyOb)
Definition: Util.h:25
void visitMesh2dEdgeStress(const string &meshName, TmplVisitor &visitor)
Definition: LatticeMaster.hpp:112
int m_global_size
Definition: LatticeMaster.h:149
void setConsoleFilename(const string &)
Definition: LatticeMaster.cpp:3594
void moveParticleTo(int particleTag, const Vec3 &posn)
Definition: LatticeMaster.cpp:841
void append(const TmplData &basicTypeData)
Definition: BroadCast_cmd.hpp:27
double brk
Definition: BTriMeshIP.h:22
Abstract base class for InteractionGroup parameters.
Definition: IGParam.h:29
const int CMD_PSETNT
Definition: sublattice_cmd.h:88
const int CMD_XCHANGE
Definition: sublattice_cmd.h:19
const int CMD_FINDNEARESTPARTICLE
Definition: sublattice_cmd.h:64
bool checkNeighbors()
Definition: LatticeMaster.cpp:1351
void addVectorInteractionSaveField(const std::string &, const std::string &, const std::string &, const std::string &, const std::string &, int, int, int, bool checked=false)
Definition: LatticeMaster.cpp:1932
void setVRef(const Vec3 V)
Definition: DampingIGP.h:48
Interaction group parameters for CRotElasticInteractionGroups.
Definition: RotElasticInteraction.h:25
void addBondedMesh2DIG(const BMesh2DIP &, const MeshTagBuildPrms &)
Definition: LatticeMaster.cpp:3042
std::vector< int > IdVector
Definition: LatticeMaster.h:588
Vec3 getParticlePosn(int particleId)
Definition: LatticeMaster.cpp:1033
const int CMD_ADDPIG
Definition: sublattice_cmd.h:32
abstract base class for communicator
Definition: comm.h:47
double dt
Definition: RotThermFricInteraction.h:52
double max_shForce
Definition: RotThermBondedInteraction.h:52
virtual std::string getTypeString() const
Definition: BodyForceGroup.h:62
void packInto(const TmplPackable &)
Definition: BroadCast_cmd.hpp:14
double m_dt
Definition: LatticeMaster.h:154
void wait(const std::string &barrierName)
Definition: BroadCast_cmd.cpp:38
void particlesMinMax(const TmplParticle &particle)
Definition: LatticeMaster.hpp:402
bool m_scaling
Definition: BondedInteraction.h:54
Definition: TriggeredVectorParticleFieldMaster.h:27
Master part of a vector field which is defined on the triangles in a given triangle mesh.
Definition: VectorTriangleFieldMaster.h:33
std::string getWallName() const
Definition: brokenEWallInteractionGroup.h:40
const int CMD_GETWALLFORCE
Definition: sublattice_cmd.h:90
Interaction parameters for adhesive frictional interaction.
Definition: AdhesiveFriction.h:22
const int CMD_ADDSHORTBONDEDIG
Definition: sublattice_cmd.h:73
double dx
Definition: FractalFriction.h:40
esys::lsm::CLatticeParam::ProcessDims m_processDims
Definition: LatticeMaster.h:135
void setSpatialDomain(const Vec3 &minBBoxPt, const Vec3 &maxBBoxPt)
Definition: LatticeMaster.cpp:324
void runPostRunnables()
Definition: LatticeMaster.cpp:2055
const int CMD_ADDSPHEREBODY
Definition: sublattice_cmd.h:95
Definition: LatticeMaster.cpp:2955
void addTriMeshIG(const ETriMeshIP &prms)
Definition: LatticeMaster.cpp:2917
Definition: Contact.h:101
void read(std::istream &iStream)
Definition: CheckPointInfo.cpp:164
bool m_scaling
Definition: FrictionInteraction.h:42
void readGeometry(const std::string &fileName)
Definition: LatticeMaster.hpp:29
void addConnections(TmplIterator &it)
Definition: LatticeMaster.hpp:344
void moveWallBy(const std::string &, const Vec3 &)
Definition: LatticeMaster.cpp:1205
void setProcessDims(const esys::lsm::CLatticeParam::ProcessDims &dims)
Definition: LatticeMaster.cpp:296
int tag
Definition: BondedInteraction.h:53
Definition: LatticeMaster.cpp:2906
void moveTaggedParticlesBy(int particleTag, const Vec3 &displacement)
Definition: LatticeMaster.cpp:861
RunnableVector m_postRunnableVector
Definition: LatticeMaster.h:160
void clear()
Definition: Timer.cpp:205
void addShortBondedIG(int, const std::string &, double, double)
Definition: LatticeMaster.cpp:2306
void setTimeStepSize(double timeStepSize)
Definition: CheckPointController.cpp:428
void SetBuffered(unsigned int)
set buffer length and buffered mode on/off
Definition: console.cpp:109
void addTaggedVectorParticleSaveField(const std::string &, const std::string &, const std::string &, int, int, int, int, int)
Definition: LatticeMaster.cpp:1548
void loadCheckPointData(const std::string &checkPointFileName)
Definition: LatticeMaster.cpp:491
Definition: MaxTrigger.h:25
Interaction group parameters for Hertz-Mindlin interactions.
Definition: HertzMindlinInteraction.h:28
double k
Spring constant.
Definition: BondedInteraction.h:51
const int CMD_ADDTRIMESH
Definition: sublattice_cmd.h:59
void broadcast_cont(const T &)
Definition: comm_coll.hpp:46
void addMesh2D(const std::string &, const std::string &, int)
Definition: LatticeMaster.cpp:3265
esys::lsm::IntVector getParticleDimensions()
Definition: LatticeMaster.h:485
double k_s
Definition: RotFricInteraction.h:75
Interaction parameters for frictional interaction with a fractal distribution of the coefficient of f...
Definition: FractalFriction.h:26
Interaction group parameters for CLocalDampingGroup.
Definition: LocalDampingIGP.h:28
void addTaggedWallIG(const CEWallIGP &, int, int)
Definition: LatticeMaster.cpp:654
const int CMD_INITLATTICE
Definition: sublattice_cmd.h:27
Vec3 m_init_min_pt
Definition: LatticeMaster.h:168
const int CMD_ADD_VPF
Definition: sublattice_cmd.h:108
virtual int pop_int(int)
Definition: mpisgbuf.cpp:143
void appendIGP(const AIGParam &prms)
Definition: LatticeMaster.cpp:2586
Definition: IterativeReader.h:29
void moveSingleParticleTo(int particleId, const Vec3 &posn)
Definition: LatticeMaster.cpp:876
const int CMD_WNORM
Definition: sublattice_cmd.h:89
double mu
Definition: HertzMindlinViscoInteraction.h:50
Class for master part of a vector field which is defined on all particles.
Definition: VectorInteractionFieldMaster.h:38
data describing one Edge in a 2D "mesh"
Definition: MeshData2D.h:46
double dt
Definition: FractalFriction.h:38
void createTriMesh(const std::string &meshName, const MeshNodeDataVector &mndVector, const MeshTriDataVector &mtdVector)
Definition: LatticeMaster.cpp:3231
void addScalarInteractionSaveField(const std::string &, const std::string &, const std::string &, const std::string &, const std::string &, int, int, int, bool checked=false)
Definition: LatticeMaster.cpp:1768
double k_s
Definition: HertzianViscoElasticFrictionInteraction.h:53
void addTaggedScalarInteractionSaveField(const std::string &, const std::string &, const std::string &, const std::string &, const std::string &, int, int, int, int, int, bool)
Definition: LatticeMaster.cpp:1966
Class for master part of the distribution/histogram of a scalar field which is defined on particles...
Definition: ScalarParticleDistributionMaster.h:32
int getTimeStep() const
Definition: CheckPointInfo.cpp:154
const int CMD_PMOVETAGGEDBY
Definition: sublattice_cmd.h:83
double m_E
Definition: HertzMindlinInteraction.h:47
Vec3Vector getBBoxCorners() const
Definition: GeometryInfo.cpp:287
double k
Definition: ETriMeshIP.h:66
Definition: RankAndComm.h:20
double rbreak
Breaking strain.
Definition: BondedInteraction.h:52
void setTaggedParticleVel(int tag, const Vec3 &)
Definition: LatticeMaster.cpp:1145
int getTag() const
Definition: ViscWallIG.h:42
Definition: BTriMeshIP.h:19
double mu
Definition: AdhesiveFriction.h:32
int nx
Definition: FractalFriction.h:41
Master part of vector field on walls.
Definition: WallFieldMaster.h:37
const int CMD_ADDROTTHERMBONDEDIG
Definition: sublattice_cmd.h:91
int getNumWorkerProcesses() const
Definition: LatticeMaster.cpp:175
int getSteps() const
Definition: LatticeMaster.h:269
Definition: LatticeParam.h:30
void addRotThermBondedIG(const CRotThermBondedIGP &prms)
Definition: LatticeMaster.cpp:2380
void visitParticlesOfType(const IdVector &particleIdVector, TmplVisitor &visitor)
Definition: LatticeMaster.hpp:185
void runOneStep()
Definition: LatticeMaster.cpp:2066
TriIterator & getTriIterator()
Definition: MeshReader.cpp:121
Definition: ABCDampingIGP.h:24
double m_COR
Definition: HertzMindlinViscoInteraction.h:51
void setVelocityOfWall(const std::string &, const Vec3 &)
Definition: LatticeMaster.cpp:1282
Vec3 getSphereBodyPosn(const std::string &)
Definition: LatticeMaster.cpp:778
Interaction group parameters for CBWallInteractionGroups.
Definition: ViscWallIG.h:33
const int CMD_ADDBONDEDTRIMESHIG
Definition: sublattice_cmd.h:60
void addSphereBodyIG(const CESphereBodyIGP &)
Definition: LatticeMaster.cpp:759
void gather(multimap< int, T > &)
Definition: comm_coll.hpp:273
const int CMD_ADDMESH2D
Definition: sublattice_cmd.h:62
boost::shared_ptr< double > mu
pointer to the array of friction coeff.
Definition: FractalFriction.h:39
Console console
Definition: console.cpp:25
void addTaggedScalarParticleSaveField(const std::string &, const std::string &, const std::string &, int, int, int, int, int)
Definition: LatticeMaster.cpp:1456
bool m_scaling
Definition: ElasticInteraction.h:29
Interaction group parameters for CDampingGroup.
Definition: DampingIGP.h:28
void getInitMinMaxPt(Vec3 &initMinPt, Vec3 &initMaxPt)
Definition: LatticeMaster.cpp:312
void addCappedBondedIG(int, const std::string &, double, double, double)
Definition: LatticeMaster.cpp:2272
MpiRankAndComm getGlobalRankAndComm() const
Definition: LatticeMaster.h:181
const int CMD_ADDDAMP
Definition: sublattice_cmd.h:35
RunnableVector m_preRunnableVector
Definition: LatticeMaster.h:159
int getTimeStep() const
Definition: LatticeMaster.h:197
bool m_scaling
Definition: RotElasticInteraction.h:32
double kr
Definition: RotThermBondedInteraction.h:51
int getNumSteps() const
Definition: LatticeMaster.h:268
const std::string & getMeshName() const
Definition: BTriMeshIP.cpp:38
double m_nu
Definition: HertzMindlinInteraction.h:48
double mu_d
Definition: RotThermFricInteraction.h:49
Interaction parameters for bonded interaction.
Definition: BondedInteraction.h:40
void start(const std::string &name)
Definition: Timer.cpp:186
double m_E
Definition: HertzianViscoElasticInteraction.h:28
const std::string & getName() const
Definition: IGParam.h:42
TaggedIGPCommand(const MpiRankAndComm &globalRankAndComm)
Definition: LatticeMaster.cpp:2648
double max_nForce
Definition: RotThermBondedInteraction.h:52
CheckPointController * m_pCheckPointController
Definition: LatticeMaster.h:133
double max_tMoment
Definition: RotThermBondedInteraction.h:52
RunnableVector & getPreTimeStepRunnableVector()
Definition: LatticeMaster.h:453
const std::string & getParticleType() const
Definition: LatticeMaster.h:358
const int CMD_SETCONSOLEBUFF
Definition: sublattice_cmd.h:102
void moveTaggedNodesBy(const std::string &, int, const Vec3 &)
Definition: LatticeMaster.cpp:917
const int CMD_ADDWALL
Definition: sublattice_cmd.h:69
double max_bMoment
Definition: RotThermBondedInteraction.h:52
void appendTagBuildPrms(const MeshTagBuildPrms &)
Definition: BMesh2D_cmd.cpp:34
const int CMD_PVEL
Definition: sublattice_cmd.h:36
void performCheckPoints(const std::string &fileNamePrefix, int beginTime, int endTime, int timeInterval, int precision)
Definition: LatticeMaster.cpp:1669
Definition: LatticeMaster.cpp:2932
void addVectorWallField(const string &, const string &, vector< string >, const string &, int, int, int)
Definition: LatticeMaster.cpp:1635
Vec3 getWallPosn(const std::string &)
Definition: LatticeMaster.cpp:675
const int CMD_ADDBONDEDIG
Definition: sublattice_cmd.h:30
double dt
Definition: RotFricInteraction.h:76
void wait(const char *)
Definition: mpibarrier.cpp:32
const int CMD_SETTIMESTEPSIZE
Definition: sublattice_cmd.h:72
const int CMD_ADDBBWALLIG
Definition: sublattice_cmd.h:71
std::vector< MeshNodeData > MeshNodeDataVector
Definition: LatticeMaster.h:126
Definition: LatticeMaster.cpp:2580
double dt
Definition: HertzMindlinViscoInteraction.h:52
void set_is2d(bool do2d)
Definition: CheckPointController.cpp:382
void addScalarHistoryInteractionSaveField(const std::string &, const std::string &, const std::string &, const std::string &, const std::string &, int, int, int)
Definition: LatticeMaster.cpp:1833
double mu
Definition: HertzMindlinInteraction.h:49
const int CMD_PTAG
Definition: sublattice_cmd.h:47
void appendGravityIGP(const esys::lsm::GravityIGP &gravityIGP)
Definition: LatticeMaster.cpp:3334
const int CMD_ADDTAGPIG
Definition: sublattice_cmd.h:75
const int CMD_PANGVEL
Definition: sublattice_cmd.h:68
const int CMD_SAVETIMINGDATA
Definition: sublattice_cmd.h:51
CLatticeMaster()
Definition: LatticeMaster.cpp:85
Lattice Solid Model namespace.
Definition: CheckPointable.cpp:19
void appendMesh2DParam(const BMesh2DIP &)
Definition: BMesh2D_cmd.cpp:20