void LRBFGS::SetParams(PARAMSMAP params) { SolversLS::SetParams(params); PARAMSMAP::iterator iter; for (iter = params.begin(); iter != params.end(); iter++) { if (iter->first == static_cast<std::string> ("isconvex")) { isconvex = ((static_cast<integer> (iter->second)) != 0); } else if (iter->first == static_cast<std::string> ("nu")) { nu = iter->second; } else if (iter->first == static_cast<std::string> ("mu")) { mu = iter->second; } else if (iter->first == static_cast<std::string> ("LengthSY")) { LengthSY = static_cast<integer> (iter->second); } } };
void RNewton::SetParams(PARAMSMAP params) { SolversLS::SetParams(params); PARAMSMAP::iterator iter; for (iter = params.begin(); iter != params.end(); iter++) { if (iter->first == static_cast<std::string> ("useRand")) { useRand = ((static_cast<integer> (iter->second)) != 0); } else if (iter->first == static_cast<std::string> ("Max_Inner_Iter")) { Max_Inner_Iter = static_cast<integer> (iter->second); } else if (iter->first == static_cast<std::string> ("Min_Inner_Iter")) { Min_Inner_Iter = static_cast<integer> (iter->second); } else if (iter->first == static_cast<std::string> ("theta")) { theta = iter->second; } else if (iter->first == static_cast<std::string> ("kappa")) { kappa = static_cast<integer> (iter->second); } } };
void Oblique::SetParams(PARAMSMAP params) { Manifold::SetParams(params); PARAMSMAP::iterator iter; for (iter = params.begin(); iter != params.end(); iter++) { if (iter->first == static_cast<std::string> ("ParamSet")) { switch (static_cast<integer> (iter->second)) { case 1: ChooseObliqueParamsSet1(); break; case 2: ChooseObliqueParamsSet2(); break; case 3: ChooseObliqueParamsSet3(); break; case 4: ChooseObliqueParamsSet4(); break; default: break; } } } };
void SolversTR::SetParams(PARAMSMAP params) { Solvers::SetParams(params); PARAMSMAP::iterator iter; for (iter = params.begin(); iter != params.end(); iter++) { if (iter->first == static_cast<std::string> ("Acceptence_Rho")) { Acceptence_Rho = iter->second; } else if (iter->first == static_cast<std::string> ("Shrinked_tau")) { Shrinked_tau = iter->second; } else if (iter->first == static_cast<std::string> ("Magnified_tau")) { Magnified_tau = iter->second; } else if (iter->first == static_cast<std::string> ("minimum_Delta")) { minimum_Delta = iter->second; } else if (iter->first == static_cast<std::string> ("maximum_Delta")) { maximum_Delta = iter->second; } else if (iter->first == static_cast<std::string> ("useRand")) { useRand = ((static_cast<integer> (iter->second)) != 0); } else if (iter->first == static_cast<std::string> ("Max_Inner_Iter")) { Max_Inner_Iter = static_cast<integer> (iter->second); } else if (iter->first == static_cast<std::string> ("Min_Inner_Iter")) { Min_Inner_Iter = static_cast<integer> (iter->second); } else if (iter->first == static_cast<std::string> ("theta")) { theta = iter->second; } else if (iter->first == static_cast<std::string> ("kappa")) { kappa = iter->second; } else if (iter->first == static_cast<std::string> ("initial_Delta")) { initial_Delta = iter->second; } } };
void SolversLS::SetParams(PARAMSMAP params) { Solvers::SetParams(params); PARAMSMAP::iterator iter; for (iter = params.begin(); iter != params.end(); iter++) { if (iter->first == static_cast<std::string> ("LineSearch_LS")) { LineSearch_LS = static_cast<LSAlgo> (static_cast<integer> (iter->second)); } else if (iter->first == static_cast<std::string> ("LS_alpha")) { LS_alpha = iter->second; } else if (iter->first == static_cast<std::string> ("LS_beta")) { LS_beta = iter->second; } else if (iter->first == static_cast<std::string> ("Minstepsize")) { Minstepsize = iter->second; } else if (iter->first == static_cast<std::string> ("Maxstepsize")) { Maxstepsize = iter->second; } else if (iter->first == static_cast<std::string> ("LS_ratio1")) { LS_ratio1 = iter->second; } else if (iter->first == static_cast<std::string> ("LS_ratio2")) { LS_ratio2 = iter->second; } else if (iter->first == static_cast<std::string> ("Initstepsize")) { Initstepsize = iter->second; } } };
void RCG::SetParams(PARAMSMAP params) { SolversLS::SetParams(params); PARAMSMAP::iterator iter; for (iter = params.begin(); iter != params.end(); iter++) { if (iter->first == static_cast<std::string> ("ManDim")) { ManDim = static_cast<integer> (iter->second); } else if (iter->first == static_cast<std::string> ("RCGmethod")) { RCGmethod = static_cast<RCGmethods> (static_cast<integer> (iter->second)); } } };