Re: an interesting problem of supplying boundary condition for a
- To: mathgroup at smc.vnet.net
- Subject: [mg92595] Re: an interesting problem of supplying boundary condition for a
- From: Jens-Peer Kuska <kuska at informatik.uni-leipzig.de>
- Date: Tue, 7 Oct 2008 07:06:08 -0400 (EDT)
- References: <gcc3i5$l8n$1@smc.vnet.net>
Hi,
a) there is no derivative with respect of t, and the variable
is useless
b) Mathematica can't solve hyperbolic equations
Regards
Jens
pratip wrote:
> Hi All,
> Down is the equation system
>
> Jc = -\[Rho] Subscript[\[GothicCapitalD],
> k] (D[\[Omega][x, y, t], x] + D[\[Omega][x, y, t], y]) -
> Subscript[\[GothicCapitalD],
> k] (D[Log[T[x, y, t]], x] + D[Log[T[x, y, t]], y]);
>
> ContEq = D[u[x, y, t], x] + D[u[x, y, t], y] == 0;
> MomentumEq = \[Rho] (D[u[x, y, t]^2, x] + D[u[x, y, t]^2, y]) ==
> D[(\[Mu] (D[u[x, y, t], x] + D[u[x, y, t], y]) -
> 2/3 \[Mu] (D[u[x, y, t], x] + D[u[x, y, t], y]) ), x] +
> D[(\[Mu] (D[u[x, y, t], x] + D[u[x, y, t], y]) -
> 2/3 \[Mu] (D[u[x, y, t], x] + D[u[x, y, t], y]) ), y] -
> D[P[x, y, t], x] + D[P[x, y, t], y];
> TranportEq = \[Rho] \[Omega][x, y,
> t] + \[Rho] (D[\[Omega][x, y, t] u[x, y, t], x] +
> D[\[Omega][x, y, t] u[x, y, t], y]) == D[Jc, x] + D[Jc, y];
> EnergyEq =
> Subscript[c,
> p] (D[(\[Rho] u[x, y, t] T[x, y, t]), x] +
> D[(\[Rho] u[x, y, t] T[x, y, t]), y]) ==
> D[(\[Lambda] (D[T[x, y, t], x] + D[T[x, y, t], y])), x] +
> D[(\[Lambda] (D[T[x, y, t], x] + D[T[x, y, t], y])), y];
> {ContEq, MomentumEq, TranportEq, EnergyEq} //
> FullSimplify // TableForm
>
> Now we need a boundary condition that Mathematica can handle. I have freedom to choose any initial values for the unknowns. For this kind of equation I don't know what type of BC I should take. I just took
>
> BC = {u[x, y, 0] == x + y, u[0, y, t] == u[1, y, t],
> u[x, 0, t] == u[x, 1, t], P[x, y, 0] == x, P[0, y, t] == P[1, y, t],
> P[x, 0, t] == P[x, 1, t], T[x, y, 0] == 2 y + 1,
> T[0, y, t] == T[1, y, t],
> T[x, 0, t] == T[x, 1, t], \[Omega][x, y, 0] ==
> x - y, \[Omega][0, y, t] == \[Omega][1, y, t], \[Omega][x, 0,
> t] == \[Omega][x, 1, t]}
>
> Now I Finally insert values to the constants in the PDE so that I can call NDSolve.
>
> Eq = {ContEq, MomentumEq, TranportEq, EnergyEq} /. \[Lambda] -> .1 /.
> Subscript[c, p] -> 1.2 /. \[Rho] -> .01 /. \[Mu] -> 1 /.
> Subscript[\[GothicCapitalD], k] -> 1;
> EQN = Join[Eq, BC]
>
> To solve the PDE I call
>
> Sol = NDSolve[
> EQN, {u, P, T, \[Omega]}, {x, 0, 1}, {y, 0, 1}, {t, 0, 3},
> Method -> {"MethodOfLines",
> "SpatialDiscretization" -> {"TensorProductGrid"}}] // Timing
>
> And I see the following error
>
> *****************
> *****************
> NDSolve::pdord: Some of the functions have zero differential order so \
> the equations will be solved as a system of differential-algebraic \
> equations. >>
>
> NDSolve::mxsst: Using maximum number of grid points 100 allowed by \
> the MaxPoints or MinStepSize options for independent variable x. >>
>
> NDSolve::mxsst: Using maximum number of grid points 100 allowed by \
> the MaxPoints or MinStepSize options for independent variable y. >>
>
> NDSolve::mxsst: Using maximum number of grid points 100 allowed by \
> the MaxPoints or MinStepSize options for independent variable x. >>
>
> General::stop: Further output of NDSolve::mxsst will be suppressed \
> during this calculation. >>
>
> NDSolve::ibcinc: Warning: Boundary and initial conditions are \
> inconsistent. >>
>
> NDSolve::ivcon: The given initial conditions were not consistent with \
> the differential-algebraic equations. NDSolve will attempt to \
> correct the values. >>
> *****************
> *****************
> It runs for long and finally tells LinearSolve out of memory.
> I hope people with your expertise can give me some insight. You can take full freedom to define BC as you wish. We need just a solution. I am mainly interested to find a class of BC that makes the PDE solvable with Mathematica.
> I hope for some prompt reply.
>