mpmath

Software screenshot:
mpmath
Rincian Software:
Versi: 0.17
Tanggal Upload: 12 May 15
Pengembang: Fredrik Johansson
Lisensi: Gratis
Popularitas: 13

Rating: nan/5 (Total Votes: 0)

mpmath adalah pengganti untuk float / jenis kompleks Python dan modul matematika / cmath dengan presisi dan eksponen ukuran terbatas. Perangkat lunak mpmath seluruhnya ditulis dalam Python tanpa dependensi eksternal dan karenanya berjalan hampir di mana saja, tanpa perlu kompilasi.
Untuk menginstal, membongkar arsip mpmath dan menjalankan
  python setup.py install
Dokumentasi dan penggunaan:
Mpmath impor dengan
    dari mpmath impor *
Ini memberikan kelas MPF dan mpc yang bekerja analog ke mengambang Python dan jenis kompleks:
    >>> MPF (2) / MPF (3)
    MPF (',66666666666666663')
    >>> Mpc (0, -1)
    mpc (= nyata '0', imag = '- 1')
    >>> MPF (-0.6) ** MPF (-0.2)
    mpc (= nyata ',89603999408558288', imag = '- ,65101116249684809')
Untuk output cantik (yang juga menyembunyikan kesalahan pembulatan kecil), penggunaan cetak atau str ():
    >>> Print MPF (2) / MPF (3)
    ,666666666666667
    >>> Print mpc (1 + 2j) ** 0,5
    (1,27201964951407 + 0.786151377757423j)
Presisi yang dikendalikan oleh sifat mpf.prec (jumlah bit) dan mpf.dps (jumlah desimal). Properti ini terkait, sehingga mengubah satu otomatis update lain untuk mencocokkan. Mengatur prec atau dps mengubah presisi di mana semua operasi dilakukan dan jumlah digit untuk menampilkan saat mencetak angka. Standarnya adalah
prec = 53 dan dps = 15, sama dengan Python mengapung.
    >>> Mpf.dps = 30
    >>> MPF (2) / MPF (3)
    MPF ('0,66666666666666666666666666666663')
    >>> Cetak _
    ,666666666666666666666666666667
    >>> Mpf.dps = 15 # mengembalikan ke default
Anda dapat membuat mpfs dan MPCS dari nomor Python, atau menggabungkan mpfs dan MPCS dengan nomor Python dalam operasi aritmatika, tetapi menyadari bahwa Python biasa hanya mengapung memiliki presisi yang terbatas. Untuk menginisialisasi sebuah MPF dengan nilai penuh presisi, menggunakan string:
    >>> MPF (0,1)
    MPF ('0,10000000000000001') # akurasi yang sama sebagai pelampung
    >>> Mpf.dps = 50
    >>> MPF (0,1)
    MPF ('0,1000000000000000055511151231257827021181583404541016') # sampah
    >>> MPF ('0.1')
    MPF ('0,1000000000000000000000000000000000000000000000000001') # ok
Fungsi standar berikut ini tersedia dan mendukung argumen yang nyata dan kompleks:
  sqrt, exp, log, listrik, cos, sin, tan, cosh, sinh, tanh,
  acos, asin, atan, acosh, asinh, Atanh
Contoh:
    >>> Mpf.dps = 15
    >>> Cos cetak (1)
    ,540302305868140
    >>> Mpf.dps = 50
    >>> Cos cetak (1)
    0,54030230586813971740093660744297660373231042061792
Beberapa fungsi yang kurang umum juga tersedia: gamma (fungsi gamma), faktorial, erf (fungsi error), lower_gamma / upper_gamma (fungsi gamma tidak lengkap) dan zeta (Riemann fungsi zeta).
Akhirnya, fungsi kenyamanan Hypot dan atan2 tersedia (didefinisikan untuk bilangan real saja).
Konstanta pi, e, dan cgamma (Euler konstan) yang tersedia sebagai objek khusus yang berperilaku seperti mpfs tapi yang nilainya secara otomatis menyesuaikan diri dengan presisi.
    >>> Mpf.dps = 15
    >>> Cetak pi
    3,14159265358979
    >>> Mpf.dps = 50
    >>> Cetak pi
    3,1415926535897932384626433832795028841971693993751
    >>> Mpf.dps = 15
    >>> E ** (- pi * 1j)
    mpc (real = '- 1', imag = '- 1.2289836075083701E-16')
    >>> Mpf.dps = 50
    >>> E ** (- pi * 1j)
    mpc (real = '- 1', imag = '1,0106 [...] E-51')
Disutradarai pembulatan sebagian dilaksanakan. Sebagai contoh, ini menghitung dan memverifikasi 15 digit pendekatan interval pi:
    >>> Mpf.dps = 15
    >>> Mpf.round_down (); pi1 = + pi
    >>> Mpf.round_up (); pi2 = + pi
    >>> Pi1
    MPF ('3,1415926535897931')
    >>> Pi2
    MPF ('3,1415926535897936')
    >>> Mpf.dps = 30
    >>> Pi1     Benar

