Satu-satunya hasil terbalik eksplisit yang saya ketahui adalah Aturan Cramer , yang baru-baru ini terbukti dapat dihitung dalam waktu (seperti eliminasi Gaussian; meskipun tidak yakin dengan konstanta di depan faktor utama).O ( n3)
SEBUAHSEBUAHx b x Adet ( A ) ≠ 0xbxSEBUAH
Agar aman, mungkin yang terbaik adalah memastikan bahwa juga tidak kekurangan peringkat secara numerik (yaitu, tidak memiliki nilai singular yang kecil).SEBUAH
Masalah dengan Aturan Cramer's adalah bahwa sifat stabilitasnya tidak diketahui kecuali untuk (yang maju stabil, tetapi tidak mundur stabil). (Lihat Akurasi dan Stabilitas Algoritma Numerik , edisi ke-2, oleh N. Higham.) Itu tidak dianggap sebagai algoritma yang dapat diandalkan; Eliminasi Gaussian dengan Partial Pivoting (GEPP) lebih disukai.n = 2
Saya akan mengharapkan masalah dengan menggunakan BLAS + LAPACK untuk melakukan GEPP dalam penyelesaian ODE akan ada perbedaan hingga digunakan dalam metode ODE implisit. Saya tahu bahwa orang telah menyelesaikan program linier sebagai bagian dari evaluasi sisi kanan, dan karena mereka melakukannya dengan naif (hanya menyambungkan program linear ke sisi kanan, memanggil algoritma simpleks), mereka sangat mengurangi keakuratan program mereka. solusi yang dihitung dan secara substansial meningkatkan waktu yang dibutuhkan untuk menyelesaikan masalah. Teman sekerja saya menemukan cara untuk menyelesaikan masalah seperti itu dengan cara yang jauh lebih efisien, akurat; Saya harus melihat apakah publikasi ini sudah dirilis. Anda mungkin memiliki masalah serupa terlepas dari apakah Anda memilih untuk menggunakan GEPP atau Aturan Cramer's.
Jika ada cara Anda dapat menghitung matriks Jacobian analitik untuk masalah Anda, Anda mungkin ingin melakukan itu untuk menyelamatkan diri Anda dari sakit kepala numerik. Akan lebih murah untuk mengevaluasi, dan mungkin lebih akurat, daripada perkiraan perbedaan yang terbatas. Ekspresi untuk turunan dari matriks invers dapat ditemukan di sini jika Anda membutuhkannya. Mengevaluasi turunan dari matriks invers sepertinya akan membutuhkan setidaknya dua atau tiga penyelesaian sistem linier, tetapi semuanya akan dengan matriks yang sama dan sisi kanan yang berbeda, sehingga tidak akan jauh lebih mahal daripada sistem linear tunggal. memecahkan.
Dan jika ada cara Anda dapat membandingkan solusi yang dihitung dengan solusi dengan nilai parameter yang diketahui, saya akan melakukan itu, sehingga Anda dapat mendiagnosis apakah Anda telah menemukan salah satu dari jebakan numerik ini.