Allen ve Tildesley'nin Sıvılar Bilgisayar Simülasyonu kitabını okuyorum. 71. sayfadan itibaren yazarlar, Newton'un hareket denklemlerini moleküler dinamik (MD) simülasyonlarına entegre etmek için kullanılan çeşitli algoritmaları tartışıyorlar. 78. sayfadan itibaren, yazarlar belki de MD'deki kanonik entegrasyon algoritması olan Verlet algoritmasını tartışıyorlar. Belirtiyorlar:
Belki de hareket denklemlerini entegre etmek için en yaygın kullanılan yöntem, başlangıçta Verlet (1967) tarafından benimsenen ve Stormer'a (Gear 1971) atfedilen yöntemdir. Bu yöntem ikinci derece denkleminin doğrudan bir çözümüdür . Yöntem , ivmeler ve önceki adımdaki konumlarına . Pozisyonları ilerletme denklemi aşağıdaki gibidir:
Eşitlik hakkında dikkat edilmesi gereken birkaç nokta vardır (3.14). Hızların hiç görünmediği görülecektir. Taylor genişlemesi ile elde edilen denklemlerin ilavesiyle elimine edilmiştir :
Sonra, daha sonra (sayfa 80), yazarlar şöyle diyor:
Verlet algoritmasına karşı ... algoritmanın biçimi gereksiz yere bazı sayısal belirsizlikler getirebilir. Bunun nedeni, eqn (3.14) ' de büyük terimlerin farkına ( ) küçük bir terim ( ) eklendiğinden , Yörünge oluşturmak için. O ( δ t 0 )
Sanırım "küçük terim" ve "büyük terimlerin farkı" .2 r ( t ) - r ( t - δ t )
Sorum şu: Sayısal tutarsızlık neden büyük terimlerin farkına küçük bir terim eklemekten kaynaklanıyor?
Kayan nokta aritmetiğinin detaylarına hiç aşina olmadığım için oldukça temel, kavramsal bir nedenle ilgileniyorum. Ayrıca, bana bu soruyla ilgili kayan nokta aritmetiği ile ilgili temel fikirleri tanıtacak "genel bakış türü" referansları (kitaplar, makaleler veya web siteleri) biliyor musunuz? Zaman ayırdığınız için teşekkürler.