HomeCFD & NumericsODE Stability Regions

📐 ODE Solver Stability Regions

Visualize stability regions in the complex plane for popular ODE integrators (Runge-Kutta, Euler, etc.).

⚡ Fortran 90 Engine Double Precision (IEEE 754) ✓ ISO / ASME Validated
ODE Solver Stability Regions Cfd
📊 Solver Telemetry ● ACTIVE
👁️ Views 36
⚡ Solves 31
💾 Downloads 622 📦 Fortran Code 4.4 KB
📅 Released Jun 2026
⏱️ Latency < 1 ms
⚡ TOOLS & REPORTS:
💾 Download Fortran 90

📥 Time-Stepping Scheme & Test Eigenvalue

📖 Stability Domain $|G(z)| \le 1$: $$\text{Test Equation: } \frac{du}{dt} = \lambda u \implies u^{n+1} = G(\lambda \Delta t)\, u^n$$ Amplification Factor:
$$G(z) = 1 + z + z^2/2 + z^3/6 + z^4/24$$

Re(z) intercept: [-2.785, 0]. Imaginary intercept: [-2.828*i, +2.828*i]. Ideal for convective CFD waves.

STABLE ✅
Eigenvalue Status
0.1295
Amplification $|G(z)|$
-1.50 + 0.80i
Probe $z = \lambda \Delta t$
Conditional
Global Property
💡 Complex Stability Diagnostic
For Runge-Kutta 4th Order (Classical RK4) at test point $z = \mathbf{-1.5 + 0.8 i}$, the amplification magnitude is $|G(z)| = \mathbf{0.1295}$. The eigenvalue lies strictly inside the stable region ($|G| \le 1$). Numerical errors will decay exponentially at a rate of 87.0% per time step.

📈 Stability Boundary $|G(z)| = 1$ in Complex $z$-Plane

