summaryrefslogtreecommitdiff
path: root/rk4.inc
diff options
context:
space:
mode:
Diffstat (limited to 'rk4.inc')
-rw-r--r--rk4.inc41
1 files changed, 41 insertions, 0 deletions
diff --git a/rk4.inc b/rk4.inc
new file mode 100644
index 0000000..4b1cc86
--- /dev/null
+++ b/rk4.inc
@@ -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
+ );