moleküler dinamikler


Moleküler dinamik bir teknolojidir sayısal simülasyon bir sistemin oluşumunu model parçacıklar zamanla. Özellikle malzeme biliminde ve organik moleküller , proteinler , yumuşak madde ve makromoleküllerin incelenmesi için kullanılır .

Uygulamada, moleküler dinamik , Newton mekaniği çerçevesinde, belirli bir ortamda ( sıcaklık , basınç , elektromanyetik alan , sınır koşulları , vb.) birkaç on ila birkaç bin parçacıktan oluşan bir kümenin zaman içindeki hareketini simüle etmekten ibarettir .

Sorunu katı hal fiziği ve kuantum kimyası : şimdi, moleküler dinamik sayısız uygulamaları vardır biyoloji , biyokimya , organik kimya , parçacık fiziği , yoğun madde fiziği , malzeme bilimi , mekanik ... basit davaları modelleme nispeten kolay olabilir ise (ör tersini bakınız) , bazı fenomenleri modellemek özellikle karmaşık olabilir: nükleer reaksiyonlar ( nükleer fisyon veya nükleer füzyon ), izotop içeren atom grupları, arayüz bölgelerinde ve / veya korozyon ( farklı redoks potansiyeli ), vb.

Genel açıklama

Herhangi bir sayısal simülasyonda olduğu gibi, zaman ayrı bir şekilde gelişir  : zaman, "zaman adımı" veya "zaman adımı" olarak adlandırılan çok kısa bir aralıkla ayrılan bir dizi an'a bölünür , not edilir ve . Simülasyon daha sonra bir önceki anda elde edilen sonuçları kullanarak parçacıkların her anki konumunu ve hızını hesaplamaktan oluşacaktır .

Bunun için her an için Newton'un bir parçacık için yazılmış ikinci yasasını uyguluyoruz:

∑f→ben(t)=m⋅de→(t){\ displaystyle \ toplam {\ vec {f}} _ {i} (t) = m \ cdot {\ vec {a}} (t)} veya:

Ele alınan parçacıkların atom olması durumunda , etkileşim kuvvetlerinin hesaplanmasına iki ana yöntem izin verir:

İlk yaklaşım, özellikle kesin olma avantajına sahiptir, ancak çok sayıda sayısal hesaplama gerektirdiğinden, yalnızca birkaç on parçacıktan oluşan sistemler için düşünülebilir. İkincisi yaygın olarak kullanılır ve birkaç bin hatta milyonlarca parçacıktan oluşan sistemlerin kolayca çalışılmasını mümkün kılar, ancak atomlar arası potansiyel seçimi gibi zor bir soruyu gündeme getirir .

Sınırlara kadar koşullar

Moleküler dinamikte incelenen sistem, tipik olarak, boyutların ve parçacıkların bulunduğu paralel yüzlü bir 3D "simülasyon kutusudur" .

Sözde sonsuz bir kristali bir, iki veya üç boyutta simüle etmek için periyodik sınır koşulları uygulayacağız . Bu, bir parçacık simülasyon kutusundan bir yüz ile ayrıldığında, aynı hızla, karşı yüz seviyesinde kutuya geri döndüğü anlamına gelir.

Kuvvetleri hesaplarken, uzayın bu periyodikliği dikkate alınmalıdır. Uygulamada, etkileşimin gücünde, periyodiklikten etkilenmeyecek olan kısa menzilli terimler, yani sadece en yakın parçacıkların dikkate alınacağı ve uzun vadeli bir kapsamın olması gerektiğini ayırt edeceğiz. bunu hesaba kat. Uzun menzilli terim genellikle Coulomb tipindedir ve Ewald toplamı ile hesaplanacaktır .

algoritmaları çözme

Uygulanması Newton'un ikinci kanunu bir veren ikinci sıra diferansiyel denklem (bilinen hareket denkleminin çözülmesi gereken, her bir partikül, için). Amaç, etkileşim kuvvetlerini bilerek hesapladığımız bir önceki andaki ivmesini bilerek , parçacığın o andaki koordinatlarını belirlemektir .

