MathGroup Archive 2004

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: nonlinear pde system

  • To: mathgroup at
  • Subject: [mg46929] Re: nonlinear pde system
  • From: Mike <m.HoneychurcNOSPAMh at>
  • Date: Tue, 16 Mar 2004 02:37:37 -0500 (EST)
  • Organization: University of Queensland
  • References: <c31549$616$>
  • Sender: owner-wri-mathgroup at

It depends on what form the functions f and g take but for a general
solution probably the most straight forward way would be to write down the
system of equations in finite difference form and solve use the sparse
matrix solver in V5. You can then iterate at each time increment to the
desired level of tolerable error.

Have a look through some books on finite differences if you are not familiar
with this. Once you get the problem in FD form the sparse solver will be
your friend.

To give a blatant plug I have a book and software out in April describing
solutions to electrochemical problems which in their most basic form
(assumed absence of convection and no coupled chemical reactions) are
parabolic PDEs with discontinuous and/or time dependent boundaries.
Solutions to nonlinear problems are demonstrated.  Also for some PDEs (in
electrochemistry at least) it is possible to reshape the problem to a
tridiagonal form in which each diagonal element is a square matrix (But it
depends on the exact nature of the problem). The solution is obtained by a
variation of the Thomas algorithm (i.e. The algorithm used in the
Tridiagonal solver in the addons).


On 14/3/04 6:28 PM, in article c31549$616$1 at, "Sri Harsha
Tharkabhushanam" <harshaonnet at> wrote:

> I would like to solve a nonlinear parabolic pde system
> of two variables u, v. Each in turn is a function of
> (x,t). In future, I would like to extend such a thing
> to (x, y, z, t). Please let me know how to do this, if
> possible in Mathmematica.
> Thanks,
> -Harsha
> ===================
> The equations look like this:
> a*u_t = b*u_xx + c*f(u,v)
> d*v_t = e*v_xx + h*g(u,v)
> for
> -ll <= x <= ll
> 0 <= t <= 10
> with boundary conditions: u_x(+/-ll, t), v_x(+/-ll,
> t).
> ===================
> __________________________________
> Do you Yahoo!?
> Yahoo! Mail - More reliable, more storage, less spam

  • Prev by Date: Re: Re: Excessive Mathematica memory use, revisited.
  • Next by Date: Re: solving for variable and then get these e's..?
  • Previous by thread: nonlinear pde system
  • Next by thread: Mathematica 5: Integration bug in quadratic found by the GEMM machine