Project

Literature review ODE Stability

When does a ODE become unstable?

Increments of time and space appear throughout the differential equations. Stability is achieved for the Explicit approach problem by limiting the value of time increment(Δt) for a particular value of space increment(Δx). If the value of Δt is larger than the limit imposed the system becomes unstable. This is the drawback with the explicit method.

The sample code for the explicit approach is shown below:

\"\"\"
Explicit Euler Program
\"\"\"
import matplotlib.pyplot as plt
import math

def f(t,y):
	return -1000*y -math.exp(-t)

t_start = 0
t_end =0.1
n =500

dt = (t_end - t_start)/(n-1)

t=0
y_old = 0

y_new=[]
y_analy=[]


for i in range(0, n):
	y_new.append(y_old + dt*f(t,y_old))
	y_old=y_new[i]
	t=t+dt

print(\'y_old =\',y_old)
print(\'t =\',t)
plt.plot(y_new)
plt.xlabel(\'Time\')
plt.ylabel(\'y_new\')
plt.show()

The output we get is shown below:

For the same problem when we increment the value of Δt (from 0.1s to 1s) the result will be:

How does stability affect engineering simulations?

If the value of time increment(Δt) is larger than the limit imposed by the stability criterion the time marching procedure will become unstable. This leads to cases such as number going to infinity or it will take the square root of the negative numbers. If the value of Δt is kept very small it will result in longer computer running times to make calculations over a given interval of time. However there are no such stability restrictions for implicit schemes. Stability can be maintained over large values of Δt.

Can stability condition be derived for all types of problems?

We can derive the stability conditions for all types of problems. This generally depends on the nature of the given function. Stability is difficult to investigate for non linear ODE systems. The difficulty is exhibited in terms of stiffness attribute. Sometimes in order to achieve stability for a given ODE we make use of numerical diffusion. Numerical diffusion is a mathematical term which ensures that roundoff and other errors in the calculation get spread out and do not add up to cause the calculation to \"blow up\".

The stability conditions we use are as follows:

  1. Eigen Value stability condition
  2. Von Neumann stability condition
Your portfolio, next

Ship work like this
in your own course.

Talk to a career counsellor

Free 20-minute call. We'll map the right course to where you want to work.

By submitting you agree to our Terms and Privacy Policy.

Talk to a career counsellor

Free 20-minute call. We'll map the right course to where you want to work.

By submitting you agree to our Terms and Privacy Policy.