Package esys :: Package lsm :: Package benchmarks :: Module Gravity :: Class GravitySim
[hide private]
[frames] | no frames]

Class GravitySim

 object --+            
          |            
??.instance --+        
              |        
   LsmPy.LsmMpi --+    
                  |    
      Util.BenchSim --+
                      |
                     GravitySim

Instance Methods [hide private]
 
__init__(self, numTimeSteps=10000, numParticles=1000, spawnExe='', spawnArgList=None)
Spawns MPI worker processes for use in a cartesian grid decomposition of the particle domain.
 
getSimTime(self)
 
createParticles(self)
Creates a regularly packed block of particles within the model.
 
createGravity(self)
Creates the gravitational body-force within the model.
 
runSimulation(self)

Inherited from Util.BenchSim: doTimedRun, getRunTime

Inherited from LsmPy.LsmMpi: __reduce__, addPostTimeStepRunnable, addPreTimeStepRunnable, applyForceToWall, createCheckPointer, createCheckPointerWriteThroughMaster, createConnections, createDamping, createExclusion, createFieldSaver, createInteractionGroup, createInteractionGroupTagged, createParticle, createRestartCheckPointer, createTriMesh, createWall, exit, findClosestParticle, force2dComputations, getLsmVersion, getNumParticles, getNumTimeSteps, getNumWorkerProcesses, getParticleList, getParticlePosn, getParticleType, getTimeStep, getTimeStepSize, getWallForce, getWallPosition, getWorkerSpawnCmd, initNeighbourSearch, initVerletModel, loadCheckPoint, moveParticleTo, moveSingleMeshNodeBy, moveTaggedParticlesBy, moveWallBy, readGeometry, readMesh, readMesh2D, removeInteractionGroup, run, runTimeStep, setNumTimeSteps, setParticleAngularVelocity, setParticleDensity, setParticleNonDynamic, setParticleNonRotational, setParticleVelocity, setSlaveTimingFileName, setSpatialDomain, setTaggedParticleVelocity, setTimeStepSize, setTimingFileName, setVelocityOfWall, setVerbosity, setWallNormal, tagParticleNearestTo, translateMeshBy, visitNodeRefs2d, visitParticlesWithId, visitRefStressPairs2d

Inherited from unreachable.instance: __new__

Inherited from object: __delattr__, __format__, __getattribute__, __hash__, __reduce_ex__, __repr__, __setattr__, __sizeof__, __str__, __subclasshook__

Class Variables [hide private]

Inherited from LsmPy.LsmMpi: __instance_size__

Properties [hide private]

Inherited from object: __class__

Method Details [hide private]

__init__(self, numTimeSteps=10000, numParticles=1000, spawnExe='', spawnArgList=None)
(Constructor)

 

Spawns MPI worker processes for use in a cartesian grid decomposition of the particle domain.

Parameters:
  • numWorkerProcesses - The number of spawned MPI worker processes.
  • mpiDimList - List of 3 elements specifying the decomposition of the simulation domain among worker processes. For example, [3,2,4] indicates a rectangular grid where the x-axis of the domain is divided into 3, the y-axis is divided in 2 and the z-axis is divided into 4. A zero value in the list indicates that dimension discretization is chosen according to the numWorkerProcesses argument, for example, (numWorkerProcesses=16, mpiDimList=[2,2,0]) implies that the z-axis of the will be divided into 4 parts (ie four two-by-two cells). Particles in each domain cell are handled by a MPI worker process.
  • spawnExe - Command used to spawn MPI worker processes.
  • spawnArgList - List of command-line argument strings.
Overrides: object.__init__
(inherited documentation)

createParticles(self)

 

Creates a regularly packed block of particles within the model.

Parameters:
  • iterable - An object supporting the iterator protocol (ie supports iter(iterable) which forms a sequence of esys.lsm.geometry.SimpleSphere objects. A model particle is created for each element object in the sequence.
Overrides: LsmPy.LsmMpi.createParticles

createGravity(self)

 

Creates the gravitational body-force within the model.

Parameters:
  • prms - Parameters specifying gravitational acceleration.
Overrides: LsmPy.LsmMpi.createGravity