|
This class is used to extract statistical data from MD simulations. More...
#include <StatisticsVector.h>
Public Member Functions | |
void | constructor () |
this is the actual constructor, sets up all basic things More... | |
void | constructor (std::string name) |
StatisticsVector () | |
Basic constructor only calls constructor() More... | |
StatisticsVector (std::string name) | |
StatisticsVector (StatisticsVector &other) | |
Copy constructor. More... | |
StatisticsVector (int argc, char *argv[]) | |
Advanced constructor that accepts arguments from the command line. More... | |
void | readStatArguments (int argc, char *argv[]) |
std::string | printStat () |
Outputs member variable values to a std::string. More... | |
void | set_statType () |
void | writeOutputFiles () |
Writes simulation data to all the main Mercury files: .data, .ene, .fstat, .xballs and .restart (see the Mercury website for more details regarding these files). More... | |
void | print_help () |
void | setNX (int new_) |
void | set_hx (Mdouble hx) |
void | setNY (int new_) |
void | set_hy (Mdouble hy) |
void | setNZ (int new_) |
void | set_hz (Mdouble hz) |
void | setN (int n) |
void | set_h (Mdouble h) |
int | getNX () |
int | getNY () |
int | getNZ () |
void | setCGTimeMin (Mdouble t) |
void | setTimeMaxStat (Mdouble t) |
void | setCGTimeAveragingInterval (Mdouble t) |
Mdouble | getCGTimeMin () |
Mdouble | getTimeMaxStat () |
Mdouble | getCGTimeAveragingInterval () |
bool | check_current_time_for_statistics () |
void | setCGShape (const char *new_) |
void | setCGShape (CG_TYPE new_) |
CG_TYPE | getCGShape () |
void | setN (int nx_, int ny_, int nz_) |
void | getN (int &nx_, int &ny_, int &nz_) |
void | setCGWidth (Mdouble w) |
Set CG variables w2 and CG_invvolume. More... | |
void | setCGWidth2 (Mdouble new_) |
Set CG variables w2 and CG_invvolume. More... | |
Mdouble | getCGWidth () |
Mdouble | getCGWidthSquared () |
Mdouble | getCutoff () |
Mdouble | getCutoff2 () |
std::string | print_CG () |
Output coarse graining variables. More... | |
StatisticsPoint< T > | average (std::vector< StatisticsPoint< T > > &P) |
Output average of statistical variables. More... | |
virtual void | reset_statistics () |
Set all statistical variables to zero. More... | |
void | statistics_from_fstat_and_data () |
get StatisticsPoint More... | |
void | statistics_from_p3 () |
void | jump_p3c () |
void | setDoTimeAverage (bool new_) |
bool | getDoTimeAverage () |
void | setStressTypeForFixedParticles (int new_) |
int | getStressTypeForFixedParticles () |
void | set_infiniteStressForFixedParticles (bool new_) |
void | setMirrorAtDomainBoundary (Mdouble new_) |
Mdouble | getMirrorAtDomainBoundary () |
void | setDoVariance (bool new_) |
bool | getDoVariance () |
void | setDoGradient (bool new_) |
bool | getDoGradient () |
void | setSuperExact (bool new_) |
bool | getSuperExact () |
void | setDoIgnoreFixedParticles (bool new_) |
bool | getDoIgnoreFixedParticles () |
void | verbose () |
void | setVerbosityLevel (int new_) |
int | getVerbosityLevel () const |
void | setCGWidthalls (bool new_) |
bool | getCGWidthalls () |
void | setDoPeriodicWalls (bool new_) |
bool | getDoPeriodicWalls () |
void | setCGWidth_over_rmax (Mdouble new_) |
Mdouble | getCGWidth_over_rmax () |
void | setPositions () |
Set position of StatisticsPoint points and set variables to 0. More... | |
bool | readNextDataFile (unsigned int format) |
void | gather_force_statistics_from_fstat_and_data () |
void | gather_force_statistics_from_p3c (int version) |
void | gather_force_statistics_from_p3w (int version, std::vector< int > &index) |
void | evaluate_force_statistics (int wp=0) |
void | evaluate_wall_force_statistics (Vec3D P, int wp=0) |
void | jump_fstat () |
void | initialiseStatistics () |
Initializes statistics, i.e. setting w2, setting the grid and writing the header lines in the .stat file. More... | |
void | outputStatistics () |
Calculates statistics for Particles (i.e. not collisions) More... | |
void | gatherContactStatistics (unsigned int index1, int index2, Vec3D Contact, Mdouble delta, Mdouble ctheta, Mdouble fdotn, Mdouble fdott, Vec3D P1_P2_normal_, Vec3D P1_P2_tangential) |
Calculates statistics for one collision (can be any kind of collision) More... | |
void | processStatistics (bool usethese) |
Processes all gathered statistics and resets them afterwards. (Processing means either calculating time averages or writing out statistics) More... | |
void | finishStatistics () |
Finish all statistics (i.e. write out final data) More... | |
void | write_statistics () |
Writes regular statistics. More... | |
void | write_time_average_statistics () |
Writes out time averaged statistics. More... | |
void | evaluate_particle_statistics (std::vector< BaseParticle * >::iterator P, int wp=0) |
Calculates statistics for a single Particle. More... | |
std::vector< StatisticsPoint< T > > | getCGPoints () |
Mdouble | getXMinStat () |
Functions to acces and change the domain of statistics. More... | |
Mdouble | getYMinStat () |
Mdouble | getZMinStat () |
Mdouble | getXMaxStat () |
Mdouble | getYMaxStat () |
Mdouble | getZMaxStat () |
void | setXMinStat (Mdouble xMinStat_) |
void | setYMinStat (Mdouble yMinStat_) |
void | setZMinStat (Mdouble zMinStat_) |
void | setXMaxStat (Mdouble xMaxStat_) |
void | setYMaxStat (Mdouble yMaxStat_) |
void | setZMaxStat (Mdouble zMaxStat_) |
int | getNTimeAverage () |
Mdouble | setInfinitelyLongDistance () |
void | set_Polynomial (std::vector< Mdouble > new_coefficients, unsigned int new_dim) |
void | set_Polynomial (Mdouble *new_coefficients, unsigned int num_coeff, unsigned int new_dim) |
void | setPolynomialName (const char *new_name) |
std::string | getPolynomialName () |
void | setDoDoublePoints (bool new_) |
bool | getDoDoublePoints () |
void | setNTimeAverageReset (int new_) |
bool | getNTimeAverageReset () |
void | set_rmin (Mdouble new_) |
void | set_rmax (Mdouble new_) |
void | set_hmax (Mdouble new_) |
Mdouble | evaluatePolynomial (Mdouble r) |
Mdouble | evaluatePolynomialGradient (Mdouble r) |
Mdouble | evaluateIntegral (Mdouble n1, Mdouble n2, Mdouble t) |
unsigned int | getStepSize () const |
void | setStepSize (unsigned int stepSize) |
void | setIndSpecies (unsigned int indSpecies) |
Public Member Functions inherited from DPMBase | |
void | constructor () |
A function which initialises the member variables to default values, so that the problem can be solved off the shelf; sets up a basic two dimensional problem which can be solved off the shelf. It is called in the constructor DPMBase(). More... | |
DPMBase () | |
Constructor that calls the "void constructor()". More... | |
DPMBase (const DPMBase &other) | |
Copy constructor type-2. More... | |
virtual | ~DPMBase () |
virtual destructor More... | |
void | autoNumber () |
The autoNumber() function calls three functions: setRunNumber(), readRunNumberFromFile() and incrementRunNumberInFile(). More... | |
std::vector< int > | get1DParametersFromRunNumber (int size_x) const |
This turns a counter into 1 index, which is a useful feature for performing 1D parameter study. The index run from 1:size_x, while the study number starts at 0 (initially the counter=1 in COUNTER_DONOTDEL) More... | |
std::vector< int > | get2DParametersFromRunNumber (int size_x, int size_y) const |
This turns a counter into 2 indices which is a very useful feature for performing a 2D study. The indices run from 1:size_x and 1:size_y, while the study number starts at 0 ( initially the counter=1 in COUNTER_DONOTDEL) More... | |
std::vector< int > | get3DParametersFromRunNumber (int size_x, int size_y, int size_z) const |
This turns a counter into 3 indices, which is a useful feature for performing a 3D parameter study. The indices run from 1:size_x, 1:size_y and 1:size_z, while the study number starts at 0 ( initially the counter=1 in COUNTER_DONOTDEL) More... | |
int | launchNewRun (const char *name, bool quick=false) |
This launches a code from within this code. Please pass the name of the code to run. More... | |
void | setRunNumber (int runNumber) |
This sets the counter/Run number, overriding the defaults. More... | |
int | getRunNumber () const |
This returns the current value of the counter (runNumber_) More... | |
virtual void | decompose () |
Sends particles from processorId to the root processor. More... | |
void | solve () |
The work horse of the code. More... | |
void | initialiseSolve () |
Beginning of the solve routine, before time stepping. More... | |
void | finaliseSolve () |
End of the solve routine, after time stepping. More... | |
virtual void | computeOneTimeStep () |
Performs everything needed for one time step, used in the time-loop of solve(). More... | |
void | checkSettings () |
Checks if the essentials are set properly to go ahead with solving the problem. More... | |
void | forceWriteOutputFiles () |
Writes output files immediately, even if the current time step was not meant to be written. Also resets the last saved time step. More... | |
void | solve (int argc, char *argv[]) |
The work horse of the code. Can handle flags from the command line. More... | |
virtual void | setupInitialConditions () |
This function allows to set the initial conditions for our problem to be solved, by default particle locations are randomly set. Remember particle properties must also be defined here. More... | |
virtual void | writeXBallsScript () const |
This writes a script which can be used to load the xballs problem to display the data just generated. More... | |
virtual Mdouble | getInfo (const BaseParticle &P) const |
A virtual function that returns some user-specified information about a particle. More... | |
ParticleVtkWriter * | getVtkWriter () const |
virtual void | writeRestartFile () |
Stores all the particle data for current save time step to a "restart" file, which is a file simply intended to store all the information necessary to "restart" a simulation from a given time step (see also MercuryDPM.org for more information on restart files). More... | |
void | writeDataFile () |
void | writeEneFile () |
void | writeFStatFile () |
void | fillDomainWithParticles (unsigned N=50) |
bool | readRestartFile (ReadOptions opt=ReadOptions::ReadAll) |
Reads all the particle data corresponding to a given, existing . restart file (for more details regarding restart files, refer to the training materials on the MercuryDPM website).Returns true if it is successful, false otherwise. More... | |
int | readRestartFile (std::string fileName, ReadOptions opt=ReadOptions::ReadAll) |
The same as readRestartFile(bool), but also reads all the particle data corresponding to the current saved time step. More... | |
virtual void | write (std::ostream &os, bool writeAllParticles=true) const |
virtual void | read (std::istream &is, ReadOptions opt=ReadOptions::ReadAll) |
Reads all data from a restart file, e.g. domain data and particle data. More... | |
virtual BaseWall * | readUserDefinedWall (const std::string &type) const |
Allows you to read in a wall defined in a Driver directory; see USER/Luca/ScrewFiller. More... | |
virtual void | readOld (std::istream &is) |
Reads all data from a restart file, e.g. domain data and particle data; old version. More... | |
bool | readDataFile (std::string fileName="", unsigned int format=0) |
This allows particle data to be reloaded from data files. More... | |
bool | readParAndIniFiles (std::string fileName) |
Allows the user to read par.ini files (useful to read files produced by the MDCLR simulation code - external to MercuryDPM) More... | |
bool | readNextDataFile (unsigned int format=0) |
Reads the next data file with default format=0. However, one can modify the format based on whether the particle data corresponds to 3D or 2D data- see Visualising data in xballs. More... | |
void | readNextFStatFile () |
Reads the next fstat file. More... | |
bool | findNextExistingDataFile (Mdouble tMin, bool verbose=true) |
Finds and opens the next data file, if such a file exists. More... | |
bool | readArguments (int argc, char *argv[]) |
Can interpret main function input arguments that are passed by the driver codes. More... | |
virtual bool | readNextArgument (int &i, int argc, char *argv[]) |
Interprets the i^th command-line argument. More... | |
virtual bool | checkParticleForInteraction (const BaseParticle &P) |
Checks whether a particle P has any interaction with walls or other particles. More... | |
virtual bool | checkParticleForInteractionLocal (const BaseParticle &P) |
Checks if a particle P has any interaction with walls or other particles in the local domain. More... | |
bool | checkParticleForInteractionLocalPeriodic (const BaseParticle &P) |
void | readSpeciesFromDataFile (bool read=true) |
void | importParticlesAs (ParticleHandler &particleHandler, InteractionHandler &interactionHandler, const ParticleSpecies *species) |
Copies particles, interactions assigning species from a local simulation to a global one. Useful for the creation of a cluster. More... | |
MERCURYDPM_DEPRECATED File & | getDataFile () |
The non const version. Allows one to edit the File::dataFile. More... | |
MERCURYDPM_DEPRECATED File & | getEneFile () |
The non const version. Allows to edit the File::eneFile. More... | |
MERCURYDPM_DEPRECATED File & | getFStatFile () |
The non const version. Allows to edit the File::fStatFile. More... | |
MERCURYDPM_DEPRECATED File & | getRestartFile () |
The non const version. Allows to edit the File::restartFile. More... | |
MERCURYDPM_DEPRECATED File & | getStatFile () |
The non const version. Allows to edit the File::statFile. More... | |
File & | getInteractionFile () |
Return a reference to the file InteractionsFile. More... | |
MERCURYDPM_DEPRECATED const File & | getDataFile () const |
The const version. Does not allow for any editing of the File::dataFile. More... | |
MERCURYDPM_DEPRECATED const File & | getEneFile () const |
The const version. Does not allow for any editing of the File::eneFile. More... | |
MERCURYDPM_DEPRECATED const File & | getFStatFile () const |
The const version. Does not allow for any editing of the File::fStatFile. More... | |
MERCURYDPM_DEPRECATED const File & | getRestartFile () const |
The const version. Does not allow for any editing of the File::restartFile. More... | |
MERCURYDPM_DEPRECATED const File & | getStatFile () const |
The const version. Does not allow for any editing of the File::statFile. More... | |
const File & | getInteractionFile () const |
const std::string & | getName () const |
Returns the name of the file. Does not allow to change it though. More... | |
void | setName (const std::string &name) |
Allows to set the name of all the files (ene, data, fstat, restart, stat) More... | |
void | setName (const char *name) |
Calls setName(std::string) More... | |
void | setSaveCount (unsigned int saveCount) |
Sets File::saveCount_ for all files (ene, data, fstat, restart, stat) More... | |
void | setFileType (FileType fileType) |
Sets File::fileType_ for all files (ene, data, fstat, restart, stat) More... | |
void | setOpenMode (std::fstream::openmode openMode) |
Sets File::openMode_ for all files (ene, data, fstat, restart, stat) More... | |
void | resetFileCounter () |
Resets the file counter for each file i.e. for ene, data, fstat, restart, stat) More... | |
void | closeFiles () |
Closes all files (ene, data, fstat, restart, stat) that were opened to read or write. More... | |
void | setLastSavedTimeStep (unsigned int nextSavedTimeStep) |
Sets the next time step for all the files (ene, data, fstat, restart, stat) at which the data is to be written or saved. More... | |
Mdouble | getTime () const |
Returns the current simulation time. More... | |
Mdouble | getNextTime () const |
Returns the current simulation time. More... | |
unsigned int | getNumberOfTimeSteps () const |
Returns the current counter of time-steps, i.e. the number of time-steps that the simulation has undergone so far. More... | |
void | setTime (Mdouble time) |
Sets a new value for the current simulation time. More... | |
void | setTimeMax (Mdouble newTMax) |
Sets a new value for the maximum simulation duration. More... | |
Mdouble | getTimeMax () const |
Returns the maximum simulation duration. More... | |
void | setLogarithmicSaveCount (Mdouble logarithmicSaveCountBase) |
Sets File::logarithmicSaveCount_ for all files (ene, data, fstat, restart, stat) More... | |
void | setNToWrite (int nToWrite) |
set the number of elements to write to the screen More... | |
int | getNToWrite () const |
get the number of elements to write to the More... | |
void | setRotation (bool rotation) |
Sets whether particle rotation is enabled or disabled. More... | |
bool | getRotation () const |
Indicates whether particle rotation is enabled or disabled. More... | |
MERCURYDPM_DEPRECATED void | setWallsWriteVTK (FileType writeWallsVTK) |
Sets whether walls are written into a VTK file. More... | |
MERCURYDPM_DEPRECATED void | setWallsWriteVTK (bool) |
Sets whether walls are written into a VTK file. More... | |
MERCURYDPM_DEPRECATED void | setInteractionsWriteVTK (bool) |
Sets whether interactions are written into a VTK file. More... | |
void | setParticlesWriteVTK (bool writeParticlesVTK) |
Sets whether particles are written in a VTK file. More... | |
void | setSuperquadricParticlesWriteVTK (bool writeSuperquadricParticlesVTK) |
MERCURYDPM_DEPRECATED FileType | getWallsWriteVTK () const |
Returns whether walls are written in a VTK file. More... | |
bool | getParticlesWriteVTK () const |
Returns whether particles are written in a VTK file. More... | |
bool | getSuperquadricParticlesWriteVTK () const |
Mdouble | getXMin () const |
If the length of the problem domain in x-direction is XMax - XMin, then getXMin() returns XMin. More... | |
Mdouble | getXMax () const |
If the length of the problem domain in x-direction is XMax - XMin, then getXMax() returns XMax. More... | |
Mdouble | getYMin () const |
If the length of the problem domain in y-direction is YMax - YMin, then getYMin() returns YMin. More... | |
Mdouble | getYMax () const |
If the length of the problem domain in y-direction is YMax - YMin, then getYMax() returns XMax. More... | |
Mdouble | getZMin () const |
If the length of the problem domain in z-direction is ZMax - ZMin, then getZMin() returns ZMin. More... | |
Mdouble | getZMax () const |
If the length of the problem domain in z-direction is ZMax - ZMin, then getZMax() returns ZMax. More... | |
Mdouble | getXCenter () const |
Mdouble | getYCenter () const |
Mdouble | getZCenter () const |
Vec3D | getMin () const |
Vec3D | getMax () const |
void | setXMin (Mdouble newXMin) |
Sets the value of XMin, the lower bound of the problem domain in the x-direction. More... | |
void | setYMin (Mdouble newYMin) |
Sets the value of YMin, the lower bound of the problem domain in the y-direction. More... | |
void | setZMin (Mdouble newZMin) |
Sets the value of ZMin, the lower bound of the problem domain in the z-direction. More... | |
void | setXMax (Mdouble newXMax) |
Sets the value of XMax, the upper bound of the problem domain in the x-direction. More... | |
void | setYMax (Mdouble newYMax) |
Sets the value of YMax, the upper bound of the problem domain in the y-direction. More... | |
void | setZMax (Mdouble newZMax) |
Sets the value of ZMax, the upper bound of the problem domain in the z-direction. More... | |
void | setMax (const Vec3D &max) |
Sets the maximum coordinates of the problem domain. More... | |
void | setMax (Mdouble, Mdouble, Mdouble) |
Sets the maximum coordinates of the problem domain. More... | |
void | setDomain (const Vec3D &min, const Vec3D &max) |
Sets the minimum coordinates of the problem domain. More... | |
void | setMin (const Vec3D &min) |
Sets the minimum coordinates of the problem domain. More... | |
void | setMin (Mdouble, Mdouble, Mdouble) |
Sets the minimum coordinates of the problem domain. More... | |
void | setTimeStep (Mdouble newDt) |
Sets a new value for the simulation time step. More... | |
Mdouble | getTimeStep () const |
Returns the simulation time step. More... | |
void | setNumberOfOMPThreads (int numberOfOMPThreads) |
int | getNumberOfOMPThreads () const |
void | setXBallsColourMode (int newCMode) |
Set the xballs output mode. More... | |
int | getXBallsColourMode () const |
Get the xballs colour mode (CMode). More... | |
void | setXBallsVectorScale (double newVScale) |
Set the scale of vectors in xballs. More... | |
double | getXBallsVectorScale () const |
Returns the scale of vectors used in xballs. More... | |
void | setXBallsAdditionalArguments (std::string newXBArgs) |
Set the additional arguments for xballs. More... | |
std::string | getXBallsAdditionalArguments () const |
Returns the additional arguments for xballs. More... | |
void | setXBallsScale (Mdouble newScale) |
Sets the scale of the view (either normal, zoom in or zoom out) to display in xballs. The default is fit to screen. More... | |
double | getXBallsScale () const |
Returns the scale of the view in xballs. More... | |
void | setGravity (Vec3D newGravity) |
Sets a new value for the gravitational acceleration. More... | |
Vec3D | getGravity () const |
Returns the gravitational acceleration. More... | |
void | setBackgroundDrag (Mdouble backgroundDrag) |
Simple access function to turn on a background drag. The force of particleVelocity*drag is applied (note, it allowd to be negaitve i.e. create energy) More... | |
const Mdouble | getBackgroundDrag () const |
Return the background drag. More... | |
void | setDimension (unsigned int newDim) |
Sets both the system dimensions and the particle dimensionality. More... | |
void | setSystemDimensions (unsigned int newDim) |
Sets the system dimensionality. More... | |
unsigned int | getSystemDimensions () const |
Returns the system dimensionality. More... | |
void | setParticleDimensions (unsigned int particleDimensions) |
Sets the particle dimensionality. More... | |
unsigned int | getParticleDimensions () const |
Returns the particle dimensionality. More... | |
std::string | getRestartVersion () const |
This is to take into account for different Mercury versions. Returns the version of the restart file. More... | |
void | setRestartVersion (std::string newRV) |
Sets restart_version. More... | |
bool | getRestarted () const |
Returns the flag denoting if the simulation was restarted or not. More... | |
void | setRestarted (bool newRestartedFlag) |
Allows to set the flag stating if the simulation is to be restarted or not. More... | |
bool | getAppend () const |
Returns whether the "append" option is on or off. More... | |
void | setAppend (bool newAppendFlag) |
Sets whether the "append" option is on or off. More... | |
Mdouble | getElasticEnergy () const |
Returns the global elastic energy within the system. More... | |
Mdouble | getKineticEnergy () const |
Returns the global kinetic energy stored in the system. More... | |
Mdouble | getGravitationalEnergy () const |
Returns the global gravitational potential energy stored in the system. More... | |
Mdouble | getRotationalEnergy () const |
JMFT Returns the global rotational energy stored in the system. More... | |
Mdouble | getTotalEnergy () const |
Mdouble | getTotalMass () const |
JMFT: Return the total mass of the system, excluding fixed particles. More... | |
Vec3D | getCentreOfMass () const |
JMFT: Return the centre of mass of the system, excluding fixed particles. More... | |
Vec3D | getTotalMomentum () const |
JMFT: Return the total momentum of the system, excluding fixed particles. More... | |
double | getCPUTime () |
double | getWallTime () |
virtual void | hGridInsertParticle (BaseParticle *obj UNUSED) |
virtual void | hGridUpdateParticle (BaseParticle *obj UNUSED) |
virtual void | hGridRemoveParticle (BaseParticle *obj UNUSED) |
virtual void | hGridUpdateMove (BaseParticle *, Mdouble) |
bool | mpiIsInCommunicationZone (BaseParticle *particle) |
Checks if the position of the particle is in an mpi communication zone or not. More... | |
bool | mpiInsertParticleCheck (BaseParticle *P) |
Function that checks if the mpi particle should really be inserted by the current domain. More... | |
void | insertGhostParticle (BaseParticle *P) |
This function inserts a particle in the mpi communication boundaries. More... | |
void | updateGhostGrid (BaseParticle *P) |
Checks if the Domain/periodic interaction distance needs to be updated and updates it accordingly. More... | |
void | setNumberOfDomains (std::vector< unsigned > direction) |
Sets the number of domains in x-,y- and z-direction. Required for parallel computations. More... | |
void | splitDomain (DomainSplit domainSplit) |
std::vector< unsigned > | getNumberOfDomains () |
returns the number of domains More... | |
Domain * | getCurrentDomain () |
Function that returns a pointer to the domain corresponding to the processor. More... | |
void | removeOldFiles () const |
virtual void | hGridGetInteractingParticleList (BaseParticle *obj, std::vector< BaseParticle * > &list) |
Creates a list of neighbour particles obtained from the hgrid. More... | |
virtual void | computeWallForces (BaseWall *w) |
virtual bool | getHGridUpdateEachTimeStep () const |
void | setMeanVelocity (Vec3D V_mean_goal) |
This function will help you set a fixed kinetic energy and mean velocity in your system. More... | |
void | setMeanVelocityAndKineticEnergy (Vec3D V_mean_goal, Mdouble Ek_goal) |
This function will help you set a fixed kinetic energy and mean velocity in your system. More... | |
Mdouble | getTotalVolume () const |
Get the total volume of the cuboid system. More... | |
Matrix3D | getKineticStress () const |
Calculate the kinetic stress tensor in the system averaged over the whole volume. More... | |
Matrix3D | getStaticStress () const |
Calculate the static stress tensor in the system averaged over the whole volume. More... | |
Matrix3D | getTotalStress () const |
Calculate the total stress tensor in the system averaged over the whole volume. More... | |
virtual void | handleParticleRemoval (unsigned int id) |
Handles the removal of particles from the particleHandler. More... | |
virtual void | handleParticleAddition (unsigned int id, BaseParticle *p) |
void | writePythonFileForVTKVisualisation () const |
void | setWritePythonFileForVTKVisualisation (bool forceWritePythonFileForVTKVisualisation) |
bool | getWritePythonFileForVTKVisualisation () const |
WallVTKWriter & | getWallVTKWriter () |
Protected Member Functions | |
bool | satisfiesInclusionCriteria (BaseParticle *P) |
bool | loadVelocityProfile (const char *filename) |
bool | loadPositions (const char *filename) |
Vec3D | getVelocityProfile (Vec3D Position) |
bool | read_next_from_p3p_file () |
void | autoSetSystemDimensions () |
Protected Member Functions inherited from DPMBase | |
virtual void | computeAllForces () |
Computes all the forces acting on the particles using the BaseInteractable::setForce() and BaseInteractable::setTorque() More... | |
virtual void | computeInternalForces (BaseParticle *) |
Computes the internal forces on particle i (internal in the sense that the sum over all these forces is zero i.e. fully modelled forces) More... | |
virtual void | computeInternalForce (BaseParticle *, BaseParticle *) |
Computes the forces between two particles (internal in the sense that the sum over all these forces is zero i.e. fully modelled forces) More... | |
virtual void | computeExternalForces (BaseParticle *) |
Computes the external forces, such as gravity, acting on particles. More... | |
virtual void | computeForcesDueToWalls (BaseParticle *, BaseWall *) |
Computes the forces on the particles due to the walls (normals are outward normals) More... | |
virtual void | actionsOnRestart () |
A virtual function where the users can add extra code which is executed only when the code is restarted. More... | |
virtual void | actionsBeforeTimeLoop () |
A virtual function. Allows one to carry out any operations before the start of the time loop. More... | |
virtual void | hGridActionsBeforeTimeLoop () |
A virtual function that allows one to carry out hGrid operations before the start of the time loop. More... | |
virtual void | hGridActionsBeforeTimeStep () |
A virtual function that allows one to set or execute hGrid parameters or operations before every simulation time step. More... | |
virtual void | actionsBeforeTimeStep () |
A virtual function which allows to define operations to be executed before the new time step. More... | |
virtual void | computeAdditionalForces () |
A virtual function which allows to define operations to be executed prior to the OMP force collect. More... | |
virtual void | actionsAfterSolve () |
A virtual function which allows to define operations to be executed after the solve(). More... | |
virtual void | actionsAfterTimeStep () |
A virtual function which allows to define operations to be executed after time step. More... | |
void | writeVTKFiles () const |
virtual void | outputXBallsData (std::ostream &os) const |
This function writes the location of the walls and particles in a format the XBalls program can read. For more information on the XBalls program, see Visualising data in xballs. More... | |
virtual void | outputXBallsDataParticle (unsigned int i, unsigned int format, std::ostream &os) const |
This function writes out the particle locations into an output stream in a format the XBalls program can read. For more information on the XBalls program, see Visualising data in xballs. More... | |
virtual void | writeEneHeader (std::ostream &os) const |
Writes a header with a certain format for ENE file. More... | |
virtual void | writeFstatHeader (std::ostream &os) const |
Writes a header with a certain format for FStat file. More... | |
virtual void | writeEneTimeStep (std::ostream &os) const |
Write the global kinetic, potential energy, etc. in the system. More... | |
void | gatherContactStatistics () |
virtual void | integrateBeforeForceComputation () |
Update particles' and walls' positions and velocities before force computation. More... | |
virtual void | integrateAfterForceComputation () |
Update particles' and walls' positions and velocities after force computation. More... | |
virtual void | checkInteractionWithBoundaries () |
There are a range of boundaries one could implement depending on ones' problem. This methods checks for interactions between particles and such range of boundaries. See BaseBoundary.h and all the boundaries in the Boundaries folder. More... | |
virtual void | hGridActionsBeforeIntegration () |
This function has to be called before integrateBeforeForceComputation. More... | |
virtual void | hGridActionsAfterIntegration () |
This function has to be called after integrateBeforeForceComputation. More... | |
void | setFixedParticles (unsigned int n) |
Sets a number, n , of particles in the particleHandler as "fixed particles". More... | |
virtual void | printTime () const |
Displays the current simulation time and the maximum simulation duration. More... | |
virtual bool | continueSolve () const |
A virtual function for deciding whether to continue the simulation, based on a user-specified criterion. More... | |
void | outputInteractionDetails () const |
Displays the interaction details corresponding to the pointer objects in the interaction handler. More... | |
bool | isTimeEqualTo (Mdouble time) const |
Checks whether the input variable "time" is the current time in the simulation. More... | |
void | removeDuplicatePeriodicParticles () |
Removes periodic duplicate Particles. More... | |
void | checkAndDuplicatePeriodicParticles () |
For simulations using periodic boundaries, checks and adds particles when necessary into the particle handler. See DPMBase.cc and PeriodicBoundary.cc for more details. More... | |
void | performGhostParticleUpdate () |
When the Verlet scheme updates the positions and velocities of particles, ghost particles will need an update as wel. Their status will also be updated accordingly. More... | |
void | deleteGhostParticles (std::set< BaseParticle * > &particlesToBeDeleted) |
void | synchroniseParticle (BaseParticle *, unsigned fromProcessor=0) |
void | performGhostVelocityUpdate () |
updates the final time-step velocity of the ghost particles More... | |
void | setSoftStop () |
function for setting sigaction constructor. More... | |
Protected Attributes | |
StatType | statType |
Possible values X,Y,Z,XY,XZ,YZ,XYZ,RAZ,RA,RZ,AZ,R,A are used to determine if the statistics are averaged; f.e. StatType X is averaged over y and z. More... | |
int | nx |
Grid size nx,ny,nz (by default the points of evaluation are placed in an grid on the domain [xMinStat,xMaxStat]x[yMinStat,yMaxStat]x[zMinStat,zMaxStat]. More... | |
int | ny |
see nx More... | |
int | nz |
see nx More... | |
Mdouble | xMinStat |
By default the domain is set to the domain of the MD problem (indicated by setting the stat-domain values to nan), but can be resized. More... | |
Mdouble | xMaxStat |
Mdouble | yMinStat |
Mdouble | yMaxStat |
Mdouble | zMinStat |
Mdouble | zMaxStat |
int | nxMirrored |
extension of grid size from mirrored points More... | |
int | nyMirrored |
int | nzMirrored |
std::vector< StatisticsPoint< T > > | Points |
A vector that stores the values of the statistical variables at a given position. More... | |
std::vector< StatisticsPoint< T > > | dx |
A vector that stores the gradient in x of all statistical variables at a given position. More... | |
std::vector< StatisticsPoint< T > > | dy |
A vector that stores the gradient in y of all statistical variables at a given position. More... | |
std::vector< StatisticsPoint< T > > | dz |
A vector that stores the gradient in z of all statistical variables at a given position. More... | |
std::vector< StatisticsPoint< T > > | timeAverage |
A vector used to sum up all statistical values in Points for time-averaging. More... | |
std::vector< StatisticsPoint< T > > | timeVariance |
a vector used to sum up the variance in time of all statistical values More... | |
std::vector< StatisticsPoint< T > > | dxTimeAverage |
a vector used to sum up all statistical gradients in dx for time-averaging More... | |
std::vector< StatisticsPoint< T > > | dyTimeAverage |
a vector used to sum up all statistical gradients in dy for time-averaging More... | |
std::vector< StatisticsPoint< T > > | dzTimeAverage |
a vector used to sum up all statistical gradients in dz for time-averaging More... | |
bool | doTimeAverage |
Determines if output is averaged over time. More... | |
int | nTimeAverageReset |
Determines after how many time steps the time average is reset. More... | |
bool | doVariance |
Determines if variance is outputted. More... | |
bool | doGradient |
Determines if gradient is outputted. More... | |
int | nTimeAverage |
A counter needed to average over time. More... | |
CG_TYPE | CG_type |
coarse graining type (Gaussian, Heaviside, Polynomial) More... | |
NORMALIZED_POLYNOMIAL< T > | CGPolynomial |
Stores the Polynomial, if the cg function is an axisymmetric function Polynomial in r. More... | |
Mdouble | w2 |
coarse graining width squared; for HeavisideSphere and Gaussian More... | |
Mdouble | cutoff |
The distance from the origin at which the cg function vanishes; cutoff=w for HeavisideSphere or Polynomial, 3*w for Gaussian. More... | |
Mdouble | cutoff2 |
Mdouble | w_over_rmax |
if w is not set manually then w will be set by multiplying this value by the largest particle radius at t=0 More... | |
Mdouble | tMinStat |
Statistical output will only be created if t>tMinStat. More... | |
Mdouble | tMaxStat |
Statistical output will only be created if t<tMaxStat. More... | |
Mdouble | tIntStat |
Statistical output will only be created if tMaxStat-tIntStat< t< tMaxStat. More... | |
Mdouble | indSpecies |
defines the species for which statistics are extracted (-1 for all species) More... | |
Mdouble | rmin |
defines the minimum radius of the particles for which statistics are extracted More... | |
Mdouble | rmax |
defines the maximum radius of the particles for which statistics are extracted More... | |
Mdouble | hmax |
defines the maximum height of the particles for which statistics are extracted More... | |
bool | walls |
Turns off walls before evaluation. More... | |
bool | periodicWalls |
Turns off periodic walls before evaluation (needed for averaging, because we do not yet check if particle is in domain) More... | |
bool | ignoreFixedParticles |
Determines if fixed particles contribute to particle statistics (density, ...) More... | |
int | StressTypeForFixedParticles |
Stress type for fixed particles. More... | |
int | verbosity |
Determines how much is outputted to the terminal. More... | |
int | format |
format of the data input file More... | |
Mdouble | mirrorAtDomainBoundary |
0: Statistics near the wall are equal to statistics away from the wall; 1: Statistics are mirrored at the domain boundaries; up to a maximum depth specified by this number More... | |
bool | isMDCLR |
bool | superexact |
If true, cutoff radius for Gaussian is set to 5*w (from 3*w) More... | |
bool | doDoublePoints |
Vec3D | P1 |
Position of first contact point. More... | |
Vec3D | P2 |
Position of second contact point. More... | |
Vec3D | P1_P2_normal |
Direction of contact. More... | |
Mdouble | P1_P2_distance |
Length of contact line. More... | |
Matrix3D | P1_P2_NormalStress |
Contact stress from normal forces along the line of contact. More... | |
Matrix3D | P1_P2_ContactCoupleStress |
Vec3D | P1_P2_Contact |
Matrix3D | P1_P2_TangentialStress |
Contact stress from tangential forces along the line of contact. More... | |
Vec3D | P1_P2_NormalTraction |
Traction from normal forces at contact of flow with fixed particles or walls. More... | |
Vec3D | P1_P2_TangentialTraction |
Traction from tangential forces at contact of flow with fixed particles or walls. More... | |
MatrixSymmetric3D | P1_P2_Fabric |
Fabric. More... | |
Vec3D | P1_P2_CollisionalHeatFlux |
not yet working More... | |
Mdouble | P1_P2_Dissipation |
not yet working More... | |
Mdouble | P1_P2_Potential |
not yet working More... | |
std::vector< Vec3D > | VelocityProfile |
Vec3D | VelocityProfile_Min |
Vec3D | VelocityProfile_D |
std::fstream | p3p_file |
std::fstream | p3c_file |
std::fstream | p3w_file |
bool | p3Format = true |
unsigned int | stepSize_ |
std::vector< Vec3D > | positions_ |
bool | centerPointInFStat_ = true |
Additional Inherited Members | |
Public Types inherited from DPMBase | |
enum class | ReadOptions : int { ReadAll , ReadNoInteractions , ReadNoParticlesAndInteractions } |
enum class | DomainSplit { X , Y , Z , XY , XZ , YZ , XYZ } |
Static Public Member Functions inherited from DPMBase | |
static void | incrementRunNumberInFile () |
Increment the run Number (counter value) stored in the file_counter (COUNTER_DONOTDEL) by 1 and store the new value in the counter file. More... | |
static int | readRunNumberFromFile () |
Read the run number or the counter from the counter file (COUNTER_DONOTDEL) More... | |
static bool | areInContact (const BaseParticle *pI, const BaseParticle *pJ) |
Checks if two particle are in contact or is there any positive overlap. More... | |
Public Attributes inherited from DPMBase | |
SpeciesHandler | speciesHandler |
A handler to that stores the species type i.e. LinearViscoelasticSpecies, etc. More... | |
RNG | random |
This is a random generator, often used for setting up the initial conditions etc... More... | |
ParticleHandler | particleHandler |
An object of the class ParticleHandler, contains the pointers to all the particles created. More... | |
ParticleHandler | paoloParticleHandler |
Fake particleHandler created by Paolo needed temporary by just Paolo. More... | |
WallHandler | wallHandler |
An object of the class WallHandler. Contains pointers to all the walls created. More... | |
BoundaryHandler | boundaryHandler |
An object of the class BoundaryHandler which concerns insertion and deletion of particles into or from regions. More... | |
PeriodicBoundaryHandler | periodicBoundaryHandler |
Internal handler that deals with periodic boundaries, especially in a parallel build. More... | |
DomainHandler | domainHandler |
An object of the class DomainHandler which deals with parallel code. More... | |
InteractionHandler | interactionHandler |
An object of the class InteractionHandler. More... | |
CGHandler | cgHandler |
Object of the class cgHandler. More... | |
File | dataFile |
An instance of class File to handle in- and output into a .data file. More... | |
File | fStatFile |
An instance of class File to handle in- and output into a .fstat file. More... | |
File | eneFile |
An instance of class File to handle in- and output into a .ene file. More... | |
File | restartFile |
An instance of class File to handle in- and output into a .restart file. More... | |
File | statFile |
An instance of class File to handle in- and output into a .stat file. More... | |
File | interactionFile |
File class to handle in- and output into .interactions file. This file hold information about interactions. More... | |
Time | clock_ |
record when the simulation started More... | |
Static Protected Member Functions inherited from DPMBase | |
static void | signalHandler (int signal) |
signal handler function. More... | |
This class is used to extract statistical data from MD simulations.
When calling statistics_from_fstat_and_data(), statistical data (such as density, pressure, ...) will be extracted at various points in the domain, aligned in a nx*ny*nz grid.
Set functions can be used to define the dimensions of the grid (default: nx=ny=nz=1) and the type and width of the coarse graining function (default: Gaussian, width w=r_max).
|
inline |
Basic constructor only calls constructor()
References StatisticsVector< T >::constructor().
|
inline |
References StatisticsVector< T >::constructor(), and units::name.
StatisticsVector< T >::StatisticsVector | ( | StatisticsVector< T > & | other | ) |
Copy constructor.
StatisticsVector< T >::StatisticsVector | ( | int | argc, |
char * | argv[] | ||
) |
Advanced constructor that accepts arguments from the command line.
|
protected |
StatisticsPoint<T> StatisticsVector< T >::average | ( | std::vector< StatisticsPoint< T > > & | P | ) |
Output average of statistical variables.
|
inline |
References StatisticsVector< T >::getCGTimeMin(), DPMBase::getTime(), StatisticsVector< T >::getTimeMaxStat(), and DPMBase::getTimeStep().
void StatisticsVector< T >::constructor | ( | ) |
this is the actual constructor, sets up all basic things
Referenced by StatisticsVector< T >::StatisticsVector().
void StatisticsVector< T >::constructor | ( | std::string | name | ) |
void StatisticsVector< T >::evaluate_force_statistics | ( | int | wp = 0 | ) |
void StatisticsVector< T >::evaluate_particle_statistics | ( | std::vector< BaseParticle * >::iterator | P, |
int | wp = 0 |
||
) |
Calculates statistics for a single Particle.
void StatisticsVector< T >::evaluate_wall_force_statistics | ( | Vec3D | P, |
int | wp = 0 |
||
) |
|
inline |
References StatisticsVector< T >::CGPolynomial.
|
inline |
References StatisticsVector< T >::CGPolynomial.
|
inline |
References StatisticsVector< T >::CGPolynomial.
|
virtual |
Finish all statistics (i.e. write out final data)
Reimplemented from DPMBase.
Referenced by statistics_while_running< T >::finishStatistics().
void StatisticsVector< T >::gather_force_statistics_from_fstat_and_data | ( | ) |
void StatisticsVector< T >::gather_force_statistics_from_p3c | ( | int | version | ) |
void StatisticsVector< T >::gather_force_statistics_from_p3w | ( | int | version, |
std::vector< int > & | index | ||
) |
|
virtual |
Calculates statistics for one collision (can be any kind of collision)
Reimplemented from DPMBase.
|
inline |
References StatisticsVector< T >::Points.
|
inline |
References StatisticsVector< T >::CG_type.
|
inline |
References StatisticsVector< T >::tIntStat.
|
inline |
References StatisticsVector< T >::tMinStat.
Referenced by StatisticsVector< T >::check_current_time_for_statistics().
|
inline |
References StatisticsVector< T >::w2.
Referenced by statistics_while_running< T >::run().
|
inline |
References StatisticsVector< T >::w_over_rmax.
|
inline |
References StatisticsVector< T >::walls.
|
inline |
References StatisticsVector< T >::w2.
|
inline |
References StatisticsVector< T >::cutoff.
|
inline |
References StatisticsVector< T >::cutoff, and mathsFunc::square().
|
inline |
References StatisticsVector< T >::doDoublePoints.
|
inline |
References StatisticsVector< T >::doGradient.
|
inline |
References StatisticsVector< T >::ignoreFixedParticles.
|
inline |
References StatisticsVector< T >::periodicWalls.
|
inline |
References StatisticsVector< T >::doTimeAverage.
|
inline |
References StatisticsVector< T >::doVariance.
|
inline |
References StatisticsVector< T >::mirrorAtDomainBoundary.
|
inline |
References StatisticsVector< T >::nx, StatisticsVector< T >::ny, and StatisticsVector< T >::nz.
|
inline |
References StatisticsVector< T >::nTimeAverage.
|
inline |
References StatisticsVector< T >::nTimeAverageReset.
|
inline |
References StatisticsVector< T >::nx.
|
inline |
References StatisticsVector< T >::ny.
|
inline |
References StatisticsVector< T >::nz.
|
inline |
References StatisticsVector< T >::CGPolynomial.
|
inline |
References StatisticsVector< T >::stepSize_.
|
inline |
References StatisticsVector< T >::StressTypeForFixedParticles.
|
inline |
References StatisticsVector< T >::superexact.
|
inline |
References DPMBase::getTimeMax(), and StatisticsVector< T >::tMaxStat.
Referenced by StatisticsVector< T >::check_current_time_for_statistics().
|
protected |
|
inline |
References StatisticsVector< T >::verbosity.
Referenced by statistics_while_running< T >::printTime().
|
inline |
References DPMBase::getXMax(), and StatisticsVector< T >::xMaxStat.
Referenced by StatisticsVector< T >::set_hx().
|
inline |
Functions to acces and change the domain of statistics.
References DPMBase::getXMin(), and StatisticsVector< T >::xMinStat.
Referenced by StatisticsVector< T >::set_hx().
|
inline |
References DPMBase::getYMax(), and StatisticsVector< T >::yMaxStat.
Referenced by StatisticsVector< T >::set_hy().
|
inline |
References DPMBase::getYMin(), and StatisticsVector< T >::yMinStat.
Referenced by StatisticsVector< T >::set_hy().
|
inline |
References DPMBase::getZMax(), and StatisticsVector< T >::zMaxStat.
Referenced by StatisticsVector< T >::set_hz().
|
inline |
References DPMBase::getZMin(), and StatisticsVector< T >::zMinStat.
Referenced by StatisticsVector< T >::set_hz().
|
virtual |
Initializes statistics, i.e. setting w2, setting the grid and writing the header lines in the .stat file.
Reimplemented from DPMBase.
Referenced by statistics_while_running< T >::initialiseStatistics().
void StatisticsVector< T >::jump_fstat | ( | ) |
void StatisticsVector< T >::jump_p3c | ( | ) |
|
protected |
|
protected |
|
virtual |
Calculates statistics for Particles (i.e. not collisions)
Reimplemented from DPMBase.
std::string StatisticsVector< T >::print_CG | ( | ) |
Output coarse graining variables.
void StatisticsVector< T >::print_help | ( | ) |
std::string StatisticsVector< T >::printStat | ( | ) |
Outputs member variable values to a std::string.
Referenced by CLiveStatistics< T >::setupInitialConditions(), and statistics_while_running< T >::setupInitialConditions().
|
virtual |
Processes all gathered statistics and resets them afterwards. (Processing means either calculating time averages or writing out statistics)
Reimplemented from DPMBase.
Referenced by statistics_while_running< T >::processStatistics().
|
protected |
bool StatisticsVector< T >::readNextDataFile | ( | unsigned int | format | ) |
void StatisticsVector< T >::readStatArguments | ( | int | argc, |
char * | argv[] | ||
) |
|
virtual |
Set all statistical variables to zero.
|
protected |
|
inline |
References StatisticsVector< T >::set_hx(), StatisticsVector< T >::set_hy(), and StatisticsVector< T >::set_hz().
Referenced by main().
|
inline |
References StatisticsVector< T >::hmax.
|
inline |
References StatisticsVector< T >::getXMaxStat(), StatisticsVector< T >::getXMinStat(), and StatisticsVector< T >::setNX().
Referenced by StatisticsVector< T >::set_h().
|
inline |
References StatisticsVector< T >::getYMaxStat(), StatisticsVector< T >::getYMinStat(), and StatisticsVector< T >::setNY().
Referenced by StatisticsVector< T >::set_h().
|
inline |
References StatisticsVector< T >::getZMaxStat(), StatisticsVector< T >::getZMinStat(), and StatisticsVector< T >::setNZ().
Referenced by StatisticsVector< T >::set_h().
|
inline |
References StatisticsVector< T >::StressTypeForFixedParticles.
Referenced by main(), and statistics_while_running< T >::statistics_while_running().
|
inline |
References StatisticsVector< T >::CGPolynomial.
|
inline |
References StatisticsVector< T >::CGPolynomial.
|
inline |
References StatisticsVector< T >::rmax.
|
inline |
References StatisticsVector< T >::rmin.
void StatisticsVector< T >::set_statType | ( | ) |
void StatisticsVector< T >::setCGShape | ( | CG_TYPE | new_ | ) |
void StatisticsVector< T >::setCGShape | ( | const char * | new_ | ) |
Referenced by main().
|
inline |
References StatisticsVector< T >::tIntStat.
|
inline |
References StatisticsVector< T >::tMinStat.
Referenced by main(), statistics_while_running< T >::run(), and statistics_while_running< T >::statistics_while_running().
|
inline |
Set CG variables w2 and CG_invvolume.
References StatisticsVector< T >::setCGWidth2(), and mathsFunc::square().
Referenced by main(), statistics_while_running< T >::run(), and statistics_while_running< T >::statistics_while_running().
void StatisticsVector< T >::setCGWidth2 | ( | Mdouble | new_ | ) |
Set CG variables w2 and CG_invvolume.
Referenced by StatisticsVector< T >::setCGWidth().
|
inline |
References StatisticsVector< T >::w_over_rmax.
|
inline |
References StatisticsVector< T >::walls.
|
inline |
References StatisticsVector< T >::doDoublePoints.
|
inline |
References StatisticsVector< T >::doGradient.
|
inline |
References StatisticsVector< T >::ignoreFixedParticles.
|
inline |
|
inline |
References StatisticsVector< T >::doTimeAverage.
|
inline |
References StatisticsVector< T >::doVariance.
|
inline |
References StatisticsVector< T >::indSpecies.
Mdouble StatisticsVector< T >::setInfinitelyLongDistance | ( | ) |
|
inline |
References StatisticsVector< T >::mirrorAtDomainBoundary.
|
inline |
|
inline |
References StatisticsVector< T >::nx, StatisticsVector< T >::ny, and StatisticsVector< T >::nz.
|
inline |
References StatisticsVector< T >::nTimeAverageReset.
|
inline |
References StatisticsVector< T >::nx.
Referenced by main(), StatisticsVector< T >::set_hx(), StatisticsVector< T >::setN(), and statistics_while_running< T >::statistics_while_running().
|
inline |
References StatisticsVector< T >::ny.
Referenced by main(), StatisticsVector< T >::set_hy(), StatisticsVector< T >::setN(), and statistics_while_running< T >::statistics_while_running().
|
inline |
References DPMBase::getSystemDimensions(), logger, StatisticsVector< T >::nz, and WARN.
Referenced by main(), StatisticsVector< T >::set_hz(), StatisticsVector< T >::setN(), and statistics_while_running< T >::statistics_while_running().
|
inline |
References StatisticsVector< T >::CGPolynomial.
void StatisticsVector< T >::setPositions | ( | ) |
Set position of StatisticsPoint points and set variables to 0.
|
inline |
References StatisticsVector< T >::stepSize_.
|
inline |
References StatisticsVector< T >::StressTypeForFixedParticles.
Referenced by statistics_while_running< T >::statistics_while_running().
|
inline |
References StatisticsVector< T >::superexact.
Referenced by main().
|
inline |
References StatisticsVector< T >::tMaxStat.
Referenced by main(), and statistics_while_running< T >::statistics_while_running().
|
inline |
References StatisticsVector< T >::verbosity.
Referenced by main().
|
inline |
References StatisticsVector< T >::xMaxStat.
|
inline |
References StatisticsVector< T >::xMinStat.
|
inline |
References StatisticsVector< T >::yMaxStat.
|
inline |
References StatisticsVector< T >::yMinStat.
|
inline |
References StatisticsVector< T >::zMaxStat.
Referenced by main().
|
inline |
References StatisticsVector< T >::zMinStat.
Referenced by main().
void StatisticsVector< T >::statistics_from_fstat_and_data | ( | ) |
get StatisticsPoint
Referenced by main(), and Statistics().
void StatisticsVector< T >::statistics_from_p3 | ( | ) |
Referenced by main().
|
inline |
References StatisticsVector< T >::verbosity.
Referenced by main(), and statistics_while_running< T >::setupInitialConditions().
void StatisticsVector< T >::write_statistics | ( | ) |
Writes regular statistics.
void StatisticsVector< T >::write_time_average_statistics | ( | ) |
Writes out time averaged statistics.
|
virtual |
Writes simulation data to all the main Mercury files: .data, .ene, .fstat, .xballs and .restart (see the Mercury website for more details regarding these files).
Writes headers and all relevant information to the relevant output files. Note that the writeFstatHeader() actually contains within it the functionality to write the full fstat data, whereas for .ene files the functions to write the headers and main data are separate. Note that the interaction file is not written here: it is written with the start and end of each interaction.
The function [X].saveCurrentTimeStep(numberOfTimeSteps_) returns true
if:
a) The current time step is greater than or equal to the time step at which the next write or read operation is supposed to happen.
b) The FileType is not "NO_FILE".
c) The file is open.
Reimplemented from DPMBase.
|
protected |
|
protected |
coarse graining type (Gaussian, Heaviside, Polynomial)
Referenced by StatisticsVector< T >::getCGShape().
|
protected |
Stores the Polynomial, if the cg function is an axisymmetric function Polynomial in r.
Referenced by StatisticsVector< T >::evaluateIntegral(), StatisticsVector< T >::evaluatePolynomial(), StatisticsVector< T >::evaluatePolynomialGradient(), StatisticsVector< T >::getPolynomialName(), StatisticsVector< T >::set_Polynomial(), and StatisticsVector< T >::setPolynomialName().
|
protected |
The distance from the origin at which the cg function vanishes; cutoff=w for HeavisideSphere or Polynomial, 3*w for Gaussian.
Referenced by StatisticsVector< T >::getCutoff(), and StatisticsVector< T >::getCutoff2().
|
protected |
|
protected |
Referenced by StatisticsVector< T >::getDoDoublePoints(), and StatisticsVector< T >::setDoDoublePoints().
|
protected |
Determines if gradient is outputted.
Referenced by StatisticsVector< T >::getDoGradient(), and StatisticsVector< T >::setDoGradient().
|
protected |
Determines if output is averaged over time.
Referenced by StatisticsVector< T >::getDoTimeAverage(), main(), and StatisticsVector< T >::setDoTimeAverage().
|
protected |
Determines if variance is outputted.
Referenced by StatisticsVector< T >::getDoVariance(), and StatisticsVector< T >::setDoVariance().
|
protected |
A vector that stores the gradient in x of all statistical variables at a given position.
|
protected |
a vector used to sum up all statistical gradients in dx for time-averaging
|
protected |
A vector that stores the gradient in y of all statistical variables at a given position.
|
protected |
a vector used to sum up all statistical gradients in dy for time-averaging
|
protected |
A vector that stores the gradient in z of all statistical variables at a given position.
|
protected |
a vector used to sum up all statistical gradients in dz for time-averaging
|
protected |
format of the data input file
|
protected |
defines the maximum height of the particles for which statistics are extracted
Referenced by StatisticsVector< T >::set_hmax().
|
protected |
Determines if fixed particles contribute to particle statistics (density, ...)
Referenced by StatisticsVector< T >::getDoIgnoreFixedParticles(), and StatisticsVector< T >::setDoIgnoreFixedParticles().
|
protected |
defines the species for which statistics are extracted (-1 for all species)
Referenced by StatisticsVector< T >::setIndSpecies().
|
protected |
|
protected |
0: Statistics near the wall are equal to statistics away from the wall; 1: Statistics are mirrored at the domain boundaries; up to a maximum depth specified by this number
Referenced by StatisticsVector< T >::getMirrorAtDomainBoundary(), and StatisticsVector< T >::setMirrorAtDomainBoundary().
|
protected |
A counter needed to average over time.
Referenced by StatisticsVector< T >::getNTimeAverage().
|
protected |
Determines after how many time steps the time average is reset.
Referenced by StatisticsVector< T >::getNTimeAverageReset(), and StatisticsVector< T >::setNTimeAverageReset().
|
protected |
Grid size nx,ny,nz (by default the points of evaluation are placed in an grid on the domain [xMinStat,xMaxStat]x[yMinStat,yMaxStat]x[zMinStat,zMaxStat].
Referenced by StatisticsVector< T >::getN(), StatisticsVector< T >::getNX(), StatisticsVector< T >::setN(), and StatisticsVector< T >::setNX().
|
protected |
extension of grid size from mirrored points
|
protected |
see nx
Referenced by StatisticsVector< T >::getN(), StatisticsVector< T >::getNY(), StatisticsVector< T >::setN(), and StatisticsVector< T >::setNY().
|
protected |
|
protected |
see nx
Referenced by StatisticsVector< T >::getN(), StatisticsVector< T >::getNZ(), StatisticsVector< T >::setN(), and StatisticsVector< T >::setNZ().
|
protected |
|
protected |
Position of first contact point.
|
protected |
not yet working
|
protected |
|
protected |
|
protected |
not yet working
|
protected |
Length of contact line.
|
protected |
Fabric.
|
protected |
Direction of contact.
|
protected |
Contact stress from normal forces along the line of contact.
|
protected |
Traction from normal forces at contact of flow with fixed particles or walls.
|
protected |
not yet working
|
protected |
Contact stress from tangential forces along the line of contact.
|
protected |
Traction from tangential forces at contact of flow with fixed particles or walls.
|
protected |
Position of second contact point.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
Turns off periodic walls before evaluation (needed for averaging, because we do not yet check if particle is in domain)
Referenced by StatisticsVector< T >::getDoPeriodicWalls(), and StatisticsVector< T >::setDoPeriodicWalls().
|
protected |
A vector that stores the values of the statistical variables at a given position.
Referenced by StatisticsVector< T >::getCGPoints().
|
protected |
|
protected |
defines the maximum radius of the particles for which statistics are extracted
Referenced by StatisticsVector< T >::set_rmax().
|
protected |
defines the minimum radius of the particles for which statistics are extracted
Referenced by StatisticsVector< T >::set_rmin().
|
protected |
Possible values X,Y,Z,XY,XZ,YZ,XYZ,RAZ,RA,RZ,AZ,R,A are used to determine if the statistics are averaged; f.e. StatType X is averaged over y and z.
|
protected |
Referenced by StatisticsVector< T >::getStepSize(), and StatisticsVector< T >::setStepSize().
|
protected |
Stress type for fixed particles.
0 no Stress from fixed particles
1 Stress from fixed particles distributed between Contact and flowing Particle COM (default)
2 Stress from fixed particles distributed between fixed and flowing Particle COM
3 Stress from fixed particles extends from flowing particle to infinity
Referenced by StatisticsVector< T >::getStressTypeForFixedParticles(), StatisticsVector< T >::set_infiniteStressForFixedParticles(), and StatisticsVector< T >::setStressTypeForFixedParticles().
|
protected |
If true, cutoff radius for Gaussian is set to 5*w (from 3*w)
Referenced by StatisticsVector< T >::getSuperExact(), and StatisticsVector< T >::setSuperExact().
|
protected |
A vector used to sum up all statistical values in Points for time-averaging.
|
protected |
a vector used to sum up the variance in time of all statistical values
|
protected |
Statistical output will only be created if tMaxStat-tIntStat< t< tMaxStat.
Referenced by StatisticsVector< T >::getCGTimeAveragingInterval(), and StatisticsVector< T >::setCGTimeAveragingInterval().
|
protected |
Statistical output will only be created if t<tMaxStat.
Referenced by StatisticsVector< T >::getTimeMaxStat(), and StatisticsVector< T >::setTimeMaxStat().
|
protected |
Statistical output will only be created if t>tMinStat.
Referenced by StatisticsVector< T >::getCGTimeMin(), and StatisticsVector< T >::setCGTimeMin().
|
protected |
|
protected |
|
protected |
|
protected |
Determines how much is outputted to the terminal.
0 no output
1 basic output (time steps)
2 full output (number of forces and particles, md and stat parameters)
Referenced by StatisticsVector< T >::getVerbosityLevel(), StatisticsVector< T >::setVerbosityLevel(), and StatisticsVector< T >::verbose().
|
protected |
coarse graining width squared; for HeavisideSphere and Gaussian
Referenced by StatisticsVector< T >::getCGWidth(), and StatisticsVector< T >::getCGWidthSquared().
|
protected |
if w is not set manually then w will be set by multiplying this value by the largest particle radius at t=0
Referenced by StatisticsVector< T >::getCGWidth_over_rmax(), and StatisticsVector< T >::setCGWidth_over_rmax().
|
protected |
Turns off walls before evaluation.
Referenced by StatisticsVector< T >::getCGWidthalls(), and StatisticsVector< T >::setCGWidthalls().
|
protected |
Referenced by StatisticsVector< T >::getXMaxStat(), and StatisticsVector< T >::setXMaxStat().
|
protected |
By default the domain is set to the domain of the MD problem (indicated by setting the stat-domain values to nan), but can be resized.
Referenced by StatisticsVector< T >::getXMinStat(), and StatisticsVector< T >::setXMinStat().
|
protected |
Referenced by StatisticsVector< T >::getYMaxStat(), and StatisticsVector< T >::setYMaxStat().
|
protected |
Referenced by StatisticsVector< T >::getYMinStat(), and StatisticsVector< T >::setYMinStat().
|
protected |
Referenced by StatisticsVector< T >::getZMaxStat(), and StatisticsVector< T >::setZMaxStat().
|
protected |
Referenced by StatisticsVector< T >::getZMinStat(), and StatisticsVector< T >::setZMinStat().