Shaded Area = Stable Region
🔍 View Raw GNU Fortran Double-Precision Solver Output
SCHEME_1=Forward Euler (Explicit)
FORMULA_1=G = 1 + z
REGION_1=Disk center(-1,0) radius 1
PROBE_1= 9.43398113E-01
STABLE_1=YES
CONTOUR_1_START
  0.00000000,  0.00000000
 -0.00197327,  0.06279052
 -0.00788530,  0.12533323
 -0.01771275,  0.18738131
 -0.03141684,  0.24868989
 -0.04894348,  0.30901699
 -0.07022351,  0.36812455
 -0.09517295,  0.42577929
 -0.12369332,  0.48175367
 -0.15567207,  0.53582679
 -0.19098301,  0.58778525
 -0.22948676,  0.63742399
 -0.27103137,  0.68454711
 -0.31545289,  0.72896863
 -0.36257601,  0.77051324
 -0.41221475,  0.80901699
 -0.46417321,  0.84432793
 -0.51824633,  0.87630668
 -0.57422071,  0.90482705
 -0.63187545,  0.92977649
 -0.69098301,  0.95105652
 -0.75131011,  0.96858316
 -0.81261869,  0.98228725
 -0.87466677,  0.99211470
 -0.93720948,  0.99802673
 -1.00000000,  1.00000000
 -1.06279052,  0.99802673
 -1.12533323,  0.99211470
 -1.18738131,  0.98228725
 -1.24868989,  0.96858316
 -1.30901699,  0.95105652
 -1.36812455,  0.92977649
 -1.42577929,  0.90482705
 -1.48175367,  0.87630668
 -1.53582679,  0.84432793
 -1.58778525,  0.80901699
 -1.63742399,  0.77051324
 -1.68454711,  0.72896863
 -1.72896863,  0.68454711
 -1.77051324,  0.63742399
 -1.80901699,  0.58778525
 -1.84432793,  0.53582679
 -1.87630668,  0.48175367
 -1.90482705,  0.42577929
 -1.92977649,  0.36812455
 -1.95105652,  0.30901699
 -1.96858316,  0.24868989
 -1.98228725,  0.18738131
 -1.99211470,  0.12533323
 -1.99802673,  0.06279052
 -2.00000000, -0.00000000
 -1.99802673, -0.06279052
 -1.99211470, -0.12533323
 -1.98228725, -0.18738131
 -1.96858316, -0.24868989
 -1.95105652, -0.30901699
 -1.92977649, -0.36812455
 -1.90482705, -0.42577929
 -1.87630668, -0.48175367
 -1.84432793, -0.53582679
 -1.80901699, -0.58778525
 -1.77051324, -0.63742399
 -1.72896863, -0.68454711
 -1.68454711, -0.72896863
 -1.63742399, -0.77051324
 -1.58778525, -0.80901699
 -1.53582679, -0.84432793
 -1.48175367, -0.87630668
 -1.42577929, -0.90482705
 -1.36812455, -0.92977649
 -1.30901699, -0.95105652
 -1.24868989, -0.96858316
 -1.18738131, -0.98228725
 -1.12533323, -0.99211470
 -1.06279052, -0.99802673
 -1.00000000, -1.00000000
 -0.93720948, -0.99802673
 -0.87466677, -0.99211470
 -0.81261869, -0.98228725
 -0.75131011, -0.96858316
 -0.69098301, -0.95105652
 -0.63187545, -0.92977649
 -0.57422071, -0.90482705
 -0.51824633, -0.87630668
 -0.46417321, -0.84432793
 -0.41221475, -0.80901699
 -0.36257601, -0.77051324
 -0.31545289, -0.72896863
 -0.27103137, -0.68454711
 -0.22948676, -0.63742399
 -0.19098301, -0.58778525
 -0.15567207, -0.53582679
 -0.12369332, -0.48175367
 -0.09517295, -0.42577929
 -0.07022351, -0.36812455
 -0.04894348, -0.30901699
 -0.03141684, -0.24868989
 -0.01771275, -0.18738131
 -0.00788530, -0.12533323
 -0.00197327, -0.06279052
  0.00000000,  0.00000000
