Segregated method for numerical solution of a PDE system

Click For Summary
SUMMARY

The discussion focuses on solving a system of three coupled partial differential equations (PDEs) using the segregated method and finite difference discretization. The author, Frank, encounters issues with convergence and accuracy when changing the order of solution steps. Expert advice suggests avoiding the segregated method for coupled PDEs and recommends using the steepest descent algorithm or the conjugate gradient method for iterative solutions. Additionally, for block tridiagonal matrices, the TriDiagonal Matrix Algorithm (TDMA) is advised for exact solutions.

PREREQUISITES
  • Understanding of finite difference methods for PDEs
  • Familiarity with iterative solution techniques such as steepest descent and conjugate gradient methods
  • Knowledge of matrix algebra, specifically block and tridiagonal matrices
  • Experience with numerical methods for solving linear systems
NEXT STEPS
  • Research the steepest descent algorithm for iterative solutions
  • Learn about the conjugate gradient method and its applications in solving linear systems
  • Study the TriDiagonal Matrix Algorithm (TDMA) for efficient solutions of tridiagonal matrices
  • Explore advanced finite difference methods for coupled PDEs
USEFUL FOR

Mathematicians, numerical analysts, and engineers working on solving coupled PDEs, particularly those interested in optimizing memory usage and improving convergence in numerical methods.

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.
 

Similar threads

  • · Replies 4 ·
Replies
4
Views
4K
  • · Replies 5 ·
Replies
5
Views
3K
  • · Replies 1 ·
Replies
1
Views
2K
  • · Replies 37 ·
2
Replies
37
Views
6K
  • · Replies 10 ·
Replies
10
Views
1K
  • · Replies 6 ·
Replies
6
Views
3K
  • · Replies 5 ·
Replies
5
Views
3K
  • · Replies 2 ·
Replies
2
Views
2K
  • · Replies 6 ·
Replies
6
Views
4K
  • · Replies 10 ·
Replies
10
Views
2K