Skip to content

Commit

Permalink
-added broyden solver
Browse files Browse the repository at this point in the history
  • Loading branch information
RuedKamp committed Oct 19, 2015
1 parent 22f67d2 commit e64c913
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 0 deletions.
Expand Up @@ -45,6 +45,18 @@ struct NonLinSolverOMCFactory : virtual public ObjectFactory<CreationPolicy>
}
nonlin_solver_key.assign("extension_export_newton");
}
if(nonlin_solver.compare("broyden")==0)
{
PATH broyden_path = ObjectFactory<CreationPolicy>::_library_path;
PATH broyden_name(BROYDEN_LIB);
broyden_path/=broyden_name;
LOADERRESULT result = ObjectFactory<CreationPolicy>::_factory->LoadLibrary(broyden_path.string(),*_non_linsolver_type_map);
if (result != LOADER_SUCCESS)
{
throw ModelicaSimulationError(MODEL_FACTORY,"Failed loading Broyden solver library!");
}
nonlin_solver_key.assign("extension_export_broyden");
}
else if(nonlin_solver.compare("kinsol")==0)
{
PATH kinsol_path = ObjectFactory<CreationPolicy>::_library_path;
Expand Down
Expand Up @@ -26,6 +26,8 @@ struct NonLinSolverVxWorksFactory : virtual public ObjectFactory<CreationPolicy
string nonlin_solver;
if(solver_name.compare("newton")==0)
nonlin_solver_key.assign("createNewtonSettings");
else if(solver_name.compare("broyden")==0)
nonlin_solver_key.assign("createBroydenSettings");
else if(solver_name.compare("kinsol")==0)
nonlin_solver_key.assign("createKinsolSettings");
else if(solver_name.compare("Hybrj")==0)
Expand All @@ -44,6 +46,8 @@ struct NonLinSolverVxWorksFactory : virtual public ObjectFactory<CreationPolicy
string nonlin_solver_key;
if(solver_name.compare("newton")==0)
nonlin_solver_key.assign("createNewton");
if(solver_name.compare("broyden")==0)
nonlin_solver_key.assign("createBroyden");
else if(solver_name.compare("kinsol")==0)
nonlin_solver_key.assign("createKinsol");
else if(solver_name.compare("Hybrj")==0)
Expand Down

0 comments on commit e64c913

Please sign in to comment.