Fungsi memiliki singularitas dekat . Singularitas itu dapat diangkat, meskipun: untuk , seseorang harus memiliki , karena Dan dengan demikian Namun, bentuk tidak hanya tidak didefinisikan pada , secara numerik juga tidak stabil di sekitar titik itu; dalam rangka untuk mengevaluasi untuk sangat kecil numerik, orang bisa menggunakan ekspansi Taylor, yaitu pemotongan dari seri kekuasaan sungai tersebut.x = 0 x = 1 f ( x ) = 1 e x = ∑ k = 0 x k(ex-1)/x=∑k=1x k - 1
T : Apakah fungsi memiliki nama? Dengan kata lain, apakah ini masalah umum?
T : Apakah ada yang mengetahui pustaka C / C ++ yang menangani situasi ini dengan baik, yaitu menggunakan ekspansi Taylor dengan derajat yang sesuai dekat 0 dan representasi lainnya jauh dari nol?
Untuk menjawab pertanyaan pertama Anda, tidak, fungsi tidak memiliki nama (setidaknya bukan yang dikenal luas).
Seperti yang disebutkan orang lain, cara terbaik untuk menghitung fungsi ini adalah dengan merawat beberapa kasus khusus. Ini adalah bagaimana perpustakaan mana pun akan menghitung fungsi.
double
2e-8
5e-4
expm1(x)/x
.Anda bisa menjadi lebih canggih dan khusus kasus lebih banyak hal dengan seri Taylor terpotong, tetapi mungkin tidak layak. Faktanya, tidak sepenuhnya jelas bahwa kasus 1 perlu ditangani secara terpisah, karena seperti yang ditunjukkan k20, pembatalan itu aman. Namun, menangani secara terpisah akan membuat saya merasa lebih percaya diri tentang hal itu.
sumber
Saya ingat pertanyaan ini telah ditanyakan sebelumnya di situs ini, dan anehnya jawabannya adalah bahwa Anda hanya perlu persamaan kasus yang tepat menjadi nol. Kesalahan dibatalkan mendekati nol. Saya tidak punya tautannya.Ya jawaban ini sepenuhnya salah. Saya tidak yakin mengapa itu begitu banyak dipilih, mungkin karena dinyatakan begitu otoritatif. Saya menemukan tautan yang ada dalam pikiran saya. Itu di stackexchange matematika di sini , bukan di stackexchange scicomp. The
expm1
-gratis Formula pembatalan kesalahan diberikan dalam jawaban oleh JM dan menggunakanu = exp(x)
transformasi.sumber
Untuk menjawab pertanyaan pertama dan menyediakan metode (mungkin tidak efisien secara numerik) untuk pertanyaan kedua, perhatikan bahwa ini adalah kebalikan dari fungsi pembangkitan angka Bernoulli .
sumber