apa metode canggih untuk solusi numerik ODE dengan sisi kanan terputus-putus? Saya sebagian besar tertarik sedikit demi sedikit fungsi sisi kanan, misalnya tanda.
Saya mencoba memecahkan persamaan dari tipe berikut:
apa metode canggih untuk solusi numerik ODE dengan sisi kanan terputus-putus? Saya sebagian besar tertarik sedikit demi sedikit fungsi sisi kanan, misalnya tanda.
Saya mencoba memecahkan persamaan dari tipe berikut:
Jawaban:
Lihat buku baru David Stewart (2011) tentang topik ini, Dinamika dengan Ketimpangan: Dampak dan Kendala Keras . Masalah gesekan Coulomb disebutkan beberapa kali dalam bab analisis.
Bab 8 dikhususkan untuk metode numerik untuk ODE dan DAE yang tidak mulus. Ini sebagian besar menganjurkan metode Runge-Kutta sepenuhnya implisit dengan perlakuan khusus ketidakmampuan. Catatan Bagian 8.4.4 yang menunjukkan bahwa jika Anda tidak secara akurat menemukan titik-titik ketidaklancaran, semua metode menurunkan ke urutan pertama akurasi , oleh karena itu Euler implisit (dengan modifikasi untuk non- moothness) populer dalam praktiknya. Selain itu, solusi dari masalah dengan ketidaksetaraan terbatas dimensi umumnya tidak piecewise halus, oleh karena teori hanya menyediakan O ( h 1 / 2 ) konvergensi, meskipun dalam prakteknya, O ( h ) sering diamati.
Referensi paling signifikan yang saya tahu adalah tesis David Stewart, yang berusia lebih dari 20 tahun:
Akurasi Tinggi Metode Numerik untuk Persamaan Diferensial Biasa dengan Sisi Kanan Tidak Terputus
Referensi abstrak beberapa karya sebelumnya yang signifikan. Kata kunci di sini adalah inklusi diferensial .
Seperti yang sudah ditunjukkan Mike Dunlavey dalam komentar, ini sering dilakukan dengan menggunakan apa yang disebut fungsi zero-crossing , yaitu fungsi salib itu dari untuk (atau sebaliknya) ketika RHS memiliki diskontinuitas.
Misalnya jika Anda memiliki massa bergerak dengan blok maka jarak antara massa dan blok dapat digunakan sebagai fungsi zero-crossing.
Banyak pemecah ODE (mis. SUNDIALS CVODE) secara otomatis memeriksa apakah ada fungsi zero-crossing yang mengubah tandanya selama langkah terakhir kali. Jika demikian, maka metode pencarian root digunakan untuk menentukan lokasi yang tepat dari root. Pemecah kemudian dapat dimulai kembali pada posisi tertentu. Ini dapat dilakukan secara otomatis oleh solver itu sendiri atau secara manual oleh kode panggilan.