CONTOUR_1_END
SCHEME_2=Backward Euler (Implicit)
FORMULA_2=G = 1 / (1 - z)
REGION_2=Exterior of disk center(1,0) radius 1
PROBE_2= 3.80969659E-01
STABLE_2=YES
CONTOUR_2_START
  2.00000000,  0.00000000
  1.99802673,  0.06279052
  1.99211470,  0.12533323
  1.98228725,  0.18738131
  1.96858316,  0.24868989
  1.95105652,  0.30901699
  1.92977649,  0.36812455
  1.90482705,  0.42577929
  1.87630668,  0.48175367
  1.84432793,  0.53582679
  1.80901699,  0.58778525
  1.77051324,  0.63742399
  1.72896863,  0.68454711
  1.68454711,  0.72896863
  1.63742399,  0.77051324
  1.58778525,  0.80901699
  1.53582679,  0.84432793
  1.48175367,  0.87630668
  1.42577929,  0.90482705
  1.36812455,  0.92977649
  1.30901699,  0.95105652
  1.24868989,  0.96858316
  1.18738131,  0.98228725
  1.12533323,  0.99211470
  1.06279052,  0.99802673
  1.00000000,  1.00000000
  0.93720948,  0.99802673
  0.87466677,  0.99211470
  0.81261869,  0.98228725
  0.75131011,  0.96858316
  0.69098301,  0.95105652
  0.63187545,  0.92977649
  0.57422071,  0.90482705
  0.51824633,  0.87630668
  0.46417321,  0.84432793
  0.41221475,  0.80901699
  0.36257601,  0.77051324
  0.31545289,  0.72896863
  0.27103137,  0.68454711
  0.22948676,  0.63742399
  0.19098301,  0.58778525
  0.15567207,  0.53582679
  0.12369332,  0.48175367
  0.09517295,  0.42577929
  0.07022351,  0.36812455
  0.04894348,  0.30901699
  0.03141684,  0.24868989
  0.01771275,  0.18738131
  0.00788530,  0.12533323
  0.00197327,  0.06279052
  0.00000000, -0.00000000
  0.00197327, -0.06279052
  0.00788530, -0.12533323
  0.01771275, -0.18738131
  0.03141684, -0.24868989
  0.04894348, -0.30901699
  0.07022351, -0.36812455
  0.09517295, -0.42577929
  0.12369332, -0.48175367
  0.15567207, -0.53582679
  0.19098301, -0.58778525
  0.22948676, -0.63742399
  0.27103137, -0.68454711
  0.31545289, -0.72896863
  0.36257601, -0.77051324
  0.41221475, -0.80901699
  0.46417321, -0.84432793
  0.51824633, -0.87630668
  0.57422071, -0.90482705
  0.63187545, -0.92977649
  0.69098301, -0.95105652
  0.75131011, -0.96858316
  0.81261869, -0.98228725
  0.87466677, -0.99211470
  0.93720948, -0.99802673
  1.00000000, -1.00000000
  1.06279052, -0.99802673
  1.12533323, -0.99211470
  1.18738131, -0.98228725
  1.24868989, -0.96858316
  1.30901699, -0.95105652
  1.36812455, -0.92977649
  1.42577929, -0.90482705
  1.48175367, -0.87630668
  1.53582679, -0.84432793
  1.58778525, -0.80901699
  1.63742399, -0.77051324
  1.68454711, -0.72896863
  1.72896863, -0.68454711
  1.77051324, -0.63742399
  1.80901699, -0.58778525
  1.84432793, -0.53582679
  1.87630668, -0.48175367
  1.90482705, -0.42577929
  1.92977649, -0.36812455
  1.95105652, -0.30901699
  1.96858316, -0.24868989
  1.98228725, -0.18738131
  1.99211470, -0.12533323
  1.99802673, -0.06279052
  2.00000000,  0.00000000
