SG++-Doxygen-Documentation
sgpp::solver::VarTimestep Class Reference

This class implements a step size control using Adams-Bashforth and Crank-Nicolson for solving ordinary partial equations. More...

#include <VarTimestep.hpp>

Inheritance diagram for sgpp::solver::VarTimestep:
sgpp::solver::StepsizeControl sgpp::solver::ODESolver sgpp::solver::SGSolver sgpp::solver::StepsizeControlBDF sgpp::solver::StepsizeControlMC

Public Member Functions

 VarTimestep (std::string pred, std::string corr, size_t imax, double timestepSize, double eps, sgpp::base::ScreenOutput *screen=NULL, double gamma=-1)
 Std-Constructer. More...
 
virtual ~VarTimestep ()
 Std-Destructor. More...
 
- Public Member Functions inherited from sgpp::solver::StepsizeControl
void solve (SLESolver &LinearSystemSolver, sgpp::solver::OperationParabolicPDESolverSystem &System, bool bIdentifyLastStep=false, bool verbose=false)
 Pure virtual Function that defines a solve method for an ODE solver. More...
 
 StepsizeControl (size_t imax, double timestepSize, double eps, double sc, sgpp::base::ScreenOutput *screen=NULL, double gamma=0.5)
 Std-Constructer. More...
 
virtual ~StepsizeControl ()
 Std-Destructor. More...
 
- Public Member Functions inherited from sgpp::solver::ODESolver
 ODESolver (size_t imax, double timestepSize)
 Std-Constructor. More...
 
virtual ~ODESolver ()
 Std-Destructor. More...
 
- Public Member Functions inherited from sgpp::solver::SGSolver
double getEpsilon ()
 gets the the epsilon, that is used in the SGSolver More...
 
size_t getNumberIterations ()
 function that returns the number of needed solve steps More...
 
double getResiduum ()
 function the returns the residuum (current or final), error of the solver More...
 
void setEpsilon (double eps)
 resets the epsilon, that is used in the SGSolver More...
 
void setMaxIterations (size_t nIterations)
 resets the number of maximum iterations More...
 
 SGSolver (size_t nMaximumIterations, double epsilon)
 Std-Constructor. More...
 
virtual ~SGSolver ()
 Std-Destructor. More...
 

Protected Member Functions

void corrector (SLESolver &LinearSystemSolver, sgpp::solver::OperationParabolicPDESolverSystem &System, double tmp_timestepsize, sgpp::base::DataVector &dv, sgpp::base::DataVector *rhs)
 
virtual double nextTimestep (double tmp_timestepsize, double tmp_timestepsize_old, double norm, double epsilon)
 
void predictor (SLESolver &LinearSystemSolver, sgpp::solver::OperationParabolicPDESolverSystem &System, double tmp_timestepsize, sgpp::base::DataVector &dv, sgpp::base::DataVector &corr, sgpp::base::DataVector *rhs)
 
- Protected Member Functions inherited from sgpp::solver::StepsizeControl
double maxNorm (sgpp::solver::OperationParabolicPDESolverSystem &System, sgpp::base::DataVector &dv1, sgpp::base::DataVector &dv2)
 
virtual double norm (sgpp::solver::OperationParabolicPDESolverSystem &System, sgpp::base::DataVector &dv1, sgpp::base::DataVector &dv2)
 
double twoNorm (sgpp::solver::OperationParabolicPDESolverSystem &System, sgpp::base::DataVector &dv1, sgpp::base::DataVector &dv2)
 

Protected Attributes

std::string _corrector
 
std::string _predictor
 
- Protected Attributes inherited from sgpp::solver::StepsizeControl
double _gamma
 damping factor More...
 
std::string filename
 
double myEps
 epsilon for the step size control More...
 
double mySC
 temp. Stepsize Control More...
 
sgpp::base::ScreenOutputmyScreen
 Pointer to sgpp::base::ScreenOutput object. More...
 
- Protected Attributes inherited from sgpp::solver::SGSolver
double myEpsilon
 epsilon needed in the, e.g. final error in the iterative solver, or a timestep More...
 
size_t nIterations
 Number of Iterations needed for the solve. More...
 
size_t nMaxIterations
 Number of maximum iterations for cg. More...
 
double residuum
 residuum More...
 

Detailed Description

This class implements a step size control using Adams-Bashforth and Crank-Nicolson for solving ordinary partial equations.

Constructor & Destructor Documentation

◆ VarTimestep()

sgpp::solver::VarTimestep::VarTimestep ( std::string  pred,
std::string  corr,
size_t  imax,
double  timestepSize,
double  eps,
sgpp::base::ScreenOutput screen = NULL,
double  gamma = -1 
)

Std-Constructer.

Parameters
predused predictor
corrused corrector
imaxnumber of maximum executed iterations
timestepSizethe size of one timestep
epsthe epsilon for the step size control
screenpossible pointer to a sgpp::base::ScreenOutput object
gammadamping factor

References sgpp::solver::StepsizeControl::filename.

◆ ~VarTimestep()

sgpp::solver::VarTimestep::~VarTimestep ( )
virtual

Std-Destructor.

Member Function Documentation

◆ corrector()

◆ nextTimestep()

double sgpp::solver::VarTimestep::nextTimestep ( double  tmp_timestepsize,
double  tmp_timestepsize_old,
double  norm,
double  epsilon 
)
protectedvirtual

◆ predictor()

Member Data Documentation

◆ _corrector

std::string sgpp::solver::VarTimestep::_corrector
protected

◆ _predictor

std::string sgpp::solver::VarTimestep::_predictor
protected

The documentation for this class was generated from the following files: