Solve parabolic coupled PDE's using MATLAB's pdepe solver?

0
down vote
favorite
I know that this question may seem simple to some of you, but I'm wondering if MATLAB's pdepe tool can solve a coupled system of parabolic pde's? The general form is:
d(u1)/dt = d2(u1)/x2 - d2(u2)/x2 d(u2)/dt = d2(u2)/x2 - d2(u1)/x2
More specifically, how does the DuDx command work in the pdepe tool? Can I enter an array for the coefficients of the b function and will it know that the second column coefficient corresponds to u2?
Thanks in advance for your time! Jacob

 采纳的回答

Yes, pdepe can definitely solve systems of pde. In general, the u argument to the functions you define has as many rows as there are pde in the system.
I'm not sure what you mean by the "b function." Do you mean the bcfun (4th argument to pdepe)? If so, the two arguments, ul and ur have as many rows as there are pde.
Example 2 on the pdepe documentation page here:
shows a two-equation system.
Bill

1 个评论

Bill, Thanks for the response! I've reviewed the example 2, but still have a question. I know this may be basic for you and I really appreciate your help!
In example 2,
f = [0.024; 0.17] .* DuDx
If I'm understanding correctly, DuDx refers to Du1dx for the first row, and Du2dx for the second row. But in my example, I have pde's include both Du1Dx and Du2Dx in each equation.
Do you know how to incorporate both into the pdepd function? Again, I'm sure this question is basic for you and I greatly appreciate your help ! Thanks

请先登录,再进行评论。

更多回答(2 个)

Bill, Thanks for the response! I've reviewed the example 2, but still have a question. I know this may be basic for you and I really appreciate your help!
In example 2,
f = [0.024; 0.17] .* DuDx
If I'm understanding correctly, DuDx refers to Du1dx for the first row, and Du2dx for the second row. But in my example, I have pde's include both Du1Dx and Du2Dx in each equation.
Do you know how to incorporate both into the pdepd function? Again, I'm sure this question is basic for you and I greatly appreciate your help ! Thanks

6 个评论

Possibly you are confused by that funny .* operator.
There are several ways to express what you want in MATLAB. For example, you could define a couple of temporary variables:
Du1Dx = DuDx(1);
Du2Dx = DuDx(2);
f = [3*Du1Dx + 1.23*Du2Dx
4.56*Du1Dx + 8.9*Du2Dx];
(I just made up some arbitrary coefficients.)
Or you could express the same thing more compactly as:
f = [3 1.23; 4.56 8.9]*DuDx;
And, of course, the coefficients could be much more complicated than just simple constants.
Bill
That worked!!! Thanks Bill. You rock!
I think I have a similar question Bill. Can you please help me. I have posted a query in the following link in the physicsforums. If you want I can paste it here or you can reply there. Please help me. Thank You
https://www.physicsforums.com/threads/pdepe-solver-for-diffusion-equation-in-a-packed-column.864649/
You have a mixture of partial differential equations and ordinary differential equations. pdepe is not suited to solve such systems. You will have to discretize your PDE equations in space and solve the resulting complete system of ODEs using ODE15S. Look up "Method-of-Lines" for more details.
Best wishes
Torsten.
I have a similar question. Can we solve a system of nonlinear parabolic partial differential equations using pde toolbox in matlab?
In general, PDE Toolbox supports solution of coupled nonlinear parabolic equations. It is difficult to comment if your specific PDEs can be be solved, without seeing the equations.

请先登录,再进行评论。

i have a system of coupled wave equations given in attachment , which are varying in time and space simultaneously , can the equations be solved using pdepe command ( equations are given in attachment)

4 个评论

No. "pdepe" is designed to solve parabolic-elliptic PDEs - your second equation is hyperbolic in nature.
Best wishes
Torsten.
so can u please tell me how to solve the system of equations given in the attachment
Use the Method-of-Characteristics or the Method-of-Lines.
Best wishes
Torsten.
can u share some similar examples with two variables varying simultaneously using method of lines or method of characteristics.

请先登录,再进行评论。

Community Treasure Hunt

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

Start Hunting!

Translated by