KASKADE 7 development version
Public Types | Public Member Functions | Static Public Member Functions | List of all members
Kaskade::Iteration< Vector, Norm, Utils > Class Template Reference

#include <workModel.hh>

Detailed Description

template<class Vector, class Norm, class Utils>
class Kaskade::Iteration< Vector, Norm, Utils >

Definition at line 120 of file workModel.hh.

Inheritance diagram for Kaskade::Iteration< Vector, Norm, Utils >:
Kaskade::WorkModel< Vector, Norm, Utils >

Public Types

using field_type = typename Vector::value_type
 
using RealVector = Dune::DynamicVector< double >
 
using RealMatrix = Dune::DynamicMatrix< double >
 

Public Member Functions

 Iteration (field_type tol_, std::vector< Vector > const &y0_, std::vector< Vector > const &y1_, Norm &norm_, Utils &util_, RealVector const &timePts_, RealMatrix const &integrationMatrix_, field_type tolNewton_, int maxIterNewton_, field_type rhoit_, int mmin_)
 
field_type computeCost (std::vector< Vector > const &yPrev, std::vector< Vector > const &yCurrent, std::vector< Vector > const &yNext, RealMatrix const &tolMat)
 
field_type getIterJ (std::vector< Vector > const &yPrev, std::vector< Vector > const &yCurrent, std::vector< Vector > const &yNext, field_type rho)
 
virtual RealMatrix const & computeLocalTolerances (std::vector< Vector > const &yPrev, std::vector< Vector > const &yCurrent, std::vector< Vector > const &yNext)
 Pure virtual function implemented in derived classes for different work models. Computes the local tolerances for every time point and every iteration step given global tolerance. More...
 
virtual field_type lowerBoundIterJ (std::vector< Vector > const &yPrev, std::vector< Vector > const &yCurrent, field_type rho)
 
virtual ~Iteration ()
 

Static Public Member Functions

static field_type f (std::vector< Vector > const &yPrev, std::vector< Vector > const &yCurrent, std::vector< Vector > const &yNext, double rho)
 

Member Typedef Documentation

◆ field_type

template<class Vector , class Norm , class Utils >
using Kaskade::Iteration< Vector, Norm, Utils >::field_type = typename Vector::value_type

Definition at line 123 of file workModel.hh.

◆ RealMatrix

template<class Vector , class Norm , class Utils >
using Kaskade::Iteration< Vector, Norm, Utils >::RealMatrix = Dune::DynamicMatrix<double>

Definition at line 125 of file workModel.hh.

◆ RealVector

template<class Vector , class Norm , class Utils >
using Kaskade::Iteration< Vector, Norm, Utils >::RealVector = Dune::DynamicVector<double>

Definition at line 124 of file workModel.hh.

Constructor & Destructor Documentation

◆ Iteration()

template<class Vector , class Norm , class Utils >
Kaskade::Iteration< Vector, Norm, Utils >::Iteration ( field_type  tol_,
std::vector< Vector > const &  y0_,
std::vector< Vector > const &  y1_,
Norm norm_,
Utils &  util_,
RealVector const &  timePts_,
RealMatrix const &  integrationMatrix_,
field_type  tolNewton_,
int  maxIterNewton_,
field_type  rhoit_,
int  mmin_ 
)

Definition at line 391 of file workModel.hh.

◆ ~Iteration()

template<class Vector , class Norm , class Utils >
virtual Kaskade::Iteration< Vector, Norm, Utils >::~Iteration ( )
inlinevirtual

Definition at line 215 of file workModel.hh.

Member Function Documentation

◆ computeCost()

template<class Vector , class Norm , class Utils >
Vector::value_type Kaskade::Iteration< Vector, Norm, Utils >::computeCost ( std::vector< Vector > const &  yPrev,
std::vector< Vector > const &  yCurrent,
std::vector< Vector > const &  yNext,
RealMatrix const &  tolMat 
)
Parameters
yPrev
yCurrent
yNext
tolMat
Returns

Definition at line 408 of file workModel.hh.

Referenced by Kaskade::EulerSDC< Vector, Norm, Utils, TimeGrid >::integrate().

◆ computeLocalTolerances()

template<class Vector , class Norm , class Utils >
virtual RealMatrix const & Kaskade::Iteration< Vector, Norm, Utils >::computeLocalTolerances ( std::vector< Vector > const &  yPrev,
std::vector< Vector > const &  yCurrent,
std::vector< Vector > const &  yNext 
)
inlinevirtual

Pure virtual function implemented in derived classes for different work models. Computes the local tolerances for every time point and every iteration step given global tolerance.

Parameters
yPrevAn (i-1)-th iterative approximation to the solution using sdc Iteration step.
yCurrentAn i-th iterative approximation to the solution using sdc Iteration step.
yNextAn (i+1)-th iterative approximation to the solution using sdc Iteration step.
Returns
Returns the matrix of local tolerances.

Implements Kaskade::WorkModel< Vector, Norm, Utils >.

Definition at line 167 of file workModel.hh.

Referenced by Kaskade::EulerSDC< Vector, Norm, Utils, TimeGrid >::integrate().

◆ f()

template<class Vector , class Norm , class Utils >
static field_type Kaskade::Iteration< Vector, Norm, Utils >::f ( std::vector< Vector > const &  yPrev,
std::vector< Vector > const &  yCurrent,
std::vector< Vector > const &  yNext,
double  rho 
)
inlinestatic

Definition at line 205 of file workModel.hh.

◆ getIterJ()

template<class Vector , class Norm , class Utils >
Vector::value_type Kaskade::Iteration< Vector, Norm, Utils >::getIterJ ( std::vector< Vector > const &  yPrev,
std::vector< Vector > const &  yCurrent,
std::vector< Vector > const &  yNext,
field_type  rho 
)
Parameters
yPrev
yCurrent
yNext
rho
Returns

Definition at line 438 of file workModel.hh.

Referenced by Kaskade::Iteration< Vector, Norm, Utils >::computeLocalTolerances(), and Kaskade::EulerSDC< Vector, Norm, Utils, TimeGrid >::integrate().

◆ lowerBoundIterJ()

template<class Vector , class Norm , class Utils >
virtual field_type Kaskade::Iteration< Vector, Norm, Utils >::lowerBoundIterJ ( std::vector< Vector > const &  yPrev,
std::vector< Vector > const &  yCurrent,
field_type  rho 
)
inlinevirtual
Parameters
yPrev
yCurrent
rho
Returns

Implements Kaskade::WorkModel< Vector, Norm, Utils >.

Definition at line 194 of file workModel.hh.


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