Potential1210::Values Potential1210::getParameters (Atom::Type I, Atom::Type J) const { Potential1210::Values parameters; assignParameters(parameters, I, J); return parameters; }
CosineTorsion::Values CosineTorsion::getParameters (Atom::Type I, Atom::Type J, Atom::Type K, Atom::Type L) const { CosineTorsion::Values parameters; assignParameters(parameters, I, J, K, L); return parameters; }
void Master::_initializeParameters() { // Master::_initializeParameters(): local variables /* The function \a _initializeLpParameters() initializes the LP solver * specific Parameters. It is called after the parameter-file * {\tt .abacus} was read and all general parameters were processed. * * This function is implemented in the file \a lpif.cc. */ if(readParamFromFile_) { // set up the name of the configuration file // The location of the configuration file .abacus is given by the environment variable ABACUS_DIR. char *abacusDir = getenv("ABACUS_DIR"); if (!abacusDir) { Logger::ifout() << "environment variable ABACUS_DIR not found\n"; OGDF_THROW_PARAM(AlgorithmFailureException, ogdf::AlgorithmFailureCode::IllegalParameter); } #ifdef OGDF_SYSTEM_UNIX string configFileName = string(abacusDir) + "/.abacus"; #else string configFileName = string(abacusDir) + "\\.abacus"; #endif readParameters(configFileName); } else { // set default values for abacus parameters insertParameter("EnumerationStrategy","BestFirst"); insertParameter("BranchingStrategy","CloseHalfExpensive"); insertParameter("NBranchingVariableCandidates","1"); insertParameter("NStrongBranchingIterations","50"); insertParameter("Guarantee","0.0"); insertParameter("MaxLevel","999999"); insertParameter("MaxNSub","9999999"); insertParameter("MaxCpuTime","99999:59:59"); insertParameter("MaxCowTime","99999:59:59"); insertParameter("ObjInteger","false"); insertParameter("TailOffNLps","0"); insertParameter("TailOffPercent","0.0001"); insertParameter("DelayedBranchingThreshold","0"); insertParameter("MinDormantRounds","1"); insertParameter("PrimalBoundInitMode","None"); insertParameter("PricingFrequency","0"); insertParameter("SkipFactor","1"); insertParameter("SkippingMode","SkipByNode"); insertParameter("FixSetByRedCost","true"); insertParameter("PrintLP","false"); insertParameter("MaxConAdd","100"); insertParameter("MaxConBuffered","100"); insertParameter("MaxVarAdd","500"); insertParameter("MaxVarBuffered","500"); insertParameter("MaxIterations","-1"); insertParameter("EliminateFixedSet","false"); insertParameter("NewRootReOptimize","false"); insertParameter("ShowAverageCutDistance","false"); insertParameter("ConstraintEliminationMode","Basic"); insertParameter("ConElimEps","0.001"); insertParameter("ConElimAge","1"); insertParameter("VariableEliminationMode","ReducedCost"); insertParameter("VarElimEps","0.001"); insertParameter("VarElimAge","1"); insertParameter("VbcLog","None"); #if defined(COIN_OSI_CPX) insertParameter("DefaultLpSolver","CPLEX"); #elif defined(COIN_OSI_SYM) insertParameter("DefaultLpSolver","SYMPHONY"); #elif defined(COIN_OSI_GRB) insertParameter("DefaultLpSolver","Gurobi"); #else insertParameter("DefaultLpSolver","Clp"); #endif insertParameter("SolveApprox","false"); _setDefaultLpParameters(); } // let the user set/overwrite parameters in 4 steps. // 1) Assign parameters that were read from the global abacus config file assignParameters(); // 2) Allow user to read parameters from custom config file initializeParameters(); // 3) Assign parameters from custom config file. // this assigns all parameters that were read from the abacus config file // in the abacus directory and those that the user read from a file // in initializeParameters(). However, this will overwrite any parameter // that was set directly. assignParameters(); // 4) Allow user to set parameters directly // call initializeParameters again so that parameters that were set directly // (and not via a config file) can be set (undo the overwrite from step 2). // Since we do *not* call assignParameters again, those parameters are not // overwritten this time. initializeParameters(); _initializeLpParameters(); }