Die Struktur dichter Polymersysteme: Geometrie, Algorithmen, Software Matthias Müller Institut für...

26
Die Struktur dichter Die Struktur dichter Polymersysteme: Polymersysteme: Geometrie, Geometrie, Algorithmen, Software Algorithmen, Software Matthias Müller Matthias Müller Institut für Theoretische Informatik Institut für Theoretische Informatik ETH Zürich ETH Zürich Wie packt man Wie packt man Riesenmoleküle in Riesenmoleküle in eine kleine eine kleine Schachtel? Schachtel?

Transcript of Die Struktur dichter Polymersysteme: Geometrie, Algorithmen, Software Matthias Müller Institut für...

Page 1: Die Struktur dichter Polymersysteme: Geometrie, Algorithmen, Software Matthias Müller Institut für Theoretische Informatik ETH Zürich Wie packt man Riesenmoleküle.

Die Struktur dichter Polymersysteme:Die Struktur dichter Polymersysteme: Geometrie, Algorithmen, SoftwareGeometrie, Algorithmen, Software

Matthias MüllerMatthias MüllerInstitut für Theoretische InformatikInstitut für Theoretische Informatik

ETH ZürichETH Zürich

Wie packt man Wie packt man Riesenmoleküle in eine Riesenmoleküle in eine

kleine Schachtel?kleine Schachtel?

Page 2: Die Struktur dichter Polymersysteme: Geometrie, Algorithmen, Software Matthias Müller Institut für Theoretische Informatik ETH Zürich Wie packt man Riesenmoleküle.

InhaltInhalt

Chemischer HintergrundChemischer Hintergrund Das Polymer PackungsproblemDas Polymer Packungsproblem Neue AlgorithmenNeue Algorithmen ResultateResultate SchlussfolgerungenSchlussfolgerungen

Page 3: Die Struktur dichter Polymersysteme: Geometrie, Algorithmen, Software Matthias Müller Institut für Theoretische Informatik ETH Zürich Wie packt man Riesenmoleküle.

PolymerePolymere

Natürliche Polymere:Natürliche Polymere:

Synthetische Polymere:Synthetische Polymere:

Holz (Proteine)Holz (Proteine) Kautschuk (Gummi)Kautschuk (Gummi)

KunststoffeKunststoffe Kunstfasern (Nylon)Kunstfasern (Nylon) KlebstoffeKlebstoffe

Page 4: Die Struktur dichter Polymersysteme: Geometrie, Algorithmen, Software Matthias Müller Institut für Theoretische Informatik ETH Zürich Wie packt man Riesenmoleküle.

Polymer-MolekülePolymer-Moleküle

Lange KettenLange Ketten Grundeinheit: MonomereGrundeinheit: Monomere Polyethylen: CHPolyethylen: CH33(CH(CH22))NNCHCH33

Page 5: Die Struktur dichter Polymersysteme: Geometrie, Algorithmen, Software Matthias Müller Institut für Theoretische Informatik ETH Zürich Wie packt man Riesenmoleküle.

KonformationKonformation

Polymer-GlasPolymer-Glas Dicht Dicht Ineinander verknotetIneinander verknotet Schwierig zu ändernSchwierig zu ändern

(Relaxationszeit)(Relaxationszeit)

Page 6: Die Struktur dichter Polymersysteme: Geometrie, Algorithmen, Software Matthias Müller Institut für Theoretische Informatik ETH Zürich Wie packt man Riesenmoleküle.

ComputersimulationComputersimulation

AtomistischesAtomistischesModellModell

rr = (r = (r11,…,r,…,rNN)) Positionen (Konformation)Positionen (Konformation)

pp = (p = (p11,…,p,…,pNN)) ImpulseImpulse V(V(rr)) Potentielle EnergiePotentielle Energie

Pico-Sekunden (10Pico-Sekunden (10-12-12s)s) Relaxationszeit: Minuten bis JahreRelaxationszeit: Minuten bis Jahre

