Clear Filters
Clear Filters

How to numerically solve a system of coupled partial differential and algebraic equations?

14 views (last 30 days)
I have a system of coupled partial differential and algebraic equations.
Two 1-D parabolic pdes coupled (function of x and time) with two algebraic equations. What would be the way to solve this sytem?
  14 Comments
Arpita
Arpita on 3 Feb 2023
The version I sent you had the boundary conditions after the governing equations. Sorry about that.
Even with boundary conditions before the governing equations, I see the same problem.
With all three boundary conditions, I get the error that the DAE is greater than 1.
When I only use the dCmadx = 0 and dphimadx = 0 as the boundary conditions, I get the error: " Unable to meet integration tolerances without reducing the step size below the smallest value allowed (4.336809e-19) at time t."
Torsten
Torsten on 3 Feb 2023
You should start with a simpler problem from which you know that potentially arising problems with the integrator stem from your programming, not from the difficulty or even unsolvability of the problem itself.

Sign in to comment.

Answers (1)

Sarthak
Sarthak on 9 Mar 2023
Hi,
One way to solve a system of coupled partial differential equations (PDEs) and algebraic equations is to use a numerical method such as finite difference or finite element method. Here is an outline of the steps involved:
  1. Discretize the system of PDEs using a numerical method such as finite difference or finite element method. This will transform the PDEs into a system of algebraic equations.
  2. Combine the discretized PDEs with the algebraic equations to form a system of nonlinear algebraic equations.
  3. Use a numerical solver such as the Newton-Raphson method or a quasi-Newton method to solve the system of nonlinear algebraic equations.
  4. Repeat the process for each time step to obtain a time-dependent solution.

Tags

Products

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!