ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE-4/src/io/Globals.cpp
(Generate patch)

Comparing trunk/OOPSE-4/src/io/Globals.cpp (file contents):
Revision 2515 by tim, Fri Dec 16 18:26:41 2005 UTC vs.
Revision 3013 by chrisfen, Thu Sep 21 18:25:17 2006 UTC

# Line 57 | Line 57 | Globals::Globals() {
57    DefineOptionalParameter(Ensemble, "ensemble");
58    DefineOptionalParameter(Dt, "dt");
59    DefineOptionalParameter(RunTime, "runTime");
60 <  DefineOptionalParameter(InitialConfig, "initialConfig");
60 >  //DefineOptionalParameter(InitialConfig, "initialConfig");
61    DefineOptionalParameter(FinalConfig, "finalConfig");
62    DefineOptionalParameter(SampleTime, "sampleTime");
63    DefineOptionalParameter(ResetTime, "resetTime");
# Line 98 | Line 98 | Globals::Globals() {
98    DefineOptionalParameter(ElectrostaticScreeningMethod, "electrostaticScreeningMethod");
99    DefineOptionalParameter(CutoffPolicy, "cutoffPolicy");
100    DefineOptionalParameter(SwitchingFunctionType, "switchingFunctionType");
101 <  DefineOptionalParameterWithDefaultValue(MixingRule, "mixingRule", "standard");
101 >  DefineOptionalParameter(HydroPropFile, "HydroPropFile");
102 >  DefineOptionalParameter(Viscosity, "viscosity");
103 >  DefineOptionalParameter(BeadSize, "beadSize");
104 >  DefineOptionalParameter(FrozenBufferRadius, "frozenBufferRadius");
105 >  DefineOptionalParameter(LangevinBufferRadius, "langevinBufferRadius");
106 >  
107    DefineOptionalParameterWithDefaultValue(UsePeriodicBoundaryConditions, "usePeriodicBoundaryConditions", true);
108    DefineOptionalParameterWithDefaultValue(UseInitalTime, "useInitialTime", false);
109    DefineOptionalParameterWithDefaultValue(UseIntialExtendedSystemState, "useInitialExtendedSystemState", false);
# Line 108 | Line 113 | Globals::Globals() {
113    DefineOptionalParameterWithDefaultValue(ThermIntDistSpringConst, "thermIntDistSpringConst", 6.0);
114    DefineOptionalParameterWithDefaultValue(ThermIntThetaSpringConst, "thermIntThetaSpringConst", 7.5);
115    DefineOptionalParameterWithDefaultValue(ThermIntOmegaSpringConst, "thermIntOmegaSpringConst", 13.5);
116 <  DefineOptionalParameterWithDefaultValue(DampingAlpha, "dampingAlpha", 0.2);
116 >  DefineOptionalParameter(DampingAlpha, "dampingAlpha");
117    DefineOptionalParameterWithDefaultValue(CompressDumpFile, "compressDumpFile", 0);
118    DefineOptionalParameterWithDefaultValue(OutputForceVector, "outputForceVector", 0);
119    DefineOptionalParameterWithDefaultValue(SkinThickness, "skinThickness", 1.0);
120    DefineOptionalParameterWithDefaultValue(StatFileFormat, "statFileFormat", "TIME|TOTAL_ENERGY|POTENTIAL_ENERGY|KINETIC_ENERGY|TEMPERATURE|PRESSURE|VOLUME|CONSERVED_QUANTITY");    
121 +  DefineOptionalParameterWithDefaultValue(UseSphericalBoundaryConditions, "useSphericalBoundaryConditions", false);
122 +  DefineOptionalParameterWithDefaultValue(AccumulateBoxDipole, "accumulateBoxDipole", false);
123  
124  
125      deprecatedKeywords_.insert("nComponents");
126      deprecatedKeywords_.insert("nZconstraints");
127 +    deprecatedKeywords_.insert("initialConfig");
128      
129   }
130  
# Line 130 | Line 138 | void Globals::validate() {
138  
139    CheckParameter(ForceField, isNotEmpty());
140    CheckParameter(TargetTemp, isPositive());
141 <  CheckParameter(Ensemble, isEqualIgnoreCase(std::string("NVE")) || isEqualIgnoreCase(std::string("NVT")) || isEqualIgnoreCase(std::string("NPTi")) || isEqualIgnoreCase(std::string("NPTf")) || isEqualIgnoreCase(std::string("NPTxyz")) );
141 >  CheckParameter(Ensemble, isEqualIgnoreCase("NVE") || isEqualIgnoreCase("NVT") || isEqualIgnoreCase("NPTi") || isEqualIgnoreCase("NPTf") || isEqualIgnoreCase("NPTxyz") || isEqualIgnoreCase("NPAT")  || isEqualIgnoreCase("LANGEVINDYNAMICS") || isEqualIgnoreCase("LD") || isEqualIgnoreCase("NPRT") || isEqualIgnoreCase("NPGT") || isEqualIgnoreCase("NGammaT") || isEqualIgnoreCase("NGT"));
142    CheckParameter(Dt, isPositive());
143    CheckParameter(RunTime, isPositive());
144 <  CheckParameter(InitialConfig, isNotEmpty());
144 >  //CheckParameter(InitialConfig, isNotEmpty());
145    CheckParameter(FinalConfig, isNotEmpty());
146    CheckParameter(SampleTime, isNonNegative());
147    CheckParameter(ResetTime, isNonNegative());
# Line 142 | Line 150 | void Globals::validate() {
150    CheckParameter(SwitchingRadius, isNonNegative());
151    CheckParameter(Dielectric, isPositive());
152    CheckParameter(ThermalTime,  isNonNegative());
153 <  CheckParameter(TargetPressure,  isPositive());
153 >  //  CheckParameter(TargetPressure,  isPositive());
154    CheckParameter(TauThermostat, isPositive());
155    CheckParameter(TauBarostat, isPositive());
156    CheckParameter(ZconsTime, isPositive());
157    CheckParameter(ZconsTol, isPositive());
158    CheckParameter(Seed, isPositive());
159 <  CheckParameter(Minimizer, isEqualIgnoreCase(std::string("SD")) || isEqualIgnoreCase(std::string("CG")));
159 >  CheckParameter(Minimizer, isEqualIgnoreCase("SD") || isEqualIgnoreCase("CG"));
160    CheckParameter(MinimizerMaxIter, isPositive());
161    CheckParameter(MinimizerWriteFrq, isPositive());
162    CheckParameter(MinimizerStepSize, isPositive());
# Line 158 | Line 166 | void Globals::validate() {
166    CheckParameter(MinimizerLSMaxIter, isPositive());
167    CheckParameter(ZconsGap, isPositive());
168    CheckParameter(ZconsFixtime, isPositive());
169 <  CheckParameter(ThermodynamicIntegrationLambda, isPositive());
169 >  CheckParameter(ThermodynamicIntegrationLambda, isNonNegative());
170    CheckParameter(ThermodynamicIntegrationK, isPositive());
171    CheckParameter(ForceFieldVariant, isNotEmpty());
172    CheckParameter(ForceFieldFileName, isNotEmpty());
173    CheckParameter(ThermIntDistSpringConst, isPositive());
174    CheckParameter(ThermIntThetaSpringConst, isPositive());
175    CheckParameter(ThermIntOmegaSpringConst, isPositive());
176 <  CheckParameter(SurfaceTension, isPositive());
177 <  CheckParameter(ElectrostaticSummationMethod, isEqualIgnoreCase(std::string("NONE")) || isEqualIgnoreCase(std::string("SHIFTED_POTENTIAL")) || isEqualIgnoreCase(std::string("SHIFTED_FORCE")) || isEqualIgnoreCase(std::string("REACTION_FIELD")));
178 <  CheckParameter(ElectrostaticScreeningMethod, isEqualIgnoreCase(std::string("UNDAMPED")) || isEqualIgnoreCase(std::string("DAMPED")));
179 <  CheckParameter(CutoffPolicy, isEqualIgnoreCase(std::string("MIX")) || isEqualIgnoreCase(std::string("MAX")) || isEqualIgnoreCase(std::string("TRADITIONAL")));
180 <  CheckParameter(SwitchingFunctionType, isEqualIgnoreCase(std::string("CUBIC")) || isEqualIgnoreCase(std::string("FIFTH_ORDER_POLYNOMIAL")));
176 >  //  CheckParameter(SurfaceTension, isNonNegative());
177 >  CheckParameter(ElectrostaticSummationMethod, isEqualIgnoreCase("NONE") || isEqualIgnoreCase("SHIFTED_POTENTIAL") || isEqualIgnoreCase("SHIFTED_FORCE") || isEqualIgnoreCase("REACTION_FIELD"));
178 >  CheckParameter(ElectrostaticScreeningMethod, isEqualIgnoreCase("UNDAMPED") || isEqualIgnoreCase("DAMPED"));
179 >  CheckParameter(CutoffPolicy, isEqualIgnoreCase("MIX") || isEqualIgnoreCase("MAX") || isEqualIgnoreCase("TRADITIONAL"));
180 >  CheckParameter(SwitchingFunctionType, isEqualIgnoreCase("CUBIC") || isEqualIgnoreCase("FIFTH_ORDER_POLYNOMIAL"));
181    //CheckParameter(StatFileFormat,);    
174  //CheckParameter(MixingRule,);
182    CheckParameter(OrthoBoxTolerance, isPositive());  
183    CheckParameter(ThermIntDistSpringConst, isPositive());
184    CheckParameter(ThermIntThetaSpringConst, isPositive());
185    CheckParameter(ThermIntOmegaSpringConst, isPositive());
186    CheckParameter(DampingAlpha,isNonNegative());
187    CheckParameter(SkinThickness, isPositive());
188 <
188 >  CheckParameter(Viscosity, isNonNegative());
189 >  CheckParameter(BeadSize, isPositive());
190 >  CheckParameter(FrozenBufferRadius, isPositive());
191 >  CheckParameter(LangevinBufferRadius, isPositive());
192    for(std::vector<Component*>::iterator i = components_.begin(); i != components_.end(); ++i) {
193      if (!(*i)->findMoleculeStamp(moleculeStamps_)) {
194 <        std::cout << "Globals Error: can not find molecule stamp for component" << std::endl;
194 >        std::ostringstream oss;
195 >        oss << "Globals Error: can not find molecule stamp for component " << (*i)->getType() << std::endl;
196 >        throw OOPSEException(oss.str());          
197      }
198    }
199   }
# Line 205 | Line 217 | bool Globals::addMoleculeStamp(MoleculeStamp* molStamp
217          moleculeStamps_.insert(std::map<std::string, MoleculeStamp*>::value_type(molStampName, molStamp));
218          ret = true;
219      } else {
220 <        std::cout << "Globals Error: Molecule Stamp " << molStamp->getName() << "appears multiple times\n";
220 >        std::ostringstream oss;
221 >        oss << "Globals Error: Molecule Stamp " << molStamp->getName() << "appears multiple times\n";
222 >        throw OOPSEException(oss.str());  
223      }
224      return ret;
225   }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines