偏微分方程式の数値解法 - kengo nakajima's homepagenkl.cc.u-tokyo.ac.jp/13n/pde.pdf ·...

Download 偏微分方程式の数値解法 - Kengo Nakajima's Homepagenkl.cc.u-tokyo.ac.jp/13n/PDE.pdf · 偏微分方程式の数値解法 中島研吾 東京大学情報基盤センター

If you can't read please download the document

Upload: hadang

Post on 07-Feb-2018

255 views

Category:

Documents


8 download

TRANSCRIPT

  • ( 500080)

  • Partial Differential EquationsPDE mesh, grid, particle

    2PDE

  • PDE 3

    Finite-Difference Method, FDM 1 2 3

  • PDE

    4

    1/2

    Partial Differential Equations, PDE

    local governing equation boundary condition initial condition

    Integral Equations global Green functionfundamental function

  • PDE

    5

    2/2

    Partial Differential Equations, PDElocal

    Integral Equationsglobal

    conditional Variational Method

    functional

  • PDE

    6

    1f(x)u

    1.01.0

    f(x)

    u(x)

    1.0

    x

  • PDE

    7

    x:1 x(x)

    1.0

    1.0x

    s

    u(x)

    u(x+x)

    +x

    f(x)s

    0sin1sin1 sxfx x+x

    0,0 xu

    xdx

    uddxdu

    dxdu

    dxdu

    xxxx

    xxx

    xx

    2

    2

    tansin

    tansin

    xxdxduxuxxuxs

    222 1)( 02

    2

    xfdx

    ud

  • PDE

    8

    xG(x,) x= f()

    x

    dfxGxu 1

    0,

    G(x,) x influence functionGreens function

  • PDE

    9

    functional

    1

    0

    21

    0

    21

    0

    1

    0 21111 dx

    dxdudx

    dxdudxds

    1

    0

    2

    1

    0

    1

    0

    2

    21

    21

    dxxuxfdxdu

    dxxuxfdxdxduuJ

    1

    0dxxuxf

    stationarizeEuler

  • PDE 10

    Finite-Difference Method, FDM 1 2 3

  • PDE

    11

    1/5 3 (x1,x2,x3) u(x1,x2,x3) 2 G=0 2Second order PDE

    linearnon-linear

    c=0 homogeneousinhomogeneous

    0,,,,,,,,,,,, 32132131

    2

    21

    2

    23

    2

    22

    2

    21

    2

    xxxu

    xu

    xu

    xu

    xxu

    xxu

    xu

    xu

    xuG

    0,,,,,, 3213

    1321

    3

    1,

    2

    321

    xxxcxuxxxb

    xxuxxxa

    i ii

    ji jiij

  • PDE

    12

    2/5 u

    aij aij=aji 3A

    x(x1,x2,x3)A(x) 0xparabolic xhyperbolic xelliptic

    ijji xxu

    xxu

    22

    333231

    232221

    131211

    aaaaaaaaa

    A

  • PDE

    13

    3/5 2x,y

    A

    AC-B2 =00

    CBBA

    A

    yxcuyu

    xu

    yuC

    yxuB

    xuA ,2 2

    22

    2

    2

    22 BACCACB

    BA

    IA

  • PDE

    14

    4/5

    022

    Yu

    Xu

    022

    2

    2

    Y

    uX

    u

    022

    2

    2

    Y

    uX

    u

  • PDE

    15

    5/5 2

    022

    2

    2

    2

    2

    Q

    zu

    yu

    xu

    0222

    2

    2

    2

    2

    uk

    zu

    yu

    xu

    Qzu

    yu

    xu

    tuc

    2

    2

    2

    2

    2

    2

    2

    2

    2

    2

    2

    22

    2

    2

    zu

    yu

    xuc

    tu

    Szu

    yu

    xuc

    tu

  • PDE

    16

    conduction

    convection

    radiation

    diffusion

    convection

  • PDE

    17

    u heat fluxq

    Fourier

    c

    2

    2

    xu

    xu

    xtuc

    xuq

    C mass fluxJ

    Fick D

    2

    2

    xCD

    xCD

    xtC

    xCDJ

  • Fourier q(x,t)

    x+x

    PDE

    18

    1/2 1

    u(x,t)

    Ttemperature

    x

    q(x,t) q(x+x,t)

    x

    txutxq

    ,,

    xx

    txutxq

    xx

    txux

    txux

    txxutxxq

    2

    2

    2

    2

    ,,

    ,,,,

  • Q(x,t) heat source

    PDE

    19

    2/2 x q

    xx

    txutxqtxxqq

    2

    2 ,,,

    xt

    txucxt

    txucq

    ,,

    t

    txu

    ,

    2

    2

    xu

    tuc

    Qxu

    tuc

    2

    2

  • PDE

    20

    Initial/Boundary Conditions B.C.

    time-marching unsteady, transienttime dependent

    steady 1Dirichlet

    2Neumann

    0

    3Robin 12

  • u

    PDE

    21

    xT 2

    T

    T

    x

    s

    u(x)

    u(x+x)

    +x

    f(x)s

    x x+x

    xxfTTxtu

    sinsin2

    2

    xfxuT

    tu

    2

    2

    2

    2

    Tc

    xuc

    tu 2

    2

    22

    2

    2

  • PDE 22

    1 2 3

  • PDE

    23

  • Discretization

    Taylor

    24PDE

  • Finite Difference Method

    x x

    i-1 i i+1

    25PDE

    x

    xxxx

    xxxdxd

    x

    0

    lim

  • ii+1

    x x

    i-1 i i+1

    xdxd ii

    i

    12/1

    x0

    i

    211

    11

    2/12/12

    2 2xx

    xxx

    dxd

    dxd

    dxd iii

    iiii

    ii

    i

    26PDE

  • Taylor1/3

    x x

    i-1 i i+1

    iiiii x

    xx

    xx

    x

    333

    2

    22

    1 !3!2

    iiiii x

    xx

    xx

    x

    333

    2

    22

    1 !3!2

    27PDE

  • Taylor2/3

    x x

    i-1 i i+1

    iiiii x

    xx

    xx

    x

    333

    2

    22

    1 !3!2

    iiiii x

    xx

    xx

    x

    333

    2

    22

    1 !3!2

    iii

    ii

    xx

    xx

    xx

    3

    32

    2

    21

    !3!2

    x

    iii

    ii

    xx

    xx

    xx

    3

    32

    2

    21

    !3!2

    x

    28PDE

  • Taylor3/3

    x x

    i-1 i i+1

    iiiii x

    xx

    xx

    x

    333

    2

    22

    1 !3!2

    iiiii x

    xx

    xx

    x

    333

    2

    22

    1 !3!2

    ii

    ii

    xx

    xx

    3

    3211

    !32

    2

    (x)2

    29PDE

  • x x

    i-1 i i+1

    2/13

    33

    2/12

    22

    2/12/11 !3

    2/!22/2/

    iii

    ii xx

    xx

    xx

    2/13

    32

    2/1

    1

    !32/2

    ii

    ii

    xx

    xx

    (x)2

    2/13

    33

    2/12

    22

    2/12/1 !3

    2/!22/2/

    iii

    ii xx

    xx

    xx

    x

    30PDE

  • PDE

    211

    11

    2/12/12

    2 2xx

    xxx

    dxd

    dxd

    dxd iii

    iiii

    ii

    i

    222

    11

    1)(,2)(,1)(

    )1()()()()(

    xiA

    xiA

    xiA

    NiiBFiAiAiA

    RDL

    iRiDiL

    022

    BFdxd

    )1(0)(121

    )1(0)(2

    12212

    211

    NiiBFxxx

    NiiBFx

    iii

    iii

    31

  • Discretization

    Taylor

    Finite Element MethodFEM weak form

    weak solution

    32PDE

  • Handbook of Grid Generation

    33FEM-intro

  • PDE 34

    Finite-Difference Method, FDM 1 2 3

  • PDE

    35

    1Steady Convection-Diffusion Equation

    1022

    x

    xu

    xua 11,00 uu

    a0

    v

    xPexa

    BeABeAxu aaLPe

    Pe: PecletL: =1

    [L2T-1] [L1T-1]

  • PDE

    36

    2DNavier-Stokes + Continuity

    0

    1

    1

    2

    2

    2

    2

    2

    2

    2

    2

    yv

    xu

    yv

    xv

    yp

    yvv

    xvu

    tv

    yu

    xu

    xp

    yuv

    xuu

    tu

  • PDE

    37

    Pex=0

    0.00

    0.20

    0.40

    0.60

    0.80

    1.00

    0.00 0.20 0.40 0.60 0.80 1.00

    Pe=0.00Pe=0.10Pe=1.00Pe=2.00Pe=10.0

    Pe

    xPe

    Pe

    xPe

    eePe

    xu

    eexu

    1

    11

  • PDE

    38

    21111 2

    2 xuuu

    xuua iiiii

    Rc: Reynolds

    xaR

    uRuuR

    c

    iciic

    0242 11

    iii qcqcu 2211

    0242 2 cc RqqRq1, q2: 0242 11 iciic qRqqR

    : :

    i

    c

    ci

    c

    c

    RRccu

    RRqq

    22

    22,1 2121

    q2 0 |Rc|

  • PDE

    39

    Rc=1.00x= 0.10, a= 1.00, v= 0.10

    Rc=2.50x= 0.10, a= 1.00, v= 0.04

    -0.20

    0.00

    0.20

    0.40

    0.60

    0.80

    1.00

    0.00 0.20 0.40 0.60 0.80 1.00

    Central Difference

    Exact

    -0.20

    0.00

    0.20

    0.40

    0.60

    0.80

    1.00

    0.00 0.20 0.40 0.60 0.80 1.00

    Central Difference

    Exact

  • PDE

    40

    Rc

    a= 1.00, v= 0.04

    -0.20

    0.00

    0.20

    0.40

    0.60

    0.80

    1.00

    0.00 0.20 0.40 0.60 0.80 1.00

    Dx= 0.10, Rc= 2.50Dx= 0.05, Rc= 1.25Exact

  • PDE

    41

    1/22

    1111 22 x

    uuuxuua iiiii

    2

    111 2x

    uuuxuua iiiii

    /1st order upwinding

    iu 1iu1iu

    a>0

    xuua

    xua ii

    1

    iu 1iu1iu

    a

  • PDE

    42

    2/22

    11111 222 x

    uuuxaxuua

    xuua iiiiiii

    21111 2

    22 xuuuxa

    xuua iiiii

    scheme

  • PDE

    43

    Rc=1.00x= 0.10, a= 1.00, v= 0.10

    Rc=2.50x= 0.10, a= 1.00, v= 0.04

    -0.20

    0.00

    0.20

    0.40

    0.60

    0.80

    1.00

    0.00 0.20 0.40 0.60 0.80 1.00

    Central DifferenceUpwindingExact

    -0.20

    0.00

    0.20

    0.40

    0.60

    0.80

    1.00

    0.00 0.20 0.40 0.60 0.80 1.00

    Central DifferenceUpwindingExact

  • PDE

    44

    1/2implicit REAL*8(A-H,O-Z)real(kind=8), dimension(:), allocatable:: U1, U2real(kind=8), dimension(:,:), allocatable:: AMAT

    !C!C-- INIT.

    read (*,*) NE, VELO, DIFF

    DX= 1.d0/dfloat(NE)N = NE + 1

    LENGTH= 1.0d0allocate (U1(N), U2(N), AMAT(N,N))

    REc= VELO*DX/DIFFPECLET= VELO/DIFF

    COEFc2= VELO/(2.d0*DX)COEFc1= VELO/(1.d0*DX)COEFd= DIFF/(DX*DX)

    !C!C-- Central Diff.

    do j= 1, Ndo i= 1, NAMAT(i,j)= 0.d0

    enddoenddo

    do i= 1, NU1(i)= 0.d0

    enddo

    NE: N: =NE+1DT: tDX: xDIFF: vVELO: a

    1022

    x

    xu

    xua

    11,00 uu

  • PDE

    45

    1 2 3 4 5 6 7 8 9

    0 1 2 3 4 5 6 7 8

    L=1.00

    NENE=8

    x=L/NENgrid pointN=NE+1

    Fortran

    C etc.

  • PDE

    46

    1/2implicit REAL*8(A-H,O-Z)real(kind=8), dimension(:), allocatable:: U1, U2real(kind=8), dimension(:,:), allocatable:: AMAT

    !C!C-- INIT.

    read (*,*) NE, VELO, DIFF

    DX= 1.d0/dfloat(NE)N = NE + 1

    LENGTH= 1.0d0allocate (U1(N), U2(N), AMAT(N,N))

    REc= VELO*DX/DIFFPECLET= VELO/DIFF

    COEFc2= VELO/(2.d0*DX)COEFc1= VELO/(1.d0*DX)COEFd= DIFF/(DX*DX)

    !C!C-- Central Diff.

    do j= 1, Ndo i= 1, NAMAT(i,j)= 0.d0

    enddoenddo

    do i= 1, NU1(i)= 0.d0

    enddo

    21111 2

    2 xuuu

    xuua iiiii

    PECLET: =aL/v=a/vREc: =ax/v

    COEFc1: a/xCOEFc2: a/(2*x)COEFd: v/x2

  • PDE

    47

    2/2do i= 2, N-1AMAT(i,i )= 2.d0 * COEFdAMAT(i,i-1)= -COEFc2 - COEFdAMAT(i,i+1)= COEFc2 - COEFd

    enddo!C!C-- Boundary Conditions

    U1(1)= 0.d0U1(N)= 1.d0AMAT(1,1 )= 1.d0AMAT(N,N )= 1.d0

    !C!C-- Gaussian Elimination

    call GAUSS (AMAT, U1, N, N)

    stopend

    xaRwhereuRuuR

    uxx

    aux

    uxx

    ax

    uuuxuua

    ciciic

    iii

    iiiii

    0242

    02

    22

    22

    11

    12212

    21111

    COEFc1: a/xCOEFc2: a/(2*x)COEFd: v/x2

    1 2 3 4 5 6 7 8 9

    i=2~N-1

  • PDE

    48

    2/2do i= 2, N-1AMAT(i,i )= 2.d0 * COEFdAMAT(i,i-1)= -COEFc2 - COEFdAMAT(i,i+1)= COEFc2 - COEFd

    enddo!C!C-- Boundary Conditions

    U1(1)= 0.d0U1(N)= 1.d0AMAT(1,1 )= 1.d0AMAT(N,N )= 1.d0

    !C!C-- Gaussian Elimination

    call GAUSS (AMAT, U1, N, N)

    stopend

    101

    Nuu

    1 2 3 4 5 6 7 8 9

    1022

    x

    xu

    xua

    11,00 uu

  • PDE 49

    Finite-Difference Method, FDM 1 2 3

  • PDE

    50

    21st order wave equation

    a

    -25.0

    0.0

    25.0

    50.0

    75.0

    100.0

    125.0

    0 50 100 150 200 250 300

    t=0.00 t=0.45

    0),300(),0(

    11050:60

    50sin1000,

    300110,500:00,

    300

    0

    tutu

    xxxu

    xxxu

    a

    axua

    tu

  • PDE

    51

    xuua

    tu ii

    211

    explicitforward Euler

    ninininin

    in

    in

    in

    i uuxtauu

    xuua

    tuu

    11111

    1

    22

    implicitbackward Euler

    ni

    ni

    ni

    ni

    ni

    ni

    ni

    ni uu

    xtauu

    xta

    xuua

    tuu

    1

    111

    1

    11

    11

    1

    222n

    iun-

  • PDE

    52

    FTCSForward-Time/Center-Space

    xtacuucuu

    uuxtauu

    xuua

    tuu

    ni

    ni

    ni

    ni

    ni

    ni

    ni

    ni

    ni

    ni

    ni

    ni

    ,2

    2

    2

    111

    111

    111

    Courant1

    x=5.0, t= 0.01666, c~1.00 x=5.0, t= 0.015, c=0.90 x=5.0, t= 0.0075, c=0.45

  • PDE

    53

    t=0.45

    t/x

    -3.00E+04

    -2.00E+04

    -1.00E+04

    0.00E+00

    1.00E+04

    2.00E+04

    3.00E+04

    0 50 100 150 200 250 300

    C=1.00C=0.90C=0.45Exact

  • PDE

    54

    Von Neumann Stability Analysis

    IinxiIknn

    i egegu gngnIk= k x

    1sin1

    sin1sin2

    22

    22

    111

    cg

    IcgIee

    ueecuguuucuu

    II

    ni

    IIni

    ni

    ni

    ni

    ni

    ni

    ni

    IIinIiInni

    ni

    IIinIiInni

    ni

    IinIinni

    ueegeegu

    ueegeegu

    gueggegu

    11

    11

    11

    gt|g|11

    FTCSc=0

  • PDE

    55

    nininini

    ni

    ni

    ni

    ni

    uucuuxuua

    tuu

    11

    11

    C=1.00

    211 2

    2 xuuuxa iii

    -25.0

    0.0

    25.0

    50.0

    75.0

    100.0

    125.0

    0 50 100 150 200 250 300

    C=1.00C=0.90C=0.45Exact

  • PDE

    56

    Von Neumann Stability Analysis

    ccccccgIcccIcccecg

    uceucguuucuuI

    ni

    Ini

    ni

    ni

    ni

    ni

    ni

    11cos212cos2cos221

    sincos1sincos11

    1

    22

    11

    (cos-1)0(1-c)0|g|1

    ccg 11cos21

    1

    xtac

    CFLCourant-Friedrichs-Lewy

  • PDE

    57

    Von Neumann Stability Analysis

    I

    ni

    ni

    Ini

    ni

    ni

    ni

    ni

    ni

    ni

    ni

    eccg

    uuecgguc

    ucuucuucuu

    11

    1

    1 1111

    111

    (1-cos) 01|g|1

    unconditional stable

    cos1121

    cos2cos2221

    sincos1122

    cc

    cccc

    Icccecc I

    cos11211

    ccg

  • PDE

    58

    Lax-Wendroff2

    322

    22

    1

    2

    22

    2

    2

    32

    2

    21

    2

    !2

    tOxuatt

    xuauu

    xua

    tu

    xa

    xu

    ta

    tu

    tOttut

    tuuu

    xua

    tu

    ni

    ni

    ni

    ni

    nininininini

    ni

    ni

    ni

    ni

    nin

    in

    i

    uuucuucu

    xuuuta

    xuutauu

    112

    11

    21122111

    221

    21

    221

    2

  • PDE

    59

    Lax-Wendroff

    -25.0

    0.0

    25.0

    50.0

    75.0

    100.0

    125.0

    0 50 100 150 200 250 300

    C=1.00C=0.90C=0.45Exact

  • PDE

    60

    sin2

    sin21

    sincos12

    1sincos12

    221

    22

    221

    22

    22

    2

    22

    2

    22

    2

    Icc

    IcccIcc

    eccceccg

    ueccucueccgu

    II

    ni

    Ini

    ni

    Ini

    (1-c2)0|g|1

    2sin141 422 ccg

    ninininininini uuucuucuu 112111 221

    21

    1

    xtac

    CFLCourant-Friedrichs-Lewy

  • PDE

    61

    Modified Equation1/2

    xtacuucuu

    xua

    tu n

    in

    in

    in

    i

    ,1

    1

    Taylor

    Taylor

    1

    43

    3

    32

    2

    2

    1

    43

    3

    32

    2

    21

    !3!2

    !3!2

    tOttut

    tut

    tuuu

    tOttut

    tut

    tuuu

    ni

    ni

    ni

    ni

    2

    3

    231

    332

    3

    33

    3

    3

    2

    22

    2

    2

    ,6622

    xtOxxuat

    tux

    xuat

    tu

    xua

    tu

    4

  • PDE

    62

    Modified Equation2/25647

    4

    5

    7122

    7

    xtOxua

    tu

    xtxtOxuxata

    xua

    tu

    ,

    ,,

    3

    33

    3

    3

    223

    3232

    2

    2

    3223

    3

    32

    2

    2

    2

    ,,,

    1326

    12

    xxtxttOxuxcxa

    xucxa

    xua

    tu

    K.A. Hoffmann & S.T. Chiang, Computational Fluid Dynamics for Engineers Volume I, Chapter 4, Section 4.6 Modified Equation, Engineering Education System (EES), 1993.

  • PDE

    63

    Artificial/Numerical Viscosity

    7u

    eArtificial/Numerical Viscositydissipate

    7 3223

    3

    32

    2

    2

    2

    ,,,

    1326

    12

    xxtxttOxuxcxa

    xucxa

    xua

    tu

    22

    121

    xucxae

    e=0c=1Courant2tCourantLax-Wendroff

  • PDE 64

    Finite-Difference Method, FDM 1 2 3

  • PDE

    65

    31/3Unsteady Diffusion Equation

    1022

    x

    xu

    tu

    1,1,0,00)0,(

    0.1

    tutuxu

    FTCSExplicitForward Euler

    2111

    122121

    211

    1

    21

    21

    2

    xtrruurruu

    ux

    tux

    tux

    tu

    xuuu

    tuu

    ni

    ni

    ni

    ni

    ni

    ni

    ni

    ni

    ni

    ni

    ni

    ni

    ni

  • PDE

    66

    32/3Unsteady Diffusion Equation

    ImplicitBackward Euler

    nininini

    ni

    ni

    ni

    ni

    ni

    ni

    ni

    ni

    ni

    uruurru

    uux

    tux

    tux

    tx

    uuut

    uu

    11

    111

    112

    12

    112

    2

    11

    111

    1

    21

    21

    2

    1022

    x

    xu

    tu

    1,1,0,00)0,(

    0.1

    tutuxu

  • PDE

    67

    33/3Unsteady Diffusion Equation

    -Crank-Nicolson

    nininininini

    ni

    ni

    ni

    ni

    ni

    ni

    ni

    ni

    ni

    ni

    ni

    ni

    urururururur

    ux

    tux

    tux

    tux

    t

    xuuu

    xuuu

    tuu

    111

    111

    1

    21

    121

    21

    12

    211

    2

    11

    111

    1

    21

    221

    2

    21

    2221

    -

  • PDE

    68

    ExplicitForward Euler

    niu

    niu 1

    niu 1

    1niu

    niu

    1niu

    11

    niu

    11

    niu

    niu

    niu 1

    niu 1

    1niu

    11

    niu

    11

    niu

    ImplicitBackward Euler

    -Crank-Nicolson

  • PDE

    69

    21

    2

    x

    tr

    )1(cos2121cos2

    21

    21

    21 111

    rrrgreerg

    ureururegu

    ruurruu

    II

    ni

    Ini

    ni

    Ini

    ni

    ni

    ni

    ni

    21

    2sin2

    1

    12

    sin4111

    2sin41)1(cos21

    2

    2

    2

    r

    rg

    rrg

    )cos1(211

    21

    21 1111

    1

    rg

    uuegrurguegr

    uruurru

    ni

    ni

    Ini

    ni

    I

    ni

    ni

    ni

    ni

    1cos1210cos11

    rg

    Crank-Nicolson

  • PDE

    70

    t=2.00

    r= 0.515x= 0.10, t= 0.00515

    r= 0.500x= 0.10, t= 0.00500

    -0.50

    0.00

    0.50

    1.00

    1.50

    0.00 0.20 0.40 0.60 0.80 1.00

    r= 0.515

    r= 0.500

    Exact

  • PDE

    71

    1/3implicit REAL*8(A-H,O-Z)real(kind=8), dimension(:), allocatable:: U, U0, Breal(kind=8), dimension(:,:), allocatable:: AMATreal(kind=8) :: DX, DT, TIME, C, LENGTHinteger :: N

    !C!C +-------+!C | INIT. |!C +-------+!C===

    write (*,*) 'NE, DT, OMEGA'read (*,*) NE, DT, OMG

    DIFF= 1.d0

    DX= 1.d0/dfloat(NE)N = NE + 1EPS= 1.d-08

    allocate (B(N), U(N), U0(N), AMAT(N,N))COEF= DIFF*DT/(DX*DX)

    do j= 1, Ndo i= 1, NAMAT(i,j)= 0.d0

    enddoenddo

    do i= 1, NU (i)= 0.d0U0(i)= 0.d0

    enddo

    NE: N: =NE+1DT: tDX: xOMG: SOR1

  • PDE

    72

    2/3do i= 2, N-1AMAT(i,i )= 2.d0*COEF + 1.d0AMAT(i,i-1)= -COEFAMAT(i,i+1)= -COEFAMAT(i,i )= 1.d0/AMAT(i,i)

    enddo!C!C-- Boundary Conditions

    U(1)= 0.d0U(N)= 1.d0

    !C===

    !C!C +------------------+!C | TIME integration |!C +------------------+!C===

    TIME= 0.d0doTIME= TIME + DT

    BNRM2= 0.d0do i= 2, N-1

    B(i) = U0(i)BNRM2= BNRM2 + B(i)**2

    enddoif (BNRM2.eq.0.d0) BNRM2= 1.d0

    nininini uruurru 11111 21

    1,1,0,00)0,(

    tutuxu

    n

    iib

    1

    2

    2b

    AMAT(i,i)

  • PDE

    73

    3/3!C!C-- SOR

    do iter= 1, 100*NDNRM2= 0.d0do i= 2, N-1

    UU= U(i)RESID= ((B(i) - AMAT(i,i-1)*U(i-1)

    & - AMAT(i,i+1)*U(i+1))*AMAT(i,i)-UU)*OMGU(i)= UU + RESIDDNRM2= DNRM2 + RESID**2

    enddoif (dsqrt(DNRM2/BNRM2).lt.EPS) exit

    enddo

    do i= 1, NU0(i)= U(i)

    enddoif (TIME.ge.2.d0) exit

    enddo!C===

    !C!C-- Result

    write (*,'(a,1pe16.6)') '### TIME', TIMEdo i= 1, N

    XX = dfloat(i-1)*DXwrite (*,'(3(1pe16.6))') XX, U(i)

    enddo

    stopend

    2

    2

    )()1(

    b

    xx kkui*ui n+1

    **111,111,,

    1

    111,

    1,

    111,

    1ii

    niii

    niiii

    ii

    ni

    in

    iiin

    iiin

    iii

    uuuAuABA

    u

    BuAuAuA

  • PDE 74

    Finite-Difference Method, FDM 1 2 3

  • PDE

    75

    1/3 1 3-

    21 LU

  • PDE

    76

    2/3 31 LU

    S.V. PatankarExponential Method

    Patankar, S.V., A Calculation Procedure for Two-Dimensional Elliptic Situations, Numerical Heat Transfer, Vol.4, p.409, 1981

    1111

    115

    15

    1

    211111

    ,0,10,1.01,1.0110

    ,,,0

    iiiicic

    iiiccicccic

    ccciiiiii

    mmmmFmRifmmmRDmFRDmRif

    xaF

    xDxaRumumum

  • PDE

    77

    Exponential MethodRc

    Rc=1.00x= 0.10, a= 1.00, v= 0.10

    Rc=2.50x= 0.10, a= 1.00, v= 0.04

    -0.20

    0.00

    0.20

    0.40

    0.60

    0.80

    1.00

    0.00 0.20 0.40 0.60 0.80 1.00

    Central DifferenceUpwindingExponentialExact

    -0.20

    0.00

    0.20

    0.40

    0.60

    0.80

    1.00

    0.00 0.20 0.40 0.60 0.80 1.00

    Central DifferenceUpwindingExponentialExact

  • PDE

    78

    3/3 23ScilabMatlabC/C++Fortran

    201421913:00

    1

    1 23A4 8

    8

    2318