dolfin team mailing list archive
-
dolfin team
-
Mailing list archive
-
Message #06323
Re: Coupled Differential equations
On Tue, Feb 19, 2008 at 10:23:32AM -0500, Hatef Monajemi wrote:
>
>
>
> Anders Logg wrote:
>
>
> >On Tue, Feb 19, 2008 at 08:03:04AM -0500, Hatef Monajemi wrote:
> >>
> >>
> >> On Tue, 2008-02-19 at 09:55 +0100, Anders Logg wrote:
> >> > On Sun, Feb 17, 2008 at 12:13:50AM -0500, Hatef Monajemi wrote:
> >> > > Dear Dolfin Users:
> >> > > I am interested to find out the most efficient way to
> >> > > implement solution of coupled differential equations in Dolfin:
> >> > >
> >> > > Class I: a partial differential equation (PDE) coupled with
> >> > > an ordinary differential equation.
> >> > >
> >> > > Class II: A PDE coupled with one or more PDEs
> >> > >
> >> > >
> >> > > For instance, a wave equation when cast in the state space form,
> may
> >> > > belong to Class I. I understand that wave equation has already
> been
> >> > > solved using Dolfin. But I am unable to find any documentation in
> this
> >> > > regards.
> >> > > Typically, what will be the "*.form" file associated with the wave
> >> > > equation?
> >> > > Can anyone point me to the right place to find such docs?
> >> > > Thanks in advance.
> >> > > Hatef
> >> >
> >> > For a demo solving a time-dependent problem, look at
> >> >
> >> > src/demo/pde/convection-diffusion/
> >>
> >> Convection-Diffusion is a first Order pde with respect to time. what I
> >> am interested in is equations such as Wave which are second order with
> >> respect to time and when we cast them in the state space form become a
> >> set of coupled Differential equations. I understand that Wave Equation
> >> has been solved by you and reported as an Example. However, I did not
> >> find any document regarding the *.form File and setting the Variational
> >> form of this Kind of coupled equations.
> >
> >Please resend to dolfin-dev.
DOLFIN does not care (or help you) regarding which method you use to
solve an equation, so you need to construct the method/scheme
yourself.
But basically there are two ways to do this: either do "manual"
time-stepping and write a form for a variational problem to be solved
in each time step (like in the convection-diffusion demo) or you may
throw everything in the right-hand side and call the ODE solvers.
In the latter case, look in src/bench/ode/wave/.
In both cases, you may choose to either rewrite it as a first order
system or keep it as a second-order system (and do some kind of
central differencing).
--
Anders
References