Segregated method for numerical solution of a PDE system

FrankST
Messages
23
Reaction score
0
All,

I have a system of three coupled PDE and I discretized the equations using finite difference method.

It results in a block matrix equations as:

[A11 A12 A13] [x1] = [f1]
[A21 A22 A23] [x2] = [f2]
[A31 A32 A33] [x3] = [f3]

where, any of Aij is a square matrix.

I use segregated method to solve the system of equations iteratively as:

0 - initial values: x2=0, x3=0

1 - A11 * x1 = f1 - A12 * x2 - A13 * x3

2- update x1

3- A22 * x2 = f2 - A21 * x1 - A23 * x3

4- update x2

5- A33 * x3 = f3 - A31 * x1 - A32 * x2

6- update x3 and repeat 1 to 6 until convergence.


The issue I encountered is that when I change the order of the steps above I will get different results. For example if I first assume x1=x2=0 and I start by solving

A33 * x3 = f3 - A31 * x1 - A32 * x2 and continue with the other unknowns, I will get completely different results.

I hope you can help me to find out what is wrong in my method.


Thanks

Frank


p.s. I posted this initially in the Linear Algebra section but I got no reply but too many views. So, I thought it might be well suited for Differential Equation section.
 
Physics news on Phys.org
There is absolutely no reason that this iterative method would converge, let alone to a right answer. My advise: don't solve coupled PDE's in a segregated manner.

If you really want to solve this iteratively, I suggest you use the steepest descent algorithm, or even better: the conjugate gradient method.
However, finite difference methods typically lead to (block)tridiagonal matrices. When this is the case, use an exact method like the (gasp!) TriDiagonal Matrix Algorithm (TDMA).

Most of these well-established algorithms can be programmed in 10 lines or so. The fact that you have 1 or 10 (coupled) PDE's to solve doesn't matter (except that the bandwidth increases).
 
Thanks bigfooted for your response.

The reason I want to solve it using segregated method is for memory storage issue. For example, in case of 10 coupled PDE I am dealing with 100,000 x 100,000 matrix and I need to save memory.

Thanks again for your attention.
 
There is the following linear Volterra equation of the second kind $$ y(x)+\int_{0}^{x} K(x-s) y(s)\,{\rm d}s = 1 $$ with kernel $$ K(x-s) = 1 - 4 \sum_{n=1}^{\infty} \dfrac{1}{\lambda_n^2} e^{-\beta \lambda_n^2 (x-s)} $$ where $y(0)=1$, $\beta>0$ and $\lambda_n$ is the $n$-th positive root of the equation $J_0(x)=0$ (here $n$ is a natural number that numbers these positive roots in the order of increasing their values), $J_0(x)$ is the Bessel function of the first kind of zero order. I...
Are there any good visualization tutorials, written or video, that show graphically how separation of variables works? I particularly have the time-independent Schrodinger Equation in mind. There are hundreds of demonstrations out there which essentially distill to copies of one another. However I am trying to visualize in my mind how this process looks graphically - for example plotting t on one axis and x on the other for f(x,t). I have seen other good visual representations of...
Back
Top