aboutsummaryrefslogtreecommitdiff
path: root/src/RK45.c
Commit message (Collapse)AuthorAge
* MoL Updateeschnett2013-01-22
| | | | | | | | | | | | | | | | | | New integrator Euler. This is an explicit, first-order method, mostly useful for debugging. New integrators AB (Adams-Bashforth) with various orders. These are explicit integrators using several past timelevels to provide higher-order integration with a single RHS evaluation each. Introduce LinearCombination, a generic routine to calculate linear combinations of grid functions. This simplifies existing code, and can be overloaded if MoL should run on a device (e.g. with OpenCL). Replace cctk_lsh with cctk_ash where necessary. git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@190 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
* Set variables in error branch of conditionals to avoid compiler warningshinder2012-11-26
| | | | | | The compiler doesn't know that CCTK_WARN(0,…) is fatal. git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@189 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
* Remove unused variable declarationshinder2012-11-26
| | | | git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@187 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
* Correct OpenMP parallelisationeschnett2012-10-29
| | | | | | | Declare variables where they are first used. git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@183 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
* Parallelise loops with OpenMP.schnetter2008-09-23
| | | | git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@129 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
* Implement RK45 Cash-Karp integrator in MoL.schnetter2006-02-19
| | | | | | | | | | This integrator is similar to the existing RK45 integrator. It also supports adaptive time stepping, but uses slightly different coefficients. The Numerical Recipes say that it has "slightly better error properties". git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@110 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
* Add const and restrict qualifiers to the pointers.schnetter2005-12-11
| | | | | | | | | | Simplify some complex arithmetic. Initialise the error variable in the RK45 integrator only after the last iteration. git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@104 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
* Small optimisation: substitute division by multiplication with the inverse.tradke2005-08-29
| | | | git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@91 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
* Runge-Kutta (Fehlberg) 45 with error estimation.hawke2004-09-06
Fourth order accurate evolution with an additional fifth order step for error estimation. How much sense the error makes is unclear to me, but hey. For the moment the error is stored in an internal MoL array ErrorEstimate; there is one per evolved variable. At a later point this may be moved out to user thorns who can register their own etc. As the implementation uses 6 evaluations of the RHS (necessary) and 6 levels of scratch space (one more than necessary - laziness kicked in) then this is very expensive. This is a partial fix for PR/1840. git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@74 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b