CONTOUR_2_END
SCHEME_3=Crank-Nicolson
FORMULA_3=G = (2 + z) / (2 - z)
REGION_3=Left half-plane Re(z) <= 0
PROBE_3= 2.62765622E-01
STABLE_3=YES
CONTOUR_3_START
  0.00000000, -4.00000000
  0.00000000, -3.92000000
  0.00000000, -3.84000000
  0.00000000, -3.76000000
  0.00000000, -3.68000000
  0.00000000, -3.60000000
  0.00000000, -3.52000000
  0.00000000, -3.44000000
  0.00000000, -3.36000000
  0.00000000, -3.28000000
  0.00000000, -3.20000000
  0.00000000, -3.12000000
  0.00000000, -3.04000000
  0.00000000, -2.96000000
  0.00000000, -2.88000000
  0.00000000, -2.80000000
  0.00000000, -2.72000000
  0.00000000, -2.64000000
  0.00000000, -2.56000000
  0.00000000, -2.48000000
  0.00000000, -2.40000000
  0.00000000, -2.32000000
  0.00000000, -2.24000000
  0.00000000, -2.16000000
  0.00000000, -2.08000000
  0.00000000, -2.00000000
  0.00000000, -1.92000000
  0.00000000, -1.84000000
  0.00000000, -1.76000000
  0.00000000, -1.68000000
  0.00000000, -1.60000000
  0.00000000, -1.52000000
  0.00000000, -1.44000000
  0.00000000, -1.36000000
  0.00000000, -1.28000000
  0.00000000, -1.20000000
  0.00000000, -1.12000000
  0.00000000, -1.04000000
  0.00000000, -0.96000000
  0.00000000, -0.88000000
  0.00000000, -0.80000000
  0.00000000, -0.72000000
  0.00000000, -0.64000000
  0.00000000, -0.56000000
  0.00000000, -0.48000000
  0.00000000, -0.40000000
  0.00000000, -0.32000000
  0.00000000, -0.24000000
  0.00000000, -0.16000000
  0.00000000, -0.08000000
  0.00000000,  0.00000000
  0.00000000,  0.08000000
  0.00000000,  0.16000000
  0.00000000,  0.24000000
  0.00000000,  0.32000000
  0.00000000,  0.40000000
  0.00000000,  0.48000000
  0.00000000,  0.56000000
  0.00000000,  0.64000000
  0.00000000,  0.72000000
  0.00000000,  0.80000000
  0.00000000,  0.88000000
  0.00000000,  0.96000000
  0.00000000,  1.04000000
  0.00000000,  1.12000000
  0.00000000,  1.20000000
  0.00000000,  1.28000000
  0.00000000,  1.36000000
  0.00000000,  1.44000000
  0.00000000,  1.52000000
  0.00000000,  1.60000000
  0.00000000,  1.68000000
  0.00000000,  1.76000000
  0.00000000,  1.84000000
  0.00000000,  1.92000000
  0.00000000,  2.00000000
  0.00000000,  2.08000000
  0.00000000,  2.16000000
  0.00000000,  2.24000000
  0.00000000,  2.32000000
  0.00000000,  2.40000000
  0.00000000,  2.48000000
  0.00000000,  2.56000000
  0.00000000,  2.64000000
  0.00000000,  2.72000000
  0.00000000,  2.80000000
  0.00000000,  2.88000000
  0.00000000,  2.96000000
  0.00000000,  3.04000000
  0.00000000,  3.12000000
  0.00000000,  3.20000000
  0.00000000,  3.28000000
  0.00000000,  3.36000000
  0.00000000,  3.44000000
  0.00000000,  3.52000000
  0.00000000,  3.60000000
  0.00000000,  3.68000000
  0.00000000,  3.76000000
  0.00000000,  3.84000000
  0.00000000,  3.92000000
  0.00000000,  4.00000000
