summaryrefslogtreecommitdiff
path: root/rk3_8.inc
diff options
context:
space:
mode:
authorErich Eckner <git@eckner.net>2015-08-04 15:55:25 +0200
committerErich Eckner <git@eckner.net>2015-08-04 15:55:25 +0200
commit9a20545e798a68ebd73f92ca0f19a2cfbebf5983 (patch)
tree5dae20a84b7c2127d0f182f99a2f79c554304517 /rk3_8.inc
parente425856940fd5237241d315c26d61b5f41e23ad4 (diff)
downloadPlasmapropagation-9a20545e798a68ebd73f92ca0f19a2cfbebf5983.tar.xz
alle Runge-Kuttas in .inc ausgelagert,
minimales dT auf dX gesetzt (sonst Bug z.B. in AY)
Diffstat (limited to 'rk3_8.inc')
-rw-r--r--rk3_8.inc47
1 files changed, 47 insertions, 0 deletions
diff --git a/rk3_8.inc b/rk3_8.inc
new file mode 100644
index 0000000..3419dab
--- /dev/null
+++ b/rk3_8.inc
@@ -0,0 +1,47 @@
+ felders[2].liKo(
+ felders[aktuelleFelder],
+ felders[aktuelleFelder],
+ 1/3 * dT
+ );
+ felders[2].berechneAbleitungen(dX,iDX,pDNMax);
+
+ if pruefeMaxDT(2,dTMax,dT,dTMin) then
+ continue;
+
+ felders[3].liKo(
+ felders[aktuelleFelder],
+ felders[aktuelleFelder],
+ felders[2],
+ -1/3 * dT,
+ 1 * dT
+ );
+ felders[3].berechneAbleitungen(dX,iDX,pDNMax);
+
+ if pruefeMaxDT(3,dTMax,dT,dTMin) then
+ continue;
+
+ felders[4].liKo(
+ felders[aktuelleFelder],
+ felders[aktuelleFelder],
+ felders[2],
+ felders[3],
+ 1 * dT,
+ -1 * dT,
+ 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/8 * dT,
+ 3/8 * dT,
+ 3/8 * dT,
+ 1/8 * dT
+ );