MathGroup Archive 2008

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

Search the Archive

Re: 2 domain PDE, NDSolve

  • To: mathgroup at
  • Subject: [mg88623] Re: 2 domain PDE, NDSolve
  • From: "jeramyk" <jeramyk at>
  • Date: Sat, 10 May 2008 06:52:06 -0400 (EDT)
  • Organization: the University of Washington
  • References: <g00v09$gkr$> <g01bt2$l3u$>
  • Reply-to: "jeramyk" <jeramyk at>

"Jean-Marc Gulliet" <jeanmarc.gulliet at> wrote in message 
news:g01bt2$l3u$1 at

> jeramyk wrote:
>> I'm working on solving the basic 1D, transient heat transfer equation in 
>> a
>> two layer slab configuration.  One side is insulated, the other has a
>> constant heat flux, and there is not contact resistance between the two
>> layers.
>> My formulation looks like this:
>> equation1:  T1(0,1)[z,t] == k1/rho1/Cp1*T1(2,0)[z,t]
>> equation2:  T2(0,1)[z,t] == k2/rho2/Cp2*T2(2,0)[z,t]
>> IC1:  T1[z,0] == T0
>> IC2:  T2[z,0] == T0
>> BC1:  T1(1,0)[0,t] == 0
>> BC2:  -k1*T2(1,0)[L2+L1,t] == qs
>> Match1:  k1*T1(1,0)[L1,t] == k2*T2(1,0)[L1,t]
>> Match2:  T1(1,0)[L1,t] == T2(1,0)[L1,t]
>> T1[z,t] is solve from 0 to L1, T2[z,t] from L1 to L1+L2.
>> I've tried NDSolve but it doesn't like the matching conditions (it
>> interprets them as BC's and since they're not on the boundary it has 
>> issue
>> with it).
> <snip>
> Please, could you post genuine Mathematica expressions as well as what
> you tried with NDSolve? (I believe that by writing T1(0,1)[z,t] you mean
> actually Derivative[0, 1][T1][z, t], but I am too lazy today to correct
> all the expressions :-)
> Regards,
> -- Jean-Marc

You're right, the (0,1) was meant to mean Derivative[0,1]... There was also 
a typo in BC2.  And so the expressions look like this:

Derivative[0, 1][T1][z, t] == k1/rho1/Cp1*Derivative[2, 0][T1][z, t]
Derivative[0, 1][T2][z, t] == k2/rho2/Cp2*Derivative[2, 0][T2][z, t]
T1[z, 0] == T0
T2[z, 0] == T0
Derivative[1, 0][T1][0, t] == 0
-k2*Derivative[1, 0][T2][0, t] == qs
k1*Derivative[1, 0][T1][L1, t] == k2*Derivative[1, 0][T2][L1, t]

What I plugged into NDSolve looks like this...
Dummy values for the coefficients:

L1=0.005; L2=0.001; k1=10; k2=1; rho1=1; rho2=2; Cp1=1; Cp2=2; T0=10; 

Attempt at a solution:

solution = NDSolve[

and the error is:
NSSOLVE::bcedge : Boundary condition 10T1(1,0)[0.005,t]=T2(1,0)[0.005,t] is 
not specified on a single edge of the boundary of the computational domain. 

  • Prev by Date: Re: Tracking a dynamic variable
  • Next by Date: Re: Bug in Plot?
  • Previous by thread: Re: 2 domain PDE, NDSolve
  • Next by thread: Re: Re: 2 domain PDE, NDSolve