CONTOUR_3_END
SCHEME_4=Leapfrog (Midpoint)
FORMULA_4=G = z +/- sqrt(z^2 + 1)
REGION_4=Imaginary segment [-i, i]
PROBE_4= 3.57676744E+00
STABLE_4=NO
CONTOUR_4_START
  0.00000000, -1.00000000
  0.00000000, -0.98000000
  0.00000000, -0.96000000
  0.00000000, -0.94000000
  0.00000000, -0.92000000
  0.00000000, -0.90000000
  0.00000000, -0.88000000
  0.00000000, -0.86000000
  0.00000000, -0.84000000
  0.00000000, -0.82000000
  0.00000000, -0.80000000
  0.00000000, -0.78000000
  0.00000000, -0.76000000
  0.00000000, -0.74000000
  0.00000000, -0.72000000
  0.00000000, -0.70000000
  0.00000000, -0.68000000
  0.00000000, -0.66000000
  0.00000000, -0.64000000
  0.00000000, -0.62000000
  0.00000000, -0.60000000
  0.00000000, -0.58000000
  0.00000000, -0.56000000
  0.00000000, -0.54000000
  0.00000000, -0.52000000
  0.00000000, -0.50000000
  0.00000000, -0.48000000
  0.00000000, -0.46000000
  0.00000000, -0.44000000
  0.00000000, -0.42000000
  0.00000000, -0.40000000
  0.00000000, -0.38000000
  0.00000000, -0.36000000
  0.00000000, -0.34000000
  0.00000000, -0.32000000
  0.00000000, -0.30000000
  0.00000000, -0.28000000
  0.00000000, -0.26000000
  0.00000000, -0.24000000
  0.00000000, -0.22000000
  0.00000000, -0.20000000
  0.00000000, -0.18000000
  0.00000000, -0.16000000
  0.00000000, -0.14000000
  0.00000000, -0.12000000
  0.00000000, -0.10000000
  0.00000000, -0.08000000
  0.00000000, -0.06000000
  0.00000000, -0.04000000
  0.00000000, -0.02000000
  0.00000000,  0.00000000
  0.00000000,  0.02000000
  0.00000000,  0.04000000
  0.00000000,  0.06000000
  0.00000000,  0.08000000
  0.00000000,  0.10000000
  0.00000000,  0.12000000
  0.00000000,  0.14000000
  0.00000000,  0.16000000
  0.00000000,  0.18000000
  0.00000000,  0.20000000
  0.00000000,  0.22000000
  0.00000000,  0.24000000
  0.00000000,  0.26000000
  0.00000000,  0.28000000
  0.00000000,  0.30000000
  0.00000000,  0.32000000
  0.00000000,  0.34000000
  0.00000000,  0.36000000
  0.00000000,  0.38000000
  0.00000000,  0.40000000
  0.00000000,  0.42000000
  0.00000000,  0.44000000
  0.00000000,  0.46000000
  0.00000000,  0.48000000
  0.00000000,  0.50000000
  0.00000000,  0.52000000
  0.00000000,  0.54000000
  0.00000000,  0.56000000
  0.00000000,  0.58000000
  0.00000000,  0.60000000
  0.00000000,  0.62000000
  0.00000000,  0.64000000
  0.00000000,  0.66000000
  0.00000000,  0.68000000
  0.00000000,  0.70000000
  0.00000000,  0.72000000
  0.00000000,  0.74000000
  0.00000000,  0.76000000
  0.00000000,  0.78000000
  0.00000000,  0.80000000
  0.00000000,  0.82000000
  0.00000000,  0.84000000
  0.00000000,  0.86000000
  0.00000000,  0.88000000
  0.00000000,  0.90000000
  0.00000000,  0.92000000
  0.00000000,  0.94000000
  0.00000000,  0.96000000
  0.00000000,  0.98000000
  0.00000000,  1.00000000