Çalışılan sisteme bağlı olarak birkaç sayısal çözünürlük algoritması az ya da çok başarı ile kullanılabilir. Genellikle Taylor açılımlarına dayanan denkleme yaklaşık bir çözüm sağlarlar . İyi bir algoritma , kapalı bir sistem düşünüldüğünden , enerjinin korunumu yasasına saygı gösterirken, hızlı bir çözüme izin vermelidir .

En yaygın algoritmalar şunlardır:

Etkileşim kuvvetlerinin (veya potansiyellerin / etkileşim enerjilerinin) hesaplanması

Moleküler dinamiğin simülasyonu için kuvvetlerin hesaplanması esastır. Yukarıda bahsedildiği gibi, atomlara etki eden kuvvetlerin hesaplanması için iki yaklaşım uygulanabilir:

Bu genellikle hesaplama süresi açısından en maliyetli kısımdır. Dikkate alınan ana etkileşimler şunlardır:

Simülasyon N tane parçacık içeriyorsa, olası etkileşimler vardır. Bu nedenle yapılacak hesaplama sayısı olarak artar , bu da büyük boyutlu sistemlerin neden bir hesaplama süresi gerektirdiğini açıklar.

Belirlenecek etkileşimlerin sayısını azaltmak için, hesaplamaların etkileşimine en yakın parçacıklar sınırlandırılır, yani bunun ötesinde etkileşimlerin ihmal edildiği bir eşik mesafesi veya mesafe kesilmesi (cutoff) belirlenir. Ancak bu yöntem , her bir parçacığın yakın komşularının listesini belirlemek için ikişer ikişer parçacık arasındaki mesafelerin, yani mesafelerin hesaplanmasını gerektirir . Verlet'in yönteminde , kesme yarıçapını artırabiliriz, böylece oluşturulan etkileşimciler listesi birkaç simülasyon adımı için kullanılabilir.

Diğer yaklaşımlar, hücre listeleri yöntemi (hücre bağlantılı listeler) , simülasyon kutusu olabilen bir hücre veya onun görüntülerinden biri gibi etkileşimcilerin listelerini belirlemek için hesaplanacak mesafelerin sayısını azaltmayı mümkün kılar :

Etkileşim çok uzun bir mesafede hissedilirse, tipik olarak potansiyel 1 / r n'de ve n ≤ 2 ise, bir kesme mesafesi ile sınırlama hatalara neden olur. Daha sonra Ewald-Kornfeld toplamı veya Ladd'ın çok kutuplu açılımı gibi sonsuz bir kafes üzerinde toplama türünden yöntemlere başvururuz.

Hesaplama zamanı

Hesaplama süresi büyük ölçüde moleküler dinamikleri simüle ederken kullanılan kuvvet alanına bağlıdır. Polarize olabilen kuvvet alanları (AMOEBA, SIBFA...vs.) polarize olmayan bir kuvvet alanına (AMBER,CHARMM...vs) göre hesaplama süresinde çok daha maliyetlidir.

Notlar ve referanslar

  1. Becquart ve Michel Perez, "  Malzemelere uygulanan moleküler dinamikler  ", Techniques de l'Ingénieur ,10 Ocak 2010( çevrimiçi okuyun , 2 Kasım 2018'de danışıldı )
  2. Loup Verlet , klasik akışkanlar üzerinde "  Bilgisayar" deneyleri ". ben. lennard-jones moleküllerinin termodinamik özellikleri.  », Fiziksel İnceleme , cilt.  159,1967, s.  98.
  3. MP Allen ve DJ Tildesley , Sıvıların bilgisayar simülasyonu. , Clarendon Basın ,1987( ISBN  0-19-855375-7 ve 0-19-855645-4 , çevrimiçi okuyun ).
  4. bkz ve [PDF]

Ekler

bibliyografya

İlgili Makaleler

<img src="https://fr.wikipedia.org/wiki/Special:CentralAutoLogin/start?type=1x1" alt="" title="" width="1" height="1" style="border: none; position: absolute;">