Dealing with boundary conditions in system of ODEs

Click For Summary
SUMMARY

This discussion focuses on solving boundary conditions in a system of partial differential equations (PDEs) using the centered finite difference method in MATLAB. The user is specifically addressing the challenge of implementing derivative boundary conditions, such as yA(0,t)=0, by introducing a fictitious point at -1 to facilitate the calculation. The equations provided demonstrate the transformation of derivatives into finite difference approximations, which is essential for numerical solutions in MATLAB. The methodology outlined is a standard approach for handling flux boundary conditions in PDEs.

PREREQUISITES
  • Understanding of partial differential equations (PDEs)
  • Familiarity with finite difference methods
  • Proficiency in MATLAB programming
  • Knowledge of boundary condition types in numerical analysis
NEXT STEPS
  • Research "MATLAB finite difference method for PDEs"
  • Learn about "flux boundary conditions in numerical simulations"
  • Explore "derivative boundary conditions in MATLAB"
  • Study "numerical stability in finite difference methods"
USEFUL FOR

This discussion is beneficial for students and professionals in applied mathematics, computational physics, and engineering fields, particularly those involved in numerical simulations of PDEs and boundary condition implementations in MATLAB.

582153236
Messages
14
Reaction score
0

Homework Statement


I'm trying to plot the steady state concentration of yA vs. x, yB vs x and yu vs x using centered finite difference method.
7bf7ff66226dc782690fe0f4ed0d511a.png

fc9d4e25a6988d7185732bc227e8441b.png


Homework Equations


1953a53dd7b94b8f9a1a3dff7d3d322b.png

The Attempt at a Solution


τ represents the dimensionless time variable, so steady state would mean that the left hand side of each of the differential equations is 0.

I began this problem by replacing the derivatives that appear in the differential equations with the finite difference approximations for them. For example, yA:
gif.gif

I also used the boundary conditions:
286a851dbe10ba7c4bf2a865c10f7be4.png

but I don't know at which point, I am taking yA on the right side from. In the below equation should yA on the right side be yA,1 or something else (since the below equation estimates the derivative at the node n=1?
gif.gif


More importantly, how do I deal with this type of boundary condition in Matlab? I am used to dealing with boundary conditions such as yA(0,t)=0 for which I can simply initialize Y(1)=0 in MATLAB but in this case I'm given a derivative boundary condition.
 
Physics news on Phys.org
These aren't ODEs; they're PDEs.
 
What you do is add a fictitious point at -1 such that:

\frac{y_{1}-y_{-1}}{2h}=-(1-y_0)

Combining this with ##\frac{(y_{-1}+2y_0+y_1)}{h^2}## gives:

\frac{(y_{-1}-2y_0+y_1)}{h^2}=\frac{2(y_1-y_0)}{h^2}-\frac{2(1-y_0)}{h}

You solve the time-dependent equation at x = 0, and use this in that equation. This is a standard way of handling that type of flux boundary condition.

Chet
 
  • Like
Likes   Reactions: 582153236

Similar threads

  • · Replies 3 ·
Replies
3
Views
3K
  • · Replies 11 ·
Replies
11
Views
3K
  • · Replies 22 ·
Replies
22
Views
4K
  • · Replies 5 ·
Replies
5
Views
1K
  • · Replies 4 ·
Replies
4
Views
3K
  • · Replies 1 ·
Replies
1
Views
2K
Replies
3
Views
2K
  • · Replies 3 ·
Replies
3
Views
2K
  • · Replies 4 ·
Replies
4
Views
2K
Replies
5
Views
3K