das shake/rattle zeitintegrationsverfahren für ... · pdf filestrukturerhaltende...

Click here to load reader

Post on 25-Aug-2019

216 views

Category:

Documents

0 download

Embed Size (px)

TRANSCRIPT

  • Strukturerhaltende Zeitintegratoren Das SHAKE/RATTLE Zeitintegrationsverfahren

    für Zwangsbedingungen (Tobias Hofmann)

    Das SHAKE/RATTLE Zeitintegrationsverfahren

    für Zwangsbedingungen

    1

    Mittwoch, 26. Januar 2011

  • Strukturerhaltende Zeitintegratoren Das SHAKE/RATTLE Zeitintegrationsverfahren

    für Zwangsbedingungen (Tobias Hofmann) 2

    Gliederung:

    1. Wiederholung

    2. Das SHAKE-Verfahren

    3.Spezialisierung/Vorbereitung

    4. Berechnung der Lagrange-Multiplikatoren

    5. Potentialtheorie/Programmbeispiele

    Mittwoch, 26. Januar 2011

  • Strukturerhaltende Zeitintegratoren Das SHAKE/RATTLE Zeitintegrationsverfahren

    für Zwangsbedingungen (Tobias Hofmann) 3

    Wiederholung des RATTLE-Algorithmus

    pn+ 1 4 = pn − ∆t

    2 ·GT(qn) · λn

    (pn+ 3 4 , qn+1) = Ψ∆t(p

    n+ 14 , qn)

    0 = g(qn+1)

    pn+1 = pn+ 3 4 − ∆t

    2 ·GT(qn+1) · λn+1

    Mittwoch, 26. Januar 2011

  • Strukturerhaltende Zeitintegratoren Das SHAKE/RATTLE Zeitintegrationsverfahren

    für Zwangsbedingungen (Tobias Hofmann) 4

    Das SHAKE-Mehrschrittverfahren

    qn+1 − 2qn + qn−1 = −∆t2 ·M−1 · (GT(qn)λn +Uq(qn)) 0 = g(qn+1)

    Mittwoch, 26. Januar 2011

  • Strukturerhaltende Zeitintegratoren Das SHAKE/RATTLE Zeitintegrationsverfahren

    für Zwangsbedingungen (Tobias Hofmann) 5

    Eine Beschränkung

    gij : � Rd

    �N→ R (q1, q2, . . . , qN) �→ �qi − qj�2 − d2ij

    gij(q) = 0

    Mittwoch, 26. Januar 2011

  • Strukturerhaltende Zeitintegratoren Das SHAKE/RATTLE Zeitintegrationsverfahren

    für Zwangsbedingungen (Tobias Hofmann) 6

    Versteckte Bedingung

    ġij = 2· < qi − qj, q̇i − q̇j >= 0

    Mittwoch, 26. Januar 2011

  • Strukturerhaltende Zeitintegratoren Das SHAKE/RATTLE Zeitintegrationsverfahren

    für Zwangsbedingungen (Tobias Hofmann) 7

    Die Beschränkungen

    g : � Rd

    �N→ RM

    (q1, q2, . . . , qN) �→

    

    �qi1 − qj1�2 − d2i1j1 �qi1 − qj1�2 − d2i1j1

    . . . �qiM − qjM�2 − d2iMjM

    

    g(q) = 0

    Mittwoch, 26. Januar 2011

  • Strukturerhaltende Zeitintegratoren Das SHAKE/RATTLE Zeitintegrationsverfahren

    für Zwangsbedingungen (Tobias Hofmann) 8

    Spezieller RATTLE-Algorithmus (gewohnte Hamilton, Störmer-Verlet, spezielle Beschränkungen)

    pn+ 1 4 = pn − ∆t

    2 ·GT(qn) · λn

    pn+ 1 2 = pn+

    1 4 − ∆t

    2 ·Uq(qn)

    qn+1 = qn +∆t ·M−1 · pn+ 12

    pn+ 3 4 = pn+

    1 2 − ∆t

    2 ·Uq(qn+1)

    0 = g(qn+1)

    pn+1 = pn+ 3 4 − ∆t

    2 ·GT(qn+1) · λn+1

    0 = G(qn+1) ·M−1 · pn+1

    Mittwoch, 26. Januar 2011

  • Strukturerhaltende Zeitintegratoren Das SHAKE/RATTLE Zeitintegrationsverfahren

    für Zwangsbedingungen (Tobias Hofmann) 9

    Die erste nichtlineare Gleichung

    0 = g(qn +∆t ·M−1 · (pn − ∆t 2

    ·GT(qn) · λn − ∆t 2

    ·Uq(qn)))

    0 = g(q̃n+1 − ∆t 2

    2 ·M−1 ·GT(qn) · λn)

    q̃n+1 = qn +∆t ·M−1 · (pn − ∆t 2 Uq(q

    n))

    p̃n+ 3 4 = pn − ∆t

    2 Uq(q

    n)− ∆t 2 Uq(q

    n+1)

    Mittwoch, 26. Januar 2011

  • Strukturerhaltende Zeitintegratoren Das SHAKE/RATTLE Zeitintegrationsverfahren

    für Zwangsbedingungen (Tobias Hofmann) 10

    Hilfsrechnung: (GT(qn) · λn)k =

    =

    (∇qgi1j1 . . .∇qgiMjM) ·

     λni1j1 ...

    λniMjM

    

    

    k

    =

    

     ∂q1(gi1j1) · · · ∂q1(giMjM) ∂qk(gi1j1) · · · ∂qk(giMjM) ∂qN(gi1j1) · · · ∂qN(giMjM)

     ·

     λni1j1 ...

    λniMjM

    

    

    k

    = �

    (i,j)∈I,i

  • Strukturerhaltende Zeitintegratoren Das SHAKE/RATTLE Zeitintegrationsverfahren

    für Zwangsbedingungen (Tobias Hofmann) 11

    Die Gleichung, betrachtet in einer Komponenten:

    �q̃n+1i − q̃ n+1 j −∆t

    2 · ( 1 mi

    + 1

    mj )(qni − qnj )λij�2 ≈ d2ij

    Genäherte Komponente:

    �q̃n+1i − q̃ n+1 j −∆t

    2 · ( 1 mi

    l:(i,l)∈I∪I∗ (qni − qnl )λil −

    1

    mj

    l:(l,j)∈I∪I∗ (qnj − qnl )λlj)�2 = d2ij

    Mittwoch, 26. Januar 2011

  • Strukturerhaltende Zeitintegratoren Das SHAKE/RATTLE Zeitintegrationsverfahren

    für Zwangsbedingungen (Tobias Hofmann) 12

    Die Näherungslösung für den Lagrange-Multiplikator

    λij ≈ d2ij − �q̃

    n+1 i − q̃

    n+1 j �2

    −2∆t2 · ( 1mi + 1 mj

    )�qni − qnj , q̃ n+1 i − q̃

    n+1 j �

    Mittwoch, 26. Januar 2011

  • Strukturerhaltende Zeitintegratoren Das SHAKE/RATTLE Zeitintegrationsverfahren

    für Zwangsbedingungen (Tobias Hofmann) 13

    Spezieller RATTLE-Algorithmus

    pn+ 1 4 = pn − ∆t

    2 ·GT(qn) · λn

    pn+ 1 2 = pn+

    1 4 − ∆t

    2 ·Uq(qn)

    qn+1 = qn +∆t ·M−1 · pn+ 12

    pn+ 3 4 = pn+

    1 2 − ∆t

    2 ·Uq(qn+1)

    0 = g(qn+1)

    pn+1 = pn+ 3 4 − ∆t

    2 ·GT(qn+1) · λn+1

    0 = G(qn+1) ·M−1 · pn+1

    Mittwoch, 26. Januar 2011

  • Strukturerhaltende Zeitintegratoren Das SHAKE/RATTLE Zeitintegrationsverfahren

    für Zwangsbedingungen (Tobias Hofmann) 14

    Die resultierenden Aktualisierungen

    q̃n+1i = q̃ n+1 i +

    ∆t2

    2mi · (qni − qnj )λij

    q̃n+1j = q̃ n+1 j −

    ∆t2

    2mj · (qni − qnj )λij

    p̃ n+ 34 i = p̃

    n+ 34 i +

    ∆t

    2 · (qni − qnj )λij

    p̃ n+ 34 j = p̃

    n+ 34 j −

    ∆t

    2 · (qni − qnj )λij

    Mittwoch, 26. Januar 2011

  • Strukturerhaltende Zeitintegratoren Das SHAKE/RATTLE Zeitintegrationsverfahren

    für Zwangsbedingungen (Tobias Hofmann) 15

    Die zweite nichtlineare Gleichung

    G(qn+1) ·M−1 · (p̃n+1 − ∆t 2

    ·GT(qn+1)λn+1)) = 0

    Mittwoch, 26. Januar 2011

  • Strukturerhaltende Zeitintegratoren Das SHAKE/RATTLE Zeitintegrationsverfahren

    für Zwangsbedingungen (Tobias Hofmann) 16

    Lösung der zweiten nichtlinearen Gleichung

    �qn+1i − q n+1 j ,

    1

    mi p̃n+1i −

    1

    mj p̃n+1j −

    ∆t

    2 ( 1

    mi

    l:(i,l)∈I∪I∗ (qn+1i − q

    n+1 l )λ

    il − 1 mj

    l:(l,j)∈I∪I∗ (qn+1l − q

    n+1 j )λ

    lj)� = 0

    �qn+1i − q n+1 j ,

    1

    mi p̃n+1i −

    1

    mj p̃n+1j −

    ∆t

    2 ( 1

    mi +

    1

    mj )(qn+1i − q

    n+1 j )λ

    ij� ≈ 0

    λij ≈ 2 ∆t

    · �qn+1i − q

    n+1 j ,

    1 mi

    p̃n+1i − 1mj p̃ n+1 j �

    ( 1mi + 1 mj

    ) · d2ij

    Mittwoch, 26. Januar 2011

  • Strukturerhaltende Zeitintegratoren Das SHAKE/RATTLE Zeitintegrationsverfahren

    für Zwangsbedingungen (Tobias Hofmann) 17

    Spezieller RATTLE-Algorithmus

    pn+ 1 4 = pn − ∆t

    2 ·GT(qn) · λn

    pn+ 1 2 = pn+

    1 4 − ∆t

    2 ·Uq(qn)

    qn+1 = qn +∆t ·M−1 · pn+ 12

    pn+ 3 4 = pn+

    1 2 − ∆t

    2 ·Uq(qn+1)

    0 = g(qn+1)

    pn+1 = pn+ 3 4 − ∆t

    2 ·GT(qn+1) · λn+1

    0 = G(qn+1) ·M−1 · pn+1

    Mittwoch, 26. Januar 2011

  • Strukturerhaltende Zeitintegratoren Das SHAKE/RATTLE Zeitintegrationsverfahren

    für Zwangsbedingungen (Tobias Hofmann) 18

    Die resultierenden Aktualisierungen Abschließende Anmerkungen

    p̃n+1i = p̃ n+1 i +

    ∆t

    2 · (qn+1i − q

    n+1 j )λ

    ij

    p̃n+1j = p̃ n+1 j −

    ∆t

    2 · (qn+1i − q

    n+1 j )λ

    ij

    Mittwoch, 26. Januar 2011

  • Strukturerhaltende Zeitintegratoren Das SHAKE/RATTLE Zeitintegrationsverfahren

    für Zwangsbedingungen (Tobias Hofmann) 19

    Das Lennard-Jones-Potential im Vergleich zum Gravitationspotential

    Mittwoch, 26. Januar 2011