bool CFitTask::process(const bool & useInitialValues) { CFitProblem * pProblem = dynamic_cast<CFitProblem *>(mpProblem); COptMethod * pMethod = dynamic_cast<COptMethod *>(mpMethod); if (!pProblem || !pMethod) return false; mpMethod->isValidProblem(mpProblem); if (useInitialValues) { pProblem->updateInitialState(); } pProblem->randomizeStartValues(); pProblem->rememberStartValues(); output(COutputInterface::BEFORE); bool success = pMethod->optimise(); pProblem->calculateStatistics(); pProblem->createParameterSets(); output(COutputInterface::AFTER); return success; }
bool COptTask::process(const bool & /* useInitialValues */) { COptProblem * pProblem = dynamic_cast<COptProblem *>(mpProblem); COptMethod * pMethod = dynamic_cast<COptMethod *>(mpMethod); if (!pProblem || !pMethod) return false; mpMethod->isValidProblem(mpProblem); output(COutputInterface::BEFORE); bool success = pMethod->optimise(); pProblem->calculateStatistics(); output(COutputInterface::AFTER); return success; }