CONTOUR_4_END
SCHEME_5=RK2 (Heun)
FORMULA_5=G = 1 + z + z^2/2
REGION_5=Closed region (computed numerically)
PROBE_5= 5.03015904E-01
STABLE_5=YES
CONTOUR_5_START
 -0.00000000,  0.00000000
 -0.00000195,  0.06291454
 -0.00003158,  0.12632539
 -0.00016249,  0.19072921
 -0.00052509,  0.25662154
 -0.00131825,  0.32449137
 -0.00282520,  0.39480943
 -0.00543290,  0.46800775
 -0.00965241,  0.54444820
 -0.01613613,  0.62437900
 -0.02568558,  0.70788086
 -0.03924200,  0.79480814
 -0.05785266,  0.88473524
 -0.08261005,  0.97692107
 -0.11456817,  1.07030323
 -0.15464753,  1.16352786
 -0.20354509,  1.25501212
 -0.26166384,  1.34302848
 -0.32907087,  1.42579699
 -0.40548519,  1.50157300
 -0.49029112,  1.56872264
 -0.58256989,  1.62578294
 -0.68114298,  1.67150706
 -0.78462144,  1.70489687
 -0.89145802,  1.72522531
 -1.00000000,  1.73205081
 -1.10854198,  1.72522531
 -1.21537856,  1.70489687
 -1.31885702,  1.67150706
 -1.41743011,  1.62578294
 -1.50970888,  1.56872264
 -1.59451481,  1.50157300
 -1.67092913,  1.42579699
 -1.73833616,  1.34302848
 -1.79645491,  1.25501212
 -1.84535247,  1.16352786
 -1.88543183,  1.07030323
 -1.91738995,  0.97692107
 -1.94214734,  0.88473524
 -1.96075800,  0.79480814
 -1.97431442,  0.70788086
 -1.98386387,  0.62437900
 -1.99034759,  0.54444820
 -1.99456710,  0.46800775
 -1.99717480,  0.39480943
 -1.99868175,  0.32449137
 -1.99947491,  0.25662154
 -1.99983751,  0.19072921
 -1.99996842,  0.12632539
 -1.99999805,  0.06291454
 -2.00000000, -0.00000000
 -1.99999805, -0.06291454
 -1.99996842, -0.12632539
 -1.99983751, -0.19072921
 -1.99947491, -0.25662154
 -1.99868175, -0.32449137
 -1.99717480, -0.39480943
 -1.99456710, -0.46800775
 -1.99034759, -0.54444820
 -1.98386387, -0.62437900
 -1.97431442, -0.70788086
 -1.96075800, -0.79480814
 -1.94214734, -0.88473524
 -1.91738995, -0.97692107
 -1.88543183, -1.07030323
 -1.84535247, -1.16352786
 -1.79645491, -1.25501212
 -1.73833616, -1.34302848
 -1.67092913, -1.42579699
 -1.59451481, -1.50157300
 -1.50970888, -1.56872264
 -1.41743011, -1.62578294
 -1.31885702, -1.67150706
 -1.21537856, -1.70489687
 -1.10854198, -1.72522531
 -1.00000000, -1.73205081
 -0.89145802, -1.72522531
 -0.78462144, -1.70489687
 -0.68114298, -1.67150706
 -0.58256989, -1.62578294
 -0.49029112, -1.56872264
 -0.40548519, -1.50157300
 -0.32907087, -1.42579699
 -0.26166384, -1.34302848
 -0.20354509, -1.25501212
 -0.15464753, -1.16352786
 -0.11456817, -1.07030323
 -0.08261005, -0.97692107
 -0.05785266, -0.88473524
 -0.03924200, -0.79480814
 -0.02568558, -0.70788086
 -0.01613613, -0.62437900
 -0.00965241, -0.54444820
 -0.00543290, -0.46800775
 -0.00282520, -0.39480943
 -0.00131825, -0.32449137
 -0.00052509, -0.25662154
 -0.00016249, -0.19072921
 -0.00003158, -0.12632539
 -0.00000195, -0.06291454
 -0.00000000,  0.00000000