Apa yang baru dalam rilis ini:

  • Umum
  • Sekarang mungkin untuk membuat beberapa objek konteks dan menggunakan metode konteks lokal, bukan negara / fungsi global (misalnya mp2 = mp.clone (); mp2.dps = 50; mp2.cos (3)). Tidak semua fungsi telah dikonversi menjadi metode konteks, dan ada beberapa bug, sehingga fitur ini saat eksperimen.
  • Jika mpmath dipasang di Sage 4.0 atau yang lebih baru, mpmath akan sekarang menggunakan sage.Integer bukan Python panjang internal.
  • contoh Dihapus dari gaya lama pembagian integer dari basis kode.
  • runtests.py dapat dijalankan dengan -coverage untuk menghasilkan statistik cakupan.
  • Jenis dan aritmatika dasar
  • perbandingan tetap dengan -inf.
  • Format cetak ulang Berubah dari jenis selang mpi membuat eval (cetak ulang (x)) == x.
  • Peningkatan pencetakan interval, dengan format output dikonfigurasi (disumbangkan oleh Vinzent Steinberg berdasarkan kode oleh Don Peterson).
  • Interval didukung oleh mpmathify () dan nstr () (disumbangkan oleh Vinzent Steinberg).
  • mpc sekarang hashable.
  • Ditambahkan lebih banyak pilihan format untuk fungsi to_str internal.
  • Cepat murni Python akar kuadrat.
  • Perbaiki trailing spasi memberikan nilai salah dalam str- & gt;. MPF konversi
  • Kalkulus
  • Tetap nsum () dengan Euler-Maclaurin penjumlahan yang sebelumnya akan mengabaikan indeks awal dan jumlah dari n = 1.
  • Diimplementasikan metode Newton untuk findroot () (disumbangkan oleh Vinzent Steinberg).
  • aljabar Linear
  • Tetap LU_decomp () untuk mengenali matriks singular (disumbangkan oleh Vinzent Steinberg).
  • Berbagai fungsi norma digantikan oleh fungsi generik vektor norma norma (x, p) dan fungsi generik norma matriks mnorm (x, p).
  • fungsi khusus:
  • Beberapa cache internal diubah menjadi presisi selalu sedikit overallocate. Ini perbaikan perilaku terburuk dimana sebelumnya nilai cache harus menghitung ulang pada setiap pemanggilan fungsi.
  • log Tetap (jumlah kecil) kembali omong kosong di presisi tinggi.
  • gamma Tetap () dan fungsi derivatif seperti binomial () mengembalikan hasil yang salah pada input bilangan bulat menjadi dibagi oleh kekuatan besar 2.
  • asin tetap () untuk tidak menaikkan pengecualian di presisi tinggi (disumbangkan oleh Vinzent Steinberg).
  • Dioptimalkan kode RUPS untuk logaritma natural, membuat metode Newton sebelumnya digunakan di presisi menengah usang.
  • Perhitungan-geometris berarti fungsi RUPS () sekarang urutan besarnya lebih cepat di presisi rendah.
  • implementasi cepat dari ellipk () dan ellipe ().
  • kelanjutan Analytic dari ellipe () untuk | x | & gt;. = 1 dilaksanakan
  • Diimplementasikan fungsi log gamma (loggamma ()) dengan pemotongan cabang yang benar (lambat, pelaksanaan placeholder).
  • pemotongan cabang Tetap hyperfac ().
  • Diimplementasikan Riemann-Siegel Z-fungsi (siegelz ()).
  • Diimplementasikan fungsi theta Riemann-Siegel (siegeltheta ()).
  • perhitungan Diimplementasikan poin Gram (grampoint ()).
  • perhitungan Diimplementasikan Riemann fungsi zeta nol (zetazero ()).
  • Diimplementasikan fungsi penghitungan perdana: lambat, versi yang tepat (primepi ()). dan versi perkiraan cepat (primepi2 ()) yang memberikan interval loncat.
  • Diimplementasikan Riemann R perdana fungsi menghitung (riemannr ()).
  • Diimplementasikan Bell angka dan polinomial (bell ()).
  • Diimplementasikan expm1 () fungsi.
  • Diimplementasikan 'fungsi polyexponential' (polyexp ()).
  • Diimplementasikan konstan prima kembar (twinprime) dan Mertens 'konstan (Mertens).
  • Diimplementasikan fungsi zeta perdana (primezeta ()).

Apa yang baru di versi 0.10:

  • Penambahan termasuk merencanakan dukungan, matriks dan fungsi aljabar linear, baru akar-temuan dan quadrature algoritma, ditingkatkan aritmatika interval, dan beberapa fungsi khusus baru.
  • Banyak peningkatan kecepatan telah dilakukan (beberapa fungsi yang urutan besarnya lebih cepat daripada di 0,9), dan berbagai bug telah diperbaiki.
  • Yang penting, rilis ini perbaikan mpmath untuk bekerja dengan Python 2.6.

Persyaratan :

  • Python

Software yang serupa

Perangkat lunak lain dari pengembang Fredrik Johansson

mpmath
mpmath

14 Apr 15

Komentar untuk mpmath

Komentar tidak ditemukan
Tambahkan komentar
Aktifkan gambar!