--- trunk/src/io/Globals.cpp 2005/11/01 19:14:27 705 +++ trunk/src/io/Globals.cpp 2005/11/11 15:22:11 726 @@ -121,8 +121,9 @@ Globals::Globals(){ DefineOptionalParameter(SurfaceTension, "surfaceTension"); DefineOptionalParameter(PrintPressureTensor, "printPressureTensor"); DefineOptionalParameter(ElectrostaticSummationMethod, "electrostaticSummationMethod"); + DefineOptionalParameter(ElectrostaticScreeningMethod, "electrostaticScreeningMethod"); DefineOptionalParameter(CutoffPolicy, "cutoffPolicy"); - + DefineOptionalParameter(SwitchingFunctionType, "switchingFunctionType"); DefineOptionalParameterWithDefaultValue(MixingRule, "mixingRule", "standard"); DefineOptionalParameterWithDefaultValue(UsePeriodicBoundaryConditions, "usePeriodicBoundaryConditions", true); DefineOptionalParameterWithDefaultValue(UseInitalTime, "useInitialTime", false); @@ -133,8 +134,9 @@ Globals::Globals(){ DefineOptionalParameterWithDefaultValue(ThermIntDistSpringConst, "thermIntDistSpringConst", 6.0); DefineOptionalParameterWithDefaultValue(ThermIntThetaSpringConst, "thermIntThetaSpringConst", 7.5); DefineOptionalParameterWithDefaultValue(ThermIntOmegaSpringConst, "thermIntOmegaSpringConst", 13.5); - DefineOptionalParameterWithDefaultValue(DampingAlpha, "dampingAlpha", 1.5); + DefineOptionalParameterWithDefaultValue(DampingAlpha, "dampingAlpha", 0.2); DefineOptionalParameterWithDefaultValue(CompressDumpFile, "compressDumpFile", 0); + DefineOptionalParameterWithDefaultValue(OutputForceVector, "outputForceVector", 0); DefineOptionalParameterWithDefaultValue(SkinThickness, "skinThickness", 1.0); DefineOptionalParameterWithDefaultValue(StatFileFormat, "statFileFormat", "TIME|TOTAL_ENERGY|POTENTIAL_ENERGY|KINETIC_ENERGY|TEMPERATURE|PRESSURE|VOLUME|CONSERVED_QUANTITY"); @@ -339,9 +341,11 @@ char* Globals::checkMe( void ){ CheckParameter(ForceField, isNotEmpty()); CheckParameter(NComponents,isPositive()); CheckParameter(TargetTemp, isPositive()); - CheckParameter(Ensemble, isEqualIgnoreCase(std::string("NVE")) || isEqualIgnoreCase(std::string("NVT")) || - isEqualIgnoreCase(std::string("NPTi")) || isEqualIgnoreCase(std::string("NPTf"))|| - isEqualIgnoreCase(std::string("NPTxyz")) ); + CheckParameter(Ensemble, isEqualIgnoreCase(std::string("NVE")) || + isEqualIgnoreCase(std::string("NVT")) || + isEqualIgnoreCase(std::string("NPTi")) || + isEqualIgnoreCase(std::string("NPTf")) || + isEqualIgnoreCase(std::string("NPTxyz")) ); CheckParameter(Dt, isPositive()); CheckParameter(RunTime, isPositive()); CheckParameter(InitialConfig, isNotEmpty()); @@ -367,7 +371,8 @@ char* Globals::checkMe( void ){ CheckParameter(ZconsTol, isPositive()); //CheckParameter(ZconsForcePolicy,); CheckParameter(Seed, isPositive()); - CheckParameter(Minimizer, isEqualIgnoreCase(std::string("SD")) || isEqualIgnoreCase(std::string("CG"))); + CheckParameter(Minimizer, isEqualIgnoreCase(std::string("SD")) || + isEqualIgnoreCase(std::string("CG"))); CheckParameter(MinimizerMaxIter, isPositive()); CheckParameter(MinimizerWriteFrq, isPositive()); CheckParameter(MinimizerStepSize, isPositive()); @@ -385,15 +390,27 @@ char* Globals::checkMe( void ){ CheckParameter(ThermIntThetaSpringConst, isPositive()); CheckParameter(ThermIntOmegaSpringConst, isPositive()); CheckParameter(SurfaceTension, isPositive()); - CheckParameter(ElectrostaticSummationMethod, isEqualIgnoreCase(std::string("NONE")) || isEqualIgnoreCase(std::string("UNDAMPED_WOLF")) || isEqualIgnoreCase(std::string("DAMPED_WOLF")) || isEqualIgnoreCase(std::string("REACTION_FIELD")) ); - CheckParameter(CutoffPolicy, isEqualIgnoreCase(std::string("MIX")) || isEqualIgnoreCase(std::string("MAX")) || isEqualIgnoreCase(std::string("TRADITIONAL"))); + CheckParameter(ElectrostaticSummationMethod, + isEqualIgnoreCase(std::string("NONE")) || + isEqualIgnoreCase(std::string("SHIFTED_POTENTIAL")) || + isEqualIgnoreCase(std::string("SHIFTED_FORCE")) || + isEqualIgnoreCase(std::string("REACTION_FIELD"))); + CheckParameter(ElectrostaticScreeningMethod, + isEqualIgnoreCase(std::string("UNDAMPED")) || + isEqualIgnoreCase(std::string("DAMPED"))); + CheckParameter(CutoffPolicy, isEqualIgnoreCase(std::string("MIX")) || + isEqualIgnoreCase(std::string("MAX")) || + isEqualIgnoreCase(std::string("TRADITIONAL"))); + CheckParameter(SwitchingFunctionType, + isEqualIgnoreCase(std::string("CUBIC")) || + isEqualIgnoreCase(std::string("FIFTH_ORDER_POLYNOMIAL"))); //CheckParameter(StatFileFormat,); //CheckParameter(MixingRule,); CheckParameter(OrthoBoxTolerance, isPositive()); CheckParameter(ThermIntDistSpringConst, isPositive()); CheckParameter(ThermIntThetaSpringConst, isPositive()); CheckParameter(ThermIntOmegaSpringConst, isPositive()); - CheckParameter(DampingAlpha,isPositive()); + CheckParameter(DampingAlpha,isNonNegative()); CheckParameter(SkinThickness, isPositive()); //@todo memory leak