CONTOUR_5_END
SCHEME_6=RK4 (Classical)
FORMULA_6=G = 1 + z + z^2/2 + z^3/6 + z^4/24
REGION_6=Closed region (computed numerically)
PROBE_6= 1.29530364E-01
STABLE_6=YES
CONTOUR_6_START
 -0.00000000,  0.00000000
  0.00000000,  0.06291467
  0.00000003,  0.12632938
  0.00000033,  0.19076027
  0.00000197,  0.25675687
  0.00000807,  0.32492232
  0.00002626,  0.39593840
  0.00007348,  0.47059886
  0.00018531,  0.54985653
  0.00043447,  0.63489502
  0.00096880,  0.72724640
  0.00209249,  0.82900301
  0.00445166,  0.94324289
  0.00950272,  1.07501121
  0.02089314,  1.23404782
  0.04966853,  1.44474478
  0.13661916,  1.79102521
  0.23576070,  2.24784037
  0.19909886,  2.54821478
  0.08736681,  2.74637506
 -0.06701557,  2.87143081
 -0.24740543,  2.93116231
 -0.44175701,  2.92641224
 -0.63920380,  2.85599597
 -0.82861860,  2.72402933
 -1.00000000,  2.55766528
 -1.15133152,  2.40534561
 -1.28903257,  2.28792839
 -1.41912736,  2.19714255
 -1.54470870,  2.12150031
 -1.66705781,  2.05299283
 -1.78646751,  1.98639019
 -1.90262792,  1.91818197
 -2.01483003,  1.84596897
 -2.12210646,  1.76815686
 -2.22335272,  1.68380057
 -2.31744197,  1.59251378
 -2.40333393,  1.49439885
 -2.48017428,  1.38997617
 -2.54737906,  1.28010329
 -2.60469776,  1.16588117
 -2.65224805,  1.04854850
 -2.69051540,  0.92936870
 -2.72031324,  0.80951796
 -2.74270525,  0.68998582
 -2.75889901,  0.57150093
 -2.77012748,  0.45449149
 -2.77753694,  0.33908331
 -2.78209596,  0.22513107
 -2.78453198,  0.11227324
 -2.78529356, -0.00000000
 -2.78453198, -0.11227324
 -2.78209596, -0.22513107
 -2.77753694, -0.33908331
 -2.77012748, -0.45449149
 -2.75889901, -0.57150093
 -2.74270525, -0.68998582
 -2.72031324, -0.80951796
 -2.69051540, -0.92936870
 -2.65224805, -1.04854850
 -2.60469776, -1.16588117
 -2.54737906, -1.28010329
 -2.48017428, -1.38997617
 -2.40333393, -1.49439885
 -2.31744197, -1.59251378
 -2.22335272, -1.68380057
 -2.12210646, -1.76815686
 -2.01483003, -1.84596897
 -1.90262792, -1.91818197
 -1.78646751, -1.98639019
 -1.66705781, -2.05299283
 -1.54470870, -2.12150031
 -1.41912736, -2.19714255
 -1.28903257, -2.28792839
 -1.15133152, -2.40534561
 -1.00000000, -2.55766528
 -0.82861860, -2.72402933
 -0.63920380, -2.85599597
 -0.44175701, -2.92641224
 -0.24740543, -2.93116231
 -0.06701557, -2.87143081
  0.08736681, -2.74637506
  0.19909886, -2.54821478
  0.23576070, -2.24784037
  0.13661916, -1.79102521
  0.04966853, -1.44474478
  0.02089314, -1.23404782
  0.00950272, -1.07501121
  0.00445166, -0.94324289
  0.00209249, -0.82900301
  0.00096880, -0.72724640
  0.00043447, -0.63489502
  0.00018531, -0.54985653
  0.00007348, -0.47059886
  0.00002626, -0.39593840
  0.00000807, -0.32492232
  0.00000197, -0.25675687
  0.00000033, -0.19076027
  0.00000003, -0.12632938
  0.00000000, -0.06291467
 -0.00000000,  0.00000000
CONTOUR_6_END
💾 Download .f90 Code

📘 Calculation Methodology: ODE Time-Integration Stability Regions

Mathematical Model & Theory

For the model test equation $dy/dt = \lambda y$ ($\lambda \in \mathbb{C}$), a time-integration scheme is numerically stable if the amplification factor $R(z)$ ($z = \lambda \Delta t$) lies within the unit disk:

$$|R(z)| \le 1, \quad z = \lambda \Delta t = \text{Re}(z) + i \text{Im}(z)$$
$$\text{RK4: } R(z) = 1 + z + \frac{z^2}{2} + \frac{z^3}{6} + \frac{z^4}{24}, \quad \text{Euler: } R(z) = 1 + z$$

Assumptions

  • Semi-discrete ODE system from spatial discretization.
  • Eigenvalues of the spatial operator must lie strictly inside the stability domain.

Academic References

  1. Hairer, E., & Wanner, G.: Solving ODEs I & II, Springer.
  2. LeVeque, R. J.: Finite Difference Methods, SIAM.

Worked Engineering Example

Problem Statement:
An acoustic wave mode has imaginary eigenvalue $\lambda = i 250\text{ rad/s}$. RK4 has imaginary stability limit $|z_{imag}| \le 2.828$. Calculate maximum stable $\Delta t$.

Step-by-step Solution:
1. $250 \cdot \Delta t \le 2.828 \implies \Delta t_{max} = 2.828 / 250 = 0.01131\text{ s} = 11.31\text{ ms}$.
Final Result:
Maximum stable time step is $\Delta t = \mathbf{11.31\text{ ms}}$.