diff options
author | Erich Eckner <git@eckner.net> | 2015-08-04 15:55:25 +0200 |
---|---|---|
committer | Erich Eckner <git@eckner.net> | 2015-08-04 15:55:25 +0200 |
commit | 9a20545e798a68ebd73f92ca0f19a2cfbebf5983 (patch) | |
tree | 5dae20a84b7c2127d0f182f99a2f79c554304517 /rk4.inc | |
parent | e425856940fd5237241d315c26d61b5f41e23ad4 (diff) | |
download | Plasmapropagation-9a20545e798a68ebd73f92ca0f19a2cfbebf5983.tar.xz |
alle Runge-Kuttas in .inc ausgelagert,
minimales dT auf dX gesetzt (sonst Bug z.B. in AY)
Diffstat (limited to 'rk4.inc')
-rw-r--r-- | rk4.inc | 41 |
1 files changed, 41 insertions, 0 deletions
@@ -0,0 +1,41 @@ + felders[2].liKo( + felders[aktuelleFelder], + felders[aktuelleFelder], + 0.5 * dT + ); + felders[2].berechneAbleitungen(dX,iDX,pDNMax); + + if pruefeMaxDT(2,dTMax,dT,dTMin) then + continue; + + felders[3].liKo( + felders[aktuelleFelder], + felders[2], + 0.5 * dT + ); + felders[3].berechneAbleitungen(dX,iDX,pDNMax); + + if pruefeMaxDT(3,dTMax,dT,dTMin) then + continue; + + felders[4].liKo( + felders[aktuelleFelder], + felders[3], + 1 * dT + ); + felders[4].berechneAbleitungen(dX,iDX,pDNMax); + + if pruefeMaxDT(4,dTMax,dT,dTMin) then + continue; + + felders[1-aktuelleFelder].liKo( + felders[aktuelleFelder], + felders[aktuelleFelder], + felders[2], + felders[3], + felders[4], + 1/6 * dT, + 1/3 * dT, + 1/3 * dT, + 1/6 * dT + ); |