MoleküldynamikMoleküldynamik

r(t1) r(t2) r(t3) r(t4)

Gesucht: “realistische“ AnfangsstrukturGesucht: “realistische“ Anfangsstruktur

??

Page 7: Die Struktur dichter Polymersysteme: Geometrie, Algorithmen, Software Matthias Müller Institut für Theoretische Informatik ETH Zürich Wie packt man Riesenmoleküle.

Das Polymer-PackungsproblemDas Polymer-Packungsproblem

1.1. Tiefer potentieller EnergieTiefer potentieller Energie

2.2. Korrekten räumlichen Eigenschaften Korrekten räumlichen Eigenschaften (Winkelstatistik, End-zu-End-Abstände)(Winkelstatistik, End-zu-End-Abstände)

3.3. Geforderter Dichte Geforderter Dichte

Gesucht: Konformation mitGesucht: Konformation mit

Bisherige MethodenBisherige Methoden Grobe Schätzung Grobe Schätzung Energie-Minimierung Energie-Minimierung

Räumliche Eigenschaften Räumliche Eigenschaften gehen verlorengehen verloren

Keine “realistischen” Keine “realistischen” Konformationen für Polystyrol, Konformationen für Polystyrol, Polykarbonat, usw.Polykarbonat, usw.

Page 8: Die Struktur dichter Polymersysteme: Geometrie, Algorithmen, Software Matthias Müller Institut für Theoretische Informatik ETH Zürich Wie packt man Riesenmoleküle.

Neuer AnsatzNeuer Ansatz

Geometrisches ModellGeometrisches Modell

Das Polymer-Packungsproblem (PP) Das Polymer-Packungsproblem (PP) ist NP-vollständigist NP-vollständig

Geometrisch- kombinatorisches Optimierungsproblem:Geometrisch- kombinatorisches Optimierungsproblem:

Finde Konformation, die A-C gleichzeitig erfüllt!Finde Konformation, die A-C gleichzeitig erfüllt!

A.A. Geometrische BedingungenGeometrische Bedingungen

B.B. TorsionswinkelstatistikTorsionswinkelstatistik

C.C. Periodische RandbedingungenPeriodische Randbedingungen

1.1. Energie-FunktionEnergie-Funktion

2.2. Räumliche Eigenschaften Räumliche Eigenschaften

3.3. Dichte Dichte

Page 9: Die Struktur dichter Polymersysteme: Geometrie, Algorithmen, Software Matthias Müller Institut für Theoretische Informatik ETH Zürich Wie packt man Riesenmoleküle.

Geometrisches ModellGeometrisches Modell

Torsionswinkel-Torsionswinkel-raumraum

IntervalleIntervalle VerteilungVerteilung

rrCC rrHH

Kugel-ModellKugel-Modell

Page 10: Die Struktur dichter Polymersysteme: Geometrie, Algorithmen, Software Matthias Müller Institut für Theoretische Informatik ETH Zürich Wie packt man Riesenmoleküle.

PolyPackPolyPack

Init torsionsInit torsions

repeatrepeat

forallforall ii

Optimize(Optimize(ii,limit),limit)

endforendfor

until until (local) minimum(local) minimumM

ax.

Ko

llisi

on

Ma

x. K

olli

sio

n

LimiteLimite

WinkelWinkel

Wa

hrsc

hein

lich

keit

Wa

hrsc

hein

lich

keit

WinkelWinkel

Page 11: Die Struktur dichter Polymersysteme: Geometrie, Algorithmen, Software Matthias Müller Institut für Theoretische Informatik ETH Zürich Wie packt man Riesenmoleküle.

HorizontHorizont

IntramolekulareIntramolekulare

KollisionKollision hh

hhIntermolekulare Intermolekulare

KollisionKollision

