Template Class ErrorNorm

Inheritance Relationships

Derived Type

Class Documentation

template<class ScalarT, typename IdxT>
class ErrorNorm

Interface for error norms. Used to calculate the err parameter in StepController::nextStep based on a residual state error vector.

Subclassed by AnalysisManager::NativeDynamicSolver::InfNorm< ScalarT, IdxT >

Public Functions

virtual RealT errorNorm(State &err, State &y, State &yprev, GridKit::LinearAlgebra::VectorHandler<ScalarT, IdxT> &handler, GridKit::memory::MemorySpace memspace) const = 0

Calculate an error to be used by a step controller. Typically, an error > 1 indicates an error which does not meet tolerances, while an error < 1 indicates an error which meets tolerances. For that reason, tolerances should be included in the calculation of the error.

Todo:

Allow this method to fail, since it will likely involve linear algebra calls.

Parameters:
  • err – The state error residual being measured.

  • y – The state that the error was calculated from. Can be used for proper relative error normalization.

  • yprev – The state from the previous step. Can be used for proper relative error normalization.

  • handler – A vector handler which can be used to facilitate vector operations.

  • memspace – The memory space which vector operations should be performed in/.

Returns:

The error.