+ All Categories
Home > Documents > boundary value priblem

boundary value priblem

Date post: 04-Apr-2018
Category:
Upload: damo-daran-g
View: 222 times
Download: 0 times
Share this document with a friend

of 49

Transcript
  • 7/29/2019 boundary value priblem

    1/49

    Boundary Value Problems

    Jake Blanchard

    University of Wisconsin - MadisonSpring 2008

  • 7/29/2019 boundary value priblem

    2/49

    Case Study

    We will analyze a cooling configuration for a

    computer chip

    We increase cooling by adding a number of

    fins to the surface

    These are high conductivity (aluminum) pins

    which provide added surface area

  • 7/29/2019 boundary value priblem

    3/49

    The Case - Schematic

  • 7/29/2019 boundary value priblem

    4/49

    The Case - Modeling

    The temperature distribution in the pin is

    governed by:

    0

    40)0(

    0)(2

    2

    Lx

    f

    dx

    dTCT

    TTkA

    hC

    dx

    Td

  • 7/29/2019 boundary value priblem

    5/49

    Finite Difference Techniques

    Used to solve boundary value problems

    Well look at an example

    12

    2

    ydxyd

    0)

    2

    (

    1)0(

    y

    y

  • 7/29/2019 boundary value priblem

    6/49

    Two Steps

    Divide interval into steps

    Write differential equation in termsof values at these discrete points

  • 7/29/2019 boundary value priblem

    7/49

    Solution is Desired from x=0 to /2

    X=0 X= /2

  • 7/29/2019 boundary value priblem

    8/49

    Divide Interval into Pieces

    X1X0=0 X2 X3 X4= /2

    h

  • 7/29/2019 boundary value priblem

    9/49

    Boundary Values

    X1X0=0 X2 X3 X4=

    /2

    y(0)=1

    y(/2 )=0

  • 7/29/2019 boundary value priblem

    10/49

    Calculate Internal Values

    X1X0 X2 X3 X4

    y0

    y4

    y3

    y2

    y1

  • 7/29/2019 boundary value priblem

    11/49

    Approximations

    h

    yy

    dx

    dy iii

    1

    2/1

    h

    y2

    y1 y2-y1

  • 7/29/2019 boundary value priblem

    12/49

    Second Derivative

    2

    11

    2

    2 2

    h

    yyy

    dx

    yd iiii

  • 7/29/2019 boundary value priblem

    13/49

    Substitute

    2

    1

    2

    1

    2

    11

    2

    2

    )2(

    12

    becomes

    1

    hyyhy

    or

    y

    h

    yyy

    ydx

    yd

    iii

    iiii

  • 7/29/2019 boundary value priblem

    14/49

    EquationsBoundary Conditions

  • 7/29/2019 boundary value priblem

    15/49

    Equations

    2

    1

    2

    012 2 hyhyyy

    Boundary Conditions

  • 7/29/2019 boundary value priblem

    16/49

    Equations

    2

    1

    2

    012 2 hyhyyy

    Boundary Conditions

    2

    2

    2

    123 2 hyhyyy

  • 7/29/2019 boundary value priblem

    17/49

    Equations

    2

    1

    2

    012 2 hyhyyy

    Boundary Conditions

    2

    2

    2

    123 2 hyhyyy

    2

    3

    2

    234 2 hyhyyy

  • 7/29/2019 boundary value priblem

    18/49

    Using Matlab

    0

    )2(

    )2(

    )2(

    1

    4

    2

    43

    2

    2

    2

    32

    2

    1

    2

    21

    2

    0

    0

    y

    hyyhy

    hyyhy

    hyyhy

    y

    Convert to matrix and solve

  • 7/29/2019 boundary value priblem

    19/49

    Using Matlab

    0

    1

    10000

    1)2(100

    01)2(10

    001)2(1

    00001

    2

    2

    2

    4

    3

    2

    1

    0

    2

    2

    2

    h

    h

    h

    y

    y

    y

    y

    y

    h

    h

    h

  • 7/29/2019 boundary value priblem

    20/49

    The Script

    h=pi/2/4;

    A=[1 0 0 0 0; 1 -(2-h^2) 1 0 0; 0 1 -(2-h^2) 1 0;...

    0 0 1 -(2-h^2) 1; 0 0 0 0 1];

    b=[1; h^2; h^2; h^2; 0];

    x=linspace(0,pi/2,5);y=A\b;

    plot(x,y)

  • 7/29/2019 boundary value priblem

    21/49

    What if we use N divisions

    N divisions, N+1 mesh points

    Matrix is N+1 by N+1

    Nh 2

  • 7/29/2019 boundary value priblem

    22/49

    The ScriptN=4;

    h=pi/2/N;

    A=-(2-h^2)*eye(N+1);

    A(1,1)=1;

    A(N+1,N+1)=1;

    for i=1:N-1

    A(i+1,i)=1;

    A(i+1,i+2)=1;

    end

    b=h^2*ones(N+1,1);

    b(1)=1;b(N+1)=0;

    x=linspace(0,pi/2,N+1);

    y=A\b;

    plot(x,y)

  • 7/29/2019 boundary value priblem

    23/49

    Results

    0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.60

    0.1

    0.2

    0.3

    0.4

    0.5

    0.6

    0.7

    0.8

    0.9

    1

    x

    y

    0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.60

    0.1

    0.2

    0.3

    0.4

    0.5

    0.6

    0.7

    0.8

    0.9

    1

    x

    y

    N=4

    N=20

  • 7/29/2019 boundary value priblem

    24/49

    Script Using Diag

    The diag command allows us to put a

    vector on the diagonal of a matrix

    We can use this to put in the 1s just offthe diagonal in this matrix

    Syntax: diag(V,K) -V is the vector, K tells

    which diagonal to place the vector in

  • 7/29/2019 boundary value priblem

    25/49

    New Script

    A=-(2-h^2)*eye(N+1)+diag(v,1)+diag(v,-1);

    A(1,2)=0;A(N+1,N)=0;

    A(1,1)=1;

    A(N+1,N+1)=1;

  • 7/29/2019 boundary value priblem

    26/49

    A Built-In Routine

    Matlab includes bvp4c

    This carries out finite differences on systems of

    ODEs

    SOL =BVP4C(ODEFUN,BCFUN,SOLINIT)

    odefun defines ODEs

    bcfun defines boundary conditions

    solinit gives mesh (location of points) and guess for

    solutions (guesses are constant over mesh)

  • 7/29/2019 boundary value priblem

    27/49

    Using bvp4c

    odefun is a function, much like what weused for ode45

    bcfun is a function that provides the

    boundary conditions at both ends solinit created in a call to the bvpinit

    function and is a vector of guesses for the

    initial values of the dependent variable

  • 7/29/2019 boundary value priblem

    28/49

    Preparing our Equation

    Let y be variable 1y(1) Then dy/dx (=z) is variable 2y(2)

    )1(1

    )2(

    1

    2

    2

    2

    2

    ydx

    dz

    dx

    yd

    yzdx

    dy

    y

    dx

    yd

    0)2

    (

    1)0(

    y

    y

    function dydx = bvp4ode(x,y)

    dydx = [ y(2) 1-y(1) ];

  • 7/29/2019 boundary value priblem

    29/49

    Boundary Conditions

    ya(1) is y(1) at x=a ya(2) is y(2) at x=a

    yb(1) is y(1) at x=b

    yb(2) is y(2) at x=b In our case, y(1)-1=0 at x=a and

    y(1)=0 at x=b

    function res = bvp4bc(ya,yb)

    res = [ ya(1)-1 yb(1) ];

  • 7/29/2019 boundary value priblem

    30/49

    Initialization

    How many mesh points? 10 Initial guesses for y(1) and y(2)

    Guess y=1, z=-1

    Guess more critical for nonlinear equations

    xlow=0;

    xhigh=pi/2;

    solinit =bvpinit(linspace(xlow,xhigh,10),[1 -1]);

  • 7/29/2019 boundary value priblem

    31/49

    Postprocessing

    xint = linspace(xlow,xhigh);Sxint = deval(sol,xint);

    plot(xint,Sxint(1,:))

  • 7/29/2019 boundary value priblem

    32/49

    The Scriptfunction bvp4

    xlow=0; xhigh=pi/2;solinit = bvpinit(linspace(xlow,xhigh,10),[1 -1]);sol = bvp4c(@bvp4ode,@bvp4bc,solinit);xint = linspace(xlow,xhigh);

    Sxint = deval(sol,xint);plot(xint,Sxint(1,:))% -----------------------------------------------function dydx = bvp4ode(x,y)

    dydx = [ y(2) 1-y(1) ];% -----------------------------------------------function res = bvp4bc(ya,yb)res = [ ya(1)-1 yb(1) ];

    Things to Change for Different

  • 7/29/2019 boundary value priblem

    33/49

    Things to Change for Different

    Problems

    function bvp4xlow=0; xhigh=pi/2;solinit = bvpinit(linspace(xlow,xhigh,10),[1 -1]);sol = bvp4c(@bvp4ode,@bvp4bc,solinit);

    xint = linspace(xlow,xhigh,20);Sxint = deval(sol,xint);plot(xint,Sxint(1,:))% -----------------------------------------------

    function dydx = bvp4ode(x,y)dydx = [ y(2) 1-y(1) ];% -----------------------------------------------function res = bvp4bc(ya,yb)

    res = [ ya(1)-1 yb(1) ];

  • 7/29/2019 boundary value priblem

    34/49

    Practice

    Download the file

    bvpskeleton.m and

    modify it to solve the boundary

    value problem shown

    at the right for =0.1

    and compare to the

    analytical solution.1

    1

    1)1(

    0)0(

    0

    1

    2

    2

    e

    ey

    y

    y

    dx

    dy

    dx

    yd

    x

    analytical

  • 7/29/2019 boundary value priblem

    35/49

    bvpskeleton.mxlow=???;

    xhigh=???;

    solinit = bvpinit(linspace(xlow,xhigh,20),[1 0]);

    sol = bvp4c(@bvp4ode,@bvp4bc,solinit);

    xint = linspace(xlow,xhigh);

    Sxint = deval(sol,xint);

    eps=0.1;

    analyt=(exp(xint/eps)-1)/(exp(1/eps)-1);

    plot(xint,Sxint(1,:),xint,analyt,'r')

    % -----------------------------------------------

    function dydx = bvp4ode(x,y)

    eps=0.1;

    dydx = [ ???? ; ???? ];

    % -----------------------------------------------

    function res = bvp4bc(ya,yb)

    res = [ ???? ; ???? ];

  • 7/29/2019 boundary value priblem

    36/49

    What about BCs involving

    derivatives?

    If we prescribe a derivative at one end, we

    cannot just place a value in a cell.

    Well use finite difference techniques to

    generate a formula

    The formulas work best when centered,

    so we will use a different approximationfor the first derivative.

  • 7/29/2019 boundary value priblem

    37/49

    Derivative BCs

    Consider a boundary condition of the

    form dy/dx=0 at x=L

    Finite difference (centered) is:

    11

    11 02

    ii

    ii

    yy

    or

    h

    yy

    dx

    dy

  • 7/29/2019 boundary value priblem

    38/49

    Derivative BCs

    So at a boundary point on the right we

    just replace yi+1 with yi-1 in the formula

    Consider:

    02

    2

    ydxyd

    0)1(

    1)0(

    dx

    dy

    y

  • 7/29/2019 boundary value priblem

    39/49

    Finite Difference Equation

    We derive a new difference equation

    0)2(

    02

    becomes

    0

    1

    2

    1

    2

    11

    2

    2

    iii

    iiii

    yyhy

    or

    yh

    yyy

    y

    dx

    yd

  • 7/29/2019 boundary value priblem

    40/49

    Derivative BCs

    The difference equation at the last pointis

    022

    02

    2

    1

    11

    1

    2

    1

    NN

    NN

    NNN

    yhy

    so

    yy

    but

    yyhy

  • 7/29/2019 boundary value priblem

    41/49

    Final Matrix

    0

    0

    0

    0

    1

    )2(2000

    1)2(100

    01)2(10

    001)2(1

    00001

    4

    3

    2

    1

    0

    2

    2

    2

    2

    y

    y

    yy

    y

    h

    h

    hh

  • 7/29/2019 boundary value priblem

    42/49

    New Code

    h=1/4

    A=[1 0 0 0 0;

    1 -(2-h^2) 1 0 0;

    0 1 -(2-h^2) 1 0;

    0 0 1 -(2-h^2) 1;

    0 0 0 2 -(2-h^2)]

    B=[1; 0; 0; 0; 0]

    y=A\B

  • 7/29/2019 boundary value priblem

    43/49

    Using bvp4c

    The boundary condition routine allows usto set the derivative of the dependentvariable at the boundary

  • 7/29/2019 boundary value priblem

    44/49

    Preparing Equation

    )1(

    )2(

    0

    2

    2

    2

    2

    ydx

    dz

    dx

    yd

    yzdx

    dy

    y

    dx

    yd

    0)2(

    01)1(

    0)2(

    1)1(

    0)1(

    1)0(

    yb

    yaor

    yb

    ya

    so

    dx

    dyy

    Th S

  • 7/29/2019 boundary value priblem

    45/49

    The Scriptfunction bvp5

    xlow=0; xhigh=1;solinit = bvpinit(linspace(xlow,xhigh,10),[1 -1]);

    sol = bvp4c(@bvp5ode,@bvp5bc,solinit);

    xint = linspace(xlow,xhigh);

    Sxint = deval(sol,xint);plot(xint,Sxint(1,:))

    % -----------------------------------------------

    function dydx = bvp5ode(x,y)

    dydx = [ y(2) -y(1) ];

    % -----------------------------------------------

    function res = bvp5bc(ya,yb)

    res = [ ya(1)-1 yb(2) ];

  • 7/29/2019 boundary value priblem

    46/49

    Practice

    Solve the Case

    Study Problem

    Use L=25 mm,Tf=20 C, and

    hC/kA=4000 /m2

    JPB: need askeleton here

    0

    40)0(

    0)(2

    2

    Lx

    f

    dx

    dT

    CT

    TT

    kA

    hC

    dx

    Td

  • 7/29/2019 boundary value priblem

    47/49

    Practice

    A 1 W, 2 Mohm resistorwhich is 30 mm long

    has a radius of 1 mm.

    Determine the peaktemperature if the

    outside surface is held

    at room temperature. Use k=0.1 W/m-K and

    Q=2.1 MW/m2

    0)0(

    20)(

    0

    1

    2

    2

    dr

    dT

    CRT

    k

    Q

    dr

    dT

    rdr

    Td

  • 7/29/2019 boundary value priblem

    48/49

    Practice

    Repeat the previous

    problem with

    convection to external

    environment.

    Use k=0.1 W/m-K and

    Q=2.1 MW/m2

    Also,h=10 W/m2-K andTe=20 C

    0)0(

    21)(

    01

    2

    2

    dr

    dT

    QRTRTh

    k

    Q

    dr

    dT

    rdr

    Td

    e

  • 7/29/2019 boundary value priblem

    49/49

    Questions?


Recommended