- Authors:
- Peter Csizmadia, Andras Laszlo
Introduction
Fourth order precision Adaptive Mesh Refinement applications (PDE implementations).
Parts of a physical model
The main parts are the following:
-
A partial differential equation (PDE), implemented by overriding
-
An initial condition. It should be a
-
gridripper::amr1d::InitCond
implementation, but it is usually recommended to override either
-
gridripper::amr1d::FuncInitCond or
-
gridripper::amr1d::initcond::UserDef.
If the initial condition is the solution of an ordinary differential equation, then one of the following InitCond implementations can be used:
-
gridripper::amr1d::initcond::ODEShootInit or
-
gridripper::amr1d::initcond::ODERelaxInit.
The ODE should be an implementation of
-
gridripper::odesolver::ODE.
-
Parameters specified in the input file. They can be queried using the
argument of the PDE and InitCond constructors.
Expressions
The input file can contain mathematical expressions in its constants and definitions sections, these are interpreted and evaluated by the gridripper::math::expr package. Hence one can simply use UserDef as initial condition instead of creating his/her own implementation. If overriding is still necessary, the formulas in the input file can be accessed using the fnCollection field.
Math
Mathematics related classes and methods are available in the gridripper::math package.
-
Numerical integration.
-
Interpolation.
-
Matrix operations.
-
Special functions like Lambert W and a smooth step function together with its first and second derivatives.