Von neumann stability analysis

In summary, we are analyzing a hyperbolic PDE using central difference approximations to find a stable scheme. This requires us to use Von Neumann stability analysis and assume a solution of the form phi = A(T)*exp(ikX). The stability condition is that the modulus of sigma, which is equal to Aj+1/Aj, must be less than or equal to one. This leads to a quadratic equation in z, where z is a function of alpha. Solving for z and using the definition of alpha, we can obtain a constraint on c^2dt^2/dx^2, which is the required condition for stability. However, there is an additional condition that arises from the quadratic equation, which may not
  • #1
deadringer
33
0
We have a hyperbolic pde (in fact the 1d wave equation) with indep vars X, T
We use the central difference approximations for the second derivatives wrt X, T to get

[phi(Xn, Tj+1) -2phi(Xn, Tj) + phi(Xn, Tj+1)]/(dT^2) = [c^2][phi(Xn-1, Tj) -2phi(Xn, Tj) + phi(Xn=1, Tj)]/(dX^2)

where dX and dT are the changes in the independent variables between steps, c is the speed of the wave.

We are supposed to show that the scheme is stable only if cdT/dX = lambda<=1

We have to apply Von Neumann stability analysis. This usually means assuming a solution of the form phi = A(T)*exp(ikX)

Xn = ndX

therefore phi(Xn, Tj) = Aj*exp(ikndX)

The stability condition is that sigma = Aj+1/Aj and we want the modulus of sigma is less than or equal to one.

The first problem I have is that the above PDE finite difference equation has phi's with three different times in it; j-1,j,j+1. Therefore I tried using two differenct sigma factors sigma1 = Aj/Aj-1 and sigma2 = Aj+1/Aj
I do not think that you can assume that these are the same. I think that for stability you need the modulus of both sigmas is less than or equal to one.

the original finite difference equation gives us

sigma1 = 1/[2(lambda^2)cos(kdX) +2(1-(lambda^2)) - sigma2)

I set the modulus of this is less than or equal to one (call this stage A), giving two more equations:

-2(lambda^2)cos(kdX) - 2 + 2(lambda^2) + sigma2 <=1

this must be true for the largest values of the LHS (i.e when sigma2 = 1) , giving us Lambda^2 <= 1/(1-cos(kdX))

The RHS is largest when cos = 0, and also note that dX, dT, c are all positive by def'n, giving us the required condition. The only problem is we also get another equation from stage A:

2(lambda^2)cos(KdX) + 2 - 2(lambda^2) - sigma2 >=1

This must be true for the smallest values of the LHS i.e when sigma2 = 1
This implies that (lambda^2)(cos(kdX) - 1)>=0

We know that lambda^2>=0 which means that the other bracketed term must be greater than or equal to one. This is only satisfied for cos = 0
This extra condition was not mentioned in the question and doesn't look right. I'm not sure where I've gone wrong.
 
Last edited:
Physics news on Phys.org
  • #2
From what I remember about this stuff, you plug the assumed solution [tex]\phi(x,t)=A(t)e^{ikx}[/tex] into the difference equation, and then use the fact that [tex]x[n+m]-x[n]=m \Delta x[/tex] to obtain an ordinary difference equation in t_j which can be solved exactly.

So in this case you would obtain
[tex]e^{ikx[n]}(A[j+1]-2A[j]+A[j-1]) = \frac{c^2 \Delta t^2}{\Delta x^2} A[j] (e^{ikx[n-1]} - 2e^{ikx[n]} + e^{ikx[n+1]})[/tex]
which you can rearrange as

[tex] A[j+1] + (\alpha-2)A[j] + A[j-1] = 0
[/tex]

where
[tex] \alpha = \frac{c^2 \Delta t^2}{\Delta x^2}(2cos(k\Delta x)-2)[/tex]
( or something similar to that).

Difference equations have solutions of the form [tex]A[j] = z^j[/tex], so plug that solution into the final difference equation above and you end up with a quadratic equation in z. Note that the solutions z depend on alpha. Then, since the original solution is now [tex]\phi = z^j e^{ikx}[/tex], you need z<=1 to prevent the solution from blowing up as j grows, so you need to pick alpha to give you z roots which are less than one.

So if you solve the quadratic equation for z as a function of alpha, you will get a constraint on alpha, and then using the definition of alpha, that should give you a constraint on c^2dt^2/dx^2 which is the one you're after.
 
Last edited:

Related to Von neumann stability analysis

1. What is Von Neumann stability analysis?

Von Neumann stability analysis is a mathematical technique used to analyze the stability of numerical methods used to solve differential equations. It was developed by John von Neumann in the 1940s and is commonly used in fields such as computational fluid dynamics, structural analysis, and heat transfer.

2. How does Von Neumann stability analysis work?

Von Neumann stability analysis works by analyzing the amplification factor of a numerical method, which is a measure of how much the solution of a differential equation is amplified at each iteration. If the amplification factor is less than or equal to 1, the method is considered stable and the solution will not grow uncontrollably. If the amplification factor is greater than 1, the method is considered unstable and the solution will not converge to the correct solution.

3. Why is Von Neumann stability analysis important?

Von Neumann stability analysis is important because it allows scientists and engineers to determine if a numerical method is stable and will produce accurate results. This is crucial in fields where accurate solutions are needed, such as in weather forecasting or structural analysis.

4. What are the limitations of Von Neumann stability analysis?

One limitation of Von Neumann stability analysis is that it only considers linear partial differential equations. It also assumes that the differential equations are solved using a finite difference method. Additionally, it does not take into account the effects of round-off errors or truncation errors in the numerical method.

5. How is Von Neumann stability analysis applied in real-world applications?

Von Neumann stability analysis is applied in real-world applications by using it to analyze the stability of numerical methods before implementing them in simulations or calculations. It is also used to improve existing numerical methods by identifying sources of instability and finding ways to mitigate them. Additionally, it is used to determine the appropriate time and spatial step sizes for a given problem to ensure stability and accuracy of the solution.

Similar threads

  • Quantum Physics
Replies
3
Views
1K
  • Differential Geometry
Replies
4
Views
3K
  • Advanced Physics Homework Help
Replies
11
Views
2K
  • Special and General Relativity
Replies
12
Views
1K
Replies
6
Views
1K
  • Special and General Relativity
Replies
12
Views
1K
  • Calculus and Beyond Homework Help
Replies
1
Views
1K
  • Quantum Interpretations and Foundations
7
Replies
235
Views
15K
  • Calculus and Beyond Homework Help
Replies
5
Views
2K
Back
Top