mpmath

Screenshot Software:
mpmath
Detalii soft:
Versiune: 0.17
Incarca data: 12 May 15
Producător: Fredrik Johansson
Licenţă: Gratuit
Popularitate: 13

Rating: nan/5 (Total Votes: 0)

mpmath este un înlocuitor pentru float / tipuri de complexe Python și module math / cmath cu precizie și exponent dimensiuni nelimitate. Software-ul mpmath este scris în întregime în Python fără dependențe externe și, prin urmare, conduce aproape oriunde, fără a fi nevoie de compilare.
Pentru a instala, despachetați arhiva mpmath și a alerga
  python setup.py instala
Documentație și utilizare:
Import mpmath cu
    din mpmath import *
Aceasta oferă de clasele MFP și MPC care lucrează în mod analog float Python și tipuri de complexe:
    >>> MFP (2) / MFP (3)
    MFP (".66666666666666663")
    >>> MPC (0, -1)
    MPC (= reale "0", imag = '- 1')
    >>> MFP (-0.6) ** MFP (-0.2)
    MPC (= reale ".89603999408558288", imag = '- .65101116249684809 ")
Pentru ieșire mai frumos (care ascunde, de asemenea, erori de rotunjire mici), utilizarea de imprimare sau str ():
    >>> MFP print (2) / MFP (3)
    .666666666666667
    >>> MPC imprimare (1 + 2j) ** 0,5
    (1.27201964951407 + 0.786151377757423j)
Precizia este controlată de proprietățile mpf.prec (număr de biți) și mpf.dps (numărul de zecimale). Aceste proprietăți sunt legate, astfel încât schimbarea o actualizează automat cealaltă pentru a se potrivi. Setarea prec sau DPS schimbă precizia la care toate operațiunile sunt efectuate și numărul de cifre pentru afișarea la imprimarea numerelor. Implicit este
prec = 53 și DPS = 15, identic cu flotoare Python.
    >>> Mpf.dps = 30
    >>> MFP (2) / MFP (3)
    MFP ("0,66666666666666666666666666666663")
    >>> Print _
    0.666666666666666666666666666667
    >>> mpf.dps = 15 # restabili la valorile implicite
Puteți crea MPFS și MPCS din numere Python, sau combina MPFS și MPCS cu numere Python în operații aritmetice, dar să fie conștienți de faptul că regulat Python pluteste doar au precizie finită. Pentru a inițializa un MFP cu o valoare full-precizie, utilizați un șir:
    >>> MFP (0,1)
    MFP (".10000000000000001") # aceeași precizie ca și float
    >>> Mpf.dps = 50
    >>> MFP (0,1)
    MFP ("0,1000000000000000055511151231257827021181583404541016") # nedorită
    >>> MFP ("0.1")
    MFP ("0,1000000000000000000000000000000000000000000000000001") # ok
Următoarele funcții standard sunt disponibile și să sprijine ambele argumente reale și complexe:
  sqrt, exp, log, putere, cos, păcatul, bronz, cosh, Sinh, tanh,
  acos, asin, Atan, ACOSH, ASINH, atanh
Exemplu:
    >>> Mpf.dps = 15
    >>> cos de imprimare (1)
    .540302305868140
    >>> Mpf.dps = 50
    >>> cos de imprimare (1)
    0,54030230586813971740093660744297660373231042061792
Unele funcții rar sunt de asemenea disponibile: gamma (gamma funcția), factorial, ERF (funcția de eroare), lower_gamma / upper_gamma (funcția gamma incompletă) și zeta (funcția zeta Riemann).
În cele din urmă, funcțiile de confort hypot și atan2 sunt disponibile (definit numai numere reale).
Constantele pi, e, și cgamma (Euler constanta lui), sunt disponibile ca obiecte speciale care se comporte ca MPFS dar ale căror valori se adapteze automat la precizia.
    >>> Mpf.dps = 15
    >>> Pi print
    3.14159265358979
    >>> Mpf.dps = 50
    >>> Pi print
    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 ")
Rotunjirea regia este implementat parțial. De exemplu, aceasta calculează și verifică un interval aproximare de 15 cifre pentru pi:
    >>> Mpf.dps = 15
    >>> Mpf.round_down (); PI1 = + pi
    >>> Mpf.round_up (); PI2 = + pi
    >>> PI1
    MFP ("3.1415926535897931")
    >>> PI2
    MFP ("3.1415926535897936")
    >>> Mpf.dps = 30
    >>> PI1     Adevărat

Ce este nou în această versiune:

  • General
  • Acum este posibil pentru a crea mai multe obiecte de context și de a folosi metode de context local, în loc de stat / funcții globale (de exemplu, MP2 = mp.clone (); mp2.dps = 50; mp2.cos (3)). Nu toate funcțiile au fost transformate la metode context, și există unele bug-uri, astfel încât această caracteristică este în prezent experimental.
  • Dacă mpmath este instalat în Sage 4.0 sau mai târziu, mpmath vor folosi acum sage.Integer în loc de Python lung intern.
  • cazuri Eliminat de stil vechi diviziune număr întreg de la codebase.
  • runtests.py poate fi rulat cu acoperire, pentru a genera statistici acoperire.
  • Tipuri și aritmetica de bază
  • comparație fixe cu -inf.
  • format repr schimbat de tipul intervalului MPI pentru a face eval (repr (x)) == x.
  • tipărirea îmbunătățită de intervale, cu formatul de ieșire configurabil (a contribuit de Vinzent Steinberg pe baza codului de Don Peterson).
  • Intervale suportate de mpmathify () și NSTR () (a contribuit de Vinzent Steinberg).
  • MPC este acum hashable.
  • Adaugata mai multe opțiuni de formatare a funcției to_str intern.
  • -Python pur rădăcină pătrată repede.
  • Fix la sfârșit spațiu da valori greșite în str- & gt;. Conversie MFP
  • Calculul
  • nsum fixă ​​() cu Euler-Maclaurin summation care ar ignora anterior indicele de pornire și suma de la n = 1.
  • Implementarea metoda lui Newton pentru findroot () (a contribuit de Vinzent Steinberg).
  • Algebra liniara
  • fix LU_decomp () să recunoască matrice singulare (au contribuit cu Vinzent Steinberg).
  • Diferitele funcții normă au fost înlocuite cu funcția norma norma vector generic (x, p) și norma matricei generic funcția mnorm (x, p).
  • funcții speciale:
  • Unele cache interne au fost modificate pentru a precizie întotdeauna ușor overallocate. Acest comportament stabilește cel mai rău caz în care anterior valoarea cache a trebuit să fie recalculate la fiecare apel de funcție.
  • log fixă ​​(număr mic) revenind prostii cu mare precizie.
  • gamma fixă ​​() și funcții derivate, cum ar fi binom () revenind rezultate greșite la intrări întregi fiind divizibil cu o putere mare de 2.
  • asin fixă ​​() de a nu ridica o excepție de la mare precizie (a contribuit de Vinzent Steinberg).
  • Optimizarea codului AGM pentru logaritmul natural, ceea ce face metoda Newton utilizat anterior la precizie intermediare învechite.
  • Funcția medie AGM-aritmetică geometric () este acum un ordin de mărime mai repede la o precizie scăzută.
  • implementări rapide de ellipk () și ellipe ().
  • continuarea Analitic de ellipe () pentru | x | & gt;. = 1 implementat
  • Implementarea funcției log gamma (loggamma ()), cu reduceri de ramură corecte (de punere în aplicare lent, înlocuitor).
  • reduceri ramură fixe de hyperfac ().
  • Implementarea Z-funcția Riemann-Siegel (siegelz ()).
  • Implementarea funcției theta Riemann-Siegel (siegeltheta ()).
  • calcul Implementat de puncte Gram (grampoint ()).
  • calcul Implementat de Riemann zerouri funcției zeta (zetazero ()).
  • Implementarea funcției de numărare prim: o versiune lent, exact (primepi ()). și o versiune de aproximativ rapidă (primepi2 ()), care oferă un interval de încadrare.
  • Implementarea funcției de numărare prim Riemann R (riemannr ()).
  • numere și polinoame (clopot ()) Bell implementate.
  • Implementarea (funcția expm1).
  • Implementarea "funcția poliexponențială" (polyexp ()).
  • Implementarea prim constanta dublu (twinprime) și Mertens "constante (Mertens).
  • Implementarea funcției zeta prim (primezeta ()).

Ce este nou în versiunea 0.10:

  • Adaosurile sunt plotting de sprijin, matrici și funcții algebra liniară, noi rădăcină de informare și de cuadratură algoritmi, îmbunătățită aritmetică interval, și unele noi funcții speciale.
  • Numeroase îmbunătățiri de viteză au fost comise (câteva funcții sunt un ordin de mărime mai repede decât în ​​0,9), și diverse bug-uri au fost stabilite.
  • important, aceasta stabilește eliberare mpmath de a lucra cu Python 2.6.

Cerințe :

  • Python

Software similare

SAGE
SAGE

22 Jun 18

CLHep
CLHep

14 Apr 15

MESH
MESH

3 Jun 15

Alte software-uri de dezvoltator Fredrik Johansson

mpmath
mpmath

14 Apr 15

Comentarii la mpmath

Comentariile nu a fost găsit
Adauga comentarii
Porniţi pe imagini!