Page 12: Die Struktur dichter Polymersysteme: Geometrie, Algorithmen, Software Matthias Müller Institut für Theoretische Informatik ETH Zürich Wie packt man Riesenmoleküle.

Parallele Rotation (Parrot)Parallele Rotation (Parrot)

Orientierung & Rotation Orientierung & Rotation erhaltenerhalten

3 Kompensationswinkel3 Kompensationswinkel

Hebel-EffektHebel-Effekt OrientierungsänderungOrientierungsänderung

Page 13: Die Struktur dichter Polymersysteme: Geometrie, Algorithmen, Software Matthias Müller Institut für Theoretische Informatik ETH Zürich Wie packt man Riesenmoleküle.

Parallele Rotation (Parrot)Parallele Rotation (Parrot)

QuickTime™ and aGIF decompressor

are needed to see this picture.

Page 14: Die Struktur dichter Polymersysteme: Geometrie, Algorithmen, Software Matthias Müller Institut für Theoretische Informatik ETH Zürich Wie packt man Riesenmoleküle.

PolyPackPolyPack

Init torsionsInit torsions

for for h := 0h := 0 to to hhMAXMAX do do

repeatrepeat

forallforall ii dodo

Optimize(Optimize(ii,limit,h),limit,h)

endforendfor

until until (local) minimum(local) minimum

ifif max collision > limitmax collision > limit thenthen

ShakeShake

endifendif

endforendfor

Page 15: Die Struktur dichter Polymersysteme: Geometrie, Algorithmen, Software Matthias Müller Institut für Theoretische Informatik ETH Zürich Wie packt man Riesenmoleküle.

PolyPack SoftwarepaketPolyPack Softwarepaket

InterfaceInterface– X / MotifX / Motif– EinzelschrittEinzelschritt

BatchBatch– ANSI CANSI C– stdio.h / math.hstdio.h / math.h

Biosym File-Biosym File-formate formate (.mdf / .car)(.mdf / .car)

Page 16: Die Struktur dichter Polymersysteme: Geometrie, Algorithmen, Software Matthias Müller Institut für Theoretische Informatik ETH Zürich Wie packt man Riesenmoleküle.

ZeitkomplexitätZeitkomplexität

Testsystem: PolybeadTestsystem: Polybead Atomdurchmesser: 0.90Atomdurchmesser: 0.90 Dichte: 0.90Dichte: 0.90 Bindungswinkelverteilung Bindungswinkelverteilung

prob(prob() ) exp( exp((1-cos(1-cos))))

10

100

1,000

10,000

1,000 10,000 100,000

Anzahl Atome

GenPol

PolyGrow

Page 17: Die Struktur dichter Polymersysteme: Geometrie, Algorithmen, Software Matthias Müller Institut für Theoretische Informatik ETH Zürich Wie packt man Riesenmoleküle.

Test-System PolyethylenTest-System Polyethylen

10 Ketten (50 Monomere)10 Ketten (50 Monomere) 500 Torsionswinkel500 Torsionswinkel 1520 Atome1520 Atome Dichte: 0.90 g/cmDichte: 0.90 g/cm33

Page 18: Die Struktur dichter Polymersysteme: Geometrie, Algorithmen, Software Matthias Müller Institut für Theoretische Informatik ETH Zürich Wie packt man Riesenmoleküle.

Zeitkomplexität von PolyPackZeitkomplexität von PolyPack

1

10

100

1000

10000

100000

1000000

1 10 100

Anzahl Ketten

pe-200

pe-100

pe-50

pe-20

pe-10

t t M M

= = 1.51.5 +/- 0.2 +/- 0.2

Page 19: Die Struktur dichter Polymersysteme: Geometrie, Algorithmen, Software Matthias Müller Institut für Theoretische Informatik ETH Zürich Wie packt man Riesenmoleküle.

Zeitkomplexität von PolyPackZeitkomplexität von PolyPack

t t L L

= = 2.82.8 +/- 0.2 +/- 0.2

1

10

100

1000

10000

100000

1000000

10 100 1000

Länge der Ketten

100 Ketten

50 Ketten

20 Ketten

10 Ketten

5 Ketten

2 Ketten

1 Ketten

Page 20: Die Struktur dichter Polymersysteme: Geometrie, Algorithmen, Software Matthias Müller Institut für Theoretische Informatik ETH Zürich Wie packt man Riesenmoleküle.

Effekt des HorizontsEffekt des Horizonts

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1 21 41 61 81 101 121 141 161 181 201 221 241 261 281

Optimierungsschritt

Kein Horizont

Horizont-Schritt 1

Page 21: Die Struktur dichter Polymersysteme: Geometrie, Algorithmen, Software Matthias Müller Institut für Theoretische Informatik ETH Zürich Wie packt man Riesenmoleküle.

Effekt von ParRotEffekt von ParRot

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

80 100 120 140

Horizont

Parallel RotationSingle RotationGroup RotationChain RotationChain Translation

Page 22: Die Struktur dichter Polymersysteme: Geometrie, Algorithmen, Software Matthias Müller Institut für Theoretische Informatik ETH Zürich Wie packt man Riesenmoleküle.

Qualität des ResultatsQualität des Resultats

0.000

0.050

0.100

0.150

0.200

0.250

0.300

tt tg+ tg- g+t g+g+ g+g- g-t g-g+ g-g-

0.000

0.050

0.100

0.150

0.200

0.250

0.300

RIS Verteilung

Gemessene Verteilung

Maximale Überlappung: 22% (20 Läufe)Maximale Überlappung: 22% (20 Läufe) Dichte: 0.90 g/cmDichte: 0.90 g/cm33

Page 23: Die Struktur dichter Polymersysteme: Geometrie, Algorithmen, Software Matthias Müller Institut für Theoretische Informatik ETH Zürich Wie packt man Riesenmoleküle.

PolystyrolPolystyrol

SeitenkettenSeitenketten ChiralitätChiralität 10% trans-trans10% trans-trans

1.05 g/cm1.05 g/cm33

9 Ketten (ps-40)9 Ketten (ps-40) 5778 Atome5778 Atome 1080 Torsionswinkel1080 Torsionswinkel

Page 24: Die Struktur dichter Polymersysteme: Geometrie, Algorithmen, Software Matthias Müller Institut für Theoretische Informatik ETH Zürich Wie packt man Riesenmoleküle.

PolystyrolPolystyrol

(1) PolyPack

-180

-90

0

90

180

-180 -90 0 90 180

( )i Grad

0.4350.435 0.1300.130

0.0000.000 0.4350.435

(2) Energie-Minimierung

-180

-90

0

90

180

-180 -90 0 90 180

( )i Grad

8% trans - trans8% trans - trans

Page 25: Die Struktur dichter Polymersysteme: Geometrie, Algorithmen, Software Matthias Müller Institut für Theoretische Informatik ETH Zürich Wie packt man Riesenmoleküle.

PolystyrolPolystyrol

(3) MD (300K, 20ps)

-180

-90

0

90

180

-180 -90 0 90 180

( )i Grad

12.5% trans - trans12.5% trans - trans

(4) Amorphous cell

-180

-90

0

90

180

-180 -90 0 90 180

( )i Grad

23.6% trans - trans23.6% trans - trans

Page 26: Die Struktur dichter Polymersysteme: Geometrie, Algorithmen, Software Matthias Müller Institut für Theoretische Informatik ETH Zürich Wie packt man Riesenmoleküle.

SchlussfolgerungenSchlussfolgerungen

Interdisziplinäres ArbeitenInterdisziplinäres Arbeiten

Geometrie als FilterGeometrie als Filter

Parallele Rotation - ein universelles InstrumentParallele Rotation - ein universelles Instrument

PolyPack als Software-PaketPolyPack als Software-Paket