50#include "applications/sequentialProps/COMVel.hpp"
51#include "applications/sequentialProps/CenterOfMass.hpp"
52#include "applications/sequentialProps/ContactAngle1.hpp"
53#include "applications/sequentialProps/ContactAngle2.hpp"
54#include "applications/sequentialProps/GCNSeq.hpp"
55#include "applications/sequentialProps/SequentialAnalyzer.hpp"
56#include "applications/sequentialProps/equipartitionTest.hpp"
60#include "utils/simError.h"
64int main(
int argc,
char* argv[]) {
68 if (cmdline_parser(argc, argv, &args_info) != 0) { exit(1); }
71 std::string dumpFileName = args_info.
input_arg;
82 char* sele1Env = getenv(
"SELECTION1");
96 char* sele2Env = getenv(
"SELECTION2");
112 analyzer =
new CenterOfMass(info, dumpFileName, sele1, sele2);
114 analyzer =
new COMVel(info, dumpFileName, sele1, sele2);
116 analyzer =
new Equipartition(info, dumpFileName, sele1, sele2);
119 analyzer =
new GCNSeq(info, dumpFileName, sele1, sele2,
122 snprintf(painCave.errMsg, MAX_SIM_ERROR_MSG_LENGTH,
123 "A cutoff radius (rcut) must be specified when calculating\n"
124 "\tGeneralized Coordinate Number");
125 painCave.severity = OPENMD_ERROR;
126 painCave.isFatal = 1;
130 RealType solidZ(0.0);
134 snprintf(painCave.errMsg, MAX_SIM_ERROR_MSG_LENGTH,
135 "--referenceZ must be set if --ca1 is used\n");
136 painCave.severity = OPENMD_ERROR;
137 painCave.isFatal = 1;
140 RealType dropletR(0.0);
144 snprintf(painCave.errMsg, MAX_SIM_ERROR_MSG_LENGTH,
145 "--dropletR must be set if --ca1 is used\n");
146 painCave.severity = OPENMD_ERROR;
147 painCave.isFatal = 1;
152 new ContactAngle1(info, dumpFileName, sele1, sele2, solidZ, dropletR);
154 RealType solidZ(0.0);
158 snprintf(painCave.errMsg, MAX_SIM_ERROR_MSG_LENGTH,
159 "--referenceZ must be set if --ca2 is used\n");
160 painCave.severity = OPENMD_ERROR;
161 painCave.isFatal = 1;
164 RealType centroidX(0.0);
168 snprintf(painCave.errMsg, MAX_SIM_ERROR_MSG_LENGTH,
169 "--centroidX must be set if --ca2 is used\n");
170 painCave.severity = OPENMD_ERROR;
171 painCave.isFatal = 1;
174 RealType centroidY(0.0);
178 snprintf(painCave.errMsg, MAX_SIM_ERROR_MSG_LENGTH,
179 "--centroidY must be set if --ca2 is used\n");
180 painCave.severity = OPENMD_ERROR;
181 painCave.isFatal = 1;
184 RealType threshDens(0.0);
188 snprintf(painCave.errMsg, MAX_SIM_ERROR_MSG_LENGTH,
189 "--threshDens must be set if --ca2 is used\n");
190 painCave.severity = OPENMD_ERROR;
191 painCave.isFatal = 1;
194 RealType bufferLength(0.0);
198 snprintf(painCave.errMsg, MAX_SIM_ERROR_MSG_LENGTH,
199 "--bufferLength must be set if --ca2 is used\n");
200 painCave.severity = OPENMD_ERROR;
201 painCave.isFatal = 1;
205 analyzer =
new ContactAngle2(info, dumpFileName, sele1, sele2, solidZ,
206 centroidX, centroidY, threshDens, bufferLength,
212 analyzer->doSequence();
The header file for the command line option parser generated by GNU Gengetopt version 2....
Generalized Coordinate Number Sequence.
"applications/sequentialProps/SequentialAnalyzer"
The only responsibility of SimCreator is to parse the meta-data file and create a SimInfo instance ba...
SimInfo * createSim(const std::string &mdFileName, bool loadInitCoords=true)
Setup Simulation.
One of the heavy-weight classes of OpenMD, SimInfo maintains objects and variables relating to the cu...
This basic Periodic Table class was originally taken from the data.cpp file in OpenBabel.
Where the command line options are stored.
unsigned int comvel_given
Whether comvel was given.
char * sele2_arg
select second stuntdouble set (if sele2 is not set, use script from sele1).
unsigned int output_given
Whether output was given.
double centroidX_arg
Location of droplet centroid in x.
unsigned int referenceZ_given
Whether referenceZ was given.
unsigned int dropletR_given
Whether dropletR was given.
unsigned int threshDens_given
Whether threshDens was given.
double bufferLength_arg
Buffer length in angstroms.
double referenceZ_arg
Reference z-height of solid surface.
unsigned int ca2_given
Whether ca2 was given.
char * output_arg
output file name.
unsigned int centroidY_given
Whether centroidY was given.
unsigned int testequi_given
Whether testequi was given.
char * input_arg
input dump file.
int nbins_z_arg
number of bins in z axis (default='100').
unsigned int sele1_given
Whether sele1 was given.
unsigned int gcn_given
Whether gcn was given.
unsigned int com_given
Whether com was given.
double rcut_arg
cutoff radius (angstroms).
unsigned int ca1_given
Whether ca1 was given.
char * sele1_arg
select first stuntdouble set.
double centroidY_arg
Location of droplet centroid in y.
unsigned int rcut_given
Whether rcut was given.
unsigned int bufferLength_given
Whether bufferLength was given.
double threshDens_arg
Threshold Density in g/cm^3.
int nbins_arg
Number of bins (default='100').
unsigned int centroidX_given
Whether centroidX was given.
unsigned int sele2_given
Whether sele2 was given.
double dropletR_arg
Droplet radius in angstroms.