Newer
Older
#include "CreatorMap.h"
#include "OEMSolver.h"
#include "ITL_Solver.h"
#include "ITL_Preconditioner.h"
#include "NonLinSolver.h"
#include "MatrixVector.h"
#include "SystemVector.h"
#include "Estimator.h"
#include "RecoveryEstimator.h"
#include "ResidualEstimator.h"
#include "LeafData.h"
#include "SurfaceRegion_ED.h"
#include "ElementRegion_ED.h"

Thomas Witkowski
committed
#include "PartitionElementData.h"
#include "DOFMatrix.h"
#include "UmfPackSolver.h"
namespace AMDiS {
template<>
void CreatorMap<OEMSolver>::addDefaultCreators()
OEMSolverCreator *creator;
addCreator("cg", creator);
creator = new CGSSolver::Creator;
addCreator("cgs", creator);
addCreator("bicg", creator);
creator = new BiCGStabSolver::Creator;
addCreator("bicgstab", creator);
creator = new BiCGStab2Solver::Creator;
addCreator("bicgstab2", creator);
creator = new BiCGStabEllSolver::Creator;
addCreator("bicgstab_ell", creator);
creator = new QMRSolver::Creator;
addCreator("qmr", creator);
creator = new TFQMRSolver::Creator;
addCreator("tfqmr", creator);
creator = new GMResSolver::Creator;
addCreator("gmres", creator);
creator = new IDRsSolver::Creator;
addCreator("idr_s", creator);
creator = new MinResSolver::Creator;
addCreator("minres", creator);
#ifdef HAVE_UMFPACK
addCreator("umfpack", creator);
void CreatorMap<ITL_BasePreconditioner>::addDefaultCreators()
CreatorInterface<ITL_BasePreconditioner> *creator;
addCreator("diag", creator);
addCreator("ilu", creator);
addCreator("ic", creator);
#if 0
template<>
void CreatorMap<NonLinSolver<DOFVector<double> > >::addDefaultCreators()
{
NonLinSolverCreator<DOFVector<double> > *creator;
creator = new Newton<DOFVector<double> >::Creator;
addCreator("newton", creator);
creator = new NewtonS<DOFVector<double> >::Creator;
addCreator("newton_fs", creator);
}
#if 0
template<>
void CreatorMap<NonLinSolver<SystemVector> >::addDefaultCreators()
{
NonLinSolverCreator<SystemVector> *creator;
addCreator("newton", creator);
addCreator("newton_fs", creator);
}
#endif
template<>
void CreatorMap<Estimator>::addDefaultCreators()
{
EstimatorCreator *creator;
addCreator("residual", creator);
addCreator("recovery", creator);
}
template<>
void CreatorMap<ElementData>::addDefaultCreators()
{
CreatorInterface<ElementData> *creator;
addCreator("LeafDataEstimatable", creator);
creator = new LeafDataEstimatableVec::Creator;
addCreator("LeafDataEstimatableVec", creator);
addCreator("LeafDataCoarsenable", creator);
creator = new LeafDataCoarsenableVec::Creator;
addCreator("LeafDataCoarsenableVec", creator);
addCreator("LeafDataPeriodic", creator);
addCreator("SurfaceRegion_ED", creator);
addCreator("ElementRegion_ED", creator);

Thomas Witkowski
committed
creator = new PartitionElementData::Creator;
addCreator("PartitionElementData", creator);