Sympy

Software kuvakaappaus:
Sympy
Ohjelmiston tiedot:
Versio: 0.7.2
Lähetyksen päivämäärä: 20 Feb 15
Kehittäjä: Ondrej Certik
Lupa: Vapaa
Suosio: 54

Rating: 4.5/5 (Total Votes: 2)

Sympy on avoimen lähdekoodin symbolinen manipulointi paketti, kirjoitettu puhdas Python.
Sympy tavoitteena on tulla täysin varustellun CAS Python, kun koodi on pidettävä mahdollisimman yksinkertainen, jotta se on helposti laajennettavissa ja ymmärrettäviä.

Ominaisuudet :

  • perus arithmetics *, /, +, -
  • perus yksinkertaistaminen (kuten * b * b + 2 * b * a * b - & gt; 3 * a * b ^ 2)
  • laajennus (kuten (a + b) ^ 2 - & gt; ^ 2 + 2 * a * b + b ^ 2)
  • toiminnot (exp, ln, sin, cos, tan, ...)
  • kompleksiluvut (kuten exp (I * x) .evalc () - & gt; cos (x) + I * sin (x))
  • eriyttäminen
  • Taylor sarja
  • perus vaihdosta (kuten x- & gt; ln (x))
  • mielivaltaisen tarkkuuden kokonaislukuja ja rationals
  • standardi (python) leijailee

Mitä uutta tässä julkaisussa:

  • SymPy tukee nyt Python 3 ja PyPy.
  • Tämä julkaisu sisältää myös merkittäviä uusia ominaisuuksia combinatorics, varmaa integraatio, satunnaismuuttujat, matriisi ilmaisuja, sarjaa, klassinen mekaniikka, kvanttimekaniikka, kommutatiivinen algebra, piirtämistä, ja differentiaaligeometrian.
  • Oli myös satoja bugikorjauksia koko koodin perusta.

Mitä uutta versiossa 0.7.1:

  • Suuret muutokset:
  • Python 2.4 ei enää tueta. SymPy ei toimi lainkaan Python 2.4. Jos tarvitset silti käyttää SymPy alle Python 2.4 jostain syystä, sinun täytyy käyttää SymPy 0.7.0 tai aikaisempi.
  • Pyglet piirtämistä Kirjasto on nyt (valinnainen) ulkoisesta riippuvuudesta. Aiemmin meillä lähetetty versio Pyglet kanssa SymPy, mutta tämä oli vanha ja buginen. Suunnitelma on lopulta tehdä piirtämistä SymPy paljon modulaarinen, joten se tukee monia backends, mutta tämä ei ole vielä valmis. Nyt vasta Pyglet suoraan tuettu. Huomaa, että Pyglet on vain valinnainen riippuvuuden ja tarvitaan vain piirtämistä. Loput SymPy voidaan edelleen käyttää ilman riippuvuuksia (paitsi Python).
  • isympy nyt toimii uudella IPython 0,11.
  • mpmath on päivitetty 0.17. Katso vastaava mpmath julkaisutiedot klo http://mpmath.googlecode.com/svn/trunk/CHANGES.
  • Lisätty Subs esine edustaa ratkaisemattoman vaihdot. Tämä lopulta antaa meidän edustavat johdannaiset arvioitiin pisteen eli diff (f (x), x) .subs (x, 0) palauttaa Subs (Johdannaissopimukset (f (_x), _x), (_x,), (0, )). Tämä tarkoittaa myös sitä, että SymPy voi nyt oikein laskea ketjusäännön kun tätä toimintoa tarvitaan, kuten esimerkiksi f (g (x)). JM (x).
  • Hypergeometrinen toiminnot / Meijer G-toiminnot:
  • Lisätty luokat hyper () ja meijerg () edustaa Hypergeometrinen ja Meijer G-toiminnot, vastaavasti. Ne tukevat numeerinen arviointi (käyttäen mpmath) ja symbolinen eriyttäminen (ei suhteen parametrit).
  • Lisätty algoritmi kirjoittamasta hypergeometrisen ja Meijer g-toiminnot kannalta tutumpi, nimeltään erikoistoimintoja. Se pääsee toiminto hyperexpand (), tai myös kautta expand_func (). Tämä algoritmi tunnistaa monta alkeisfunktiot, ja myös täydellinen ja epätäydellinen gamma toimintoja, Besselin toimintoja, ja virhe toimintoja. Se voidaan helposti laajentaa käsittelemään enemmän luokkia erikoistoimintoja.
  • Lisätiedot:
  • Lisätty FiniteSet luokka matkia python joukko käyttäytymistä samalla vuorovaikutuksessa nykyisten intervallit ja liittojen
  • FiniteSets ja intervallit vuorovaikutuksessa niin, että esimerkiksi Interval (0, 10) - FiniteSet (0, 5) tuottaa (0, 5) U (5, 10]
  • FiniteSets myös käsitellä ei-numeeriset esineitä niin seuraava on mahdollista {1, 2, "yksi", "kaksi", {a, b}}
  • Lisätty ProductSet käsitellä suorakulmaiset tuotteiden sarjaa
  • Luo käyttäen * operaattori, eli twodice = FiniteSet (1, 2, 3, 4, 5, 6) * FiniteSet (1, 2, 3, 4, 5, 6) tai neliö = väli (0, 1) * Interval (0, 1)
  • pow operaattori toimii myös odotetusti: R3 = Interval (-oo, oo) ** 3; (3, -5, 0) R3 == True
  • vähennys-, liitto, mittaus kaikki työ otetaan Monimutkaiset risteykset huomioon.
  • Lisätty as_relational tapa sarjaa, jotka tuottavat boolean tökseen Ja Tai Eq, Lt, GT, jne ...
  • Muuttunut reduce_poly_inequalities palata ammattiliitot sarjaa sijaan luettelot sarjaa
  • Iterables:
  • Lisätty tuottaville rutiineja kokonaisluku osiot ja binary osioita. Rutiinia kokonaisluku osiot kestää 3 argumentteja, numero itse, mahdollisimman elementti sallittu väliseinät syntyy ja mahdollisimman useita tekijöitä, jotka tulee olemaan osio. Binary osiot ominaista sisältävät vain kahden potensseja.
  • Lisätty tuottaa rutiininomaisesti monen set väliseinät. Koska multiset, algoritmi toteutetaan tuottaa kaikki mahdolliset osiot tuon multi-sarja.
  • Lisätty tuottaville rutiineja bell muunnelmia, derangements ja involutions. Bell permutaatio on sellainen, jossa syklit että se koostuu koostuvat kokonaislukujen alenevassa järjestyksessä. Derangement on permutaatio sellainen, että i: s elementti ei ole i: nnessä asemassa. Involuution on permutaatio, että kun kerrotaan itse antaa identiteetin permutaatio.
  • Lisätty tuottaville rutiinia rajoittamaton kaulakoruja. Rajoittamaton kaulakoru on-arvoisen merkkijono n merkkiä, jokainen mahdollinen tyyppejä. Nämä ovat ominaista parametrien n ja k rutiini.
  • Lisätty tuottaville rutiinia suuntautunut metsissä. Tämä on täytäntöönpano algoritmin S TAOCP Vol 4A.
  • xyz Spin emäkset:
  • edustavat, kirjoittaa ja InnerProduct logiikka on parannettu toimimaan minkä tahansa kahden spin emäksiä. Tämä tehtiin hyödyntämällä Wigner-D matriisi, toteutetaan WignerD luokan määrittelyssä muutoksia eri emäkset. Edustaa tilassa eli edustavat (JzKet (1,0), perusteella = Jx), voidaan käyttää antamaan vektoriesityksen tahansa saada missään x / y / z perustat numeeriset arvot j ja m spin eigenstate. Samoin uudelleenkirjoitus valtiot eri emäksiä, eli JzKet (1,0) .rewrite (Jx '), kirjoittaa todetaan lineaarikombinaationa osia tietyn perustan. Koska tämä vetoaa edustavat toiminto, tämä toimii vain numeerinen j ja m arvot. Sisätulon kahden ominaistiloille eri emäksiä voidaan arvioida, eli InnerProduct (JzKet (1,0), JxKet (1,1)). Kun kaksi eri perustetta käytetään, yhden valtion uudelleenkirjoitetaan muulla perusteella, joten tämä vaatii numeeriset arvot j ja m, mutta innerproducts valtioiden samalla perusteella voidaan vielä tehdä symbolisesti.
  • Rotation.D ja Rotation.d menetelmiä, jotka edustavat Wigner-D-toiminto ja Wigner pieni-d-toiminto, palauttaa esiintymä WignerD luokka, joka voidaan arvioida doit () menetelmä antaa vastaava matriisi elementti Wigner-D matriisi.
  • Muut muutokset:
  • Olemme nyt käyttää MathJax meidän docs. MathJax tekee LaTeX matematiikka entierly selaimessa JavaScriptin avulla. Tämä tarkoittaa sitä, että matematiikka on paljon luettavissa kuin edellinen png matematiikka, joka käyttää kuvia. MathJax on tuettu vain modernit selaimet, joten LaTeX matematiikka docs ei välttämättä toimi vanhemmissa selaimissa.
  • nroots () nyt voit määrittää tarkkuuden laskelmat
  • Lisätty tuki gmpy ja mpmath n tyypit sympify ()
  • Korjaa joitakin bugeja kanssa lambdify ()
  • Korjaa bugi as_independent ja ei-kommutatiivinen symbolia.
  • Fix bug kerätä (asia 2516)
  • Monet korjaukset liittyvät siirrettävyyttä SymPy Python 3. Kiitos GSoC opiskelija Vladimir Peric, tämä tehtävä on lähes valmis.
  • Jotkut takautuvasti lisätty TEKIJÄT tiedosto.
  • Lisätty ratkaisija erikoistapaus Riccati yhtälön ODE moduulissa.
  • Iteroidut johdannaiset ovat melko painettu ytimekkäästi.
  • Fix bug kanssa integroimalla käyttäminen useiden DiracDeltas.
  • Lisää tukea Matrix.norm (), joka toimii Matriisit (ei vain vektorit).
  • parannukset Groebner emäkset algoritmi.
  • Plot.saveimage tukee nyt StringIO outfile
  • Expr.as_ordered_terms tukee nyt ei lex orderings.
  • JM nyt canonicalizes järjestyksessä erilaistumisen symbolia. Tämä on niin se voi yksinkertaistaa ilmauksia, kuten f (x, y) .diff (x, y) - f (x, y) .diff (y, x). Jos haluat luoda Johdannaissopimukset esine lajittelematta args, luo se nimenomaisesti Johdannaissopimukset, niin että saat Johdannaissopimukset (f (x, y), x, y)! = Johdannaissopimukset (f (x, y), y, x). Huomaa, että sisäisesti, johdannaisia, jotka voidaan laskea lasketaan aina siinä järjestyksessä, että ne on annettu.
  • Lisätty toiminnot is_sequence () ja iterable () määrittämiseksi, jos jotain on tilattu iterable tai normaali iterable vastaavasti.
  • Käytössä vaihtoehto Sphinx joka lisää lähde linkin vieressä kunkin toiminnon, joka on linkki kopio lähdekoodia että toiminta.

Mitä uutta versiossa 0.7.0:

  • Tämä on merkittävä julkaisu, joka lisää paljon uusia toimintoja .
  • Suurin muutos on uusi polys, jotka ovat paljon tehokkaampia ja paljon nopeammin. Tämä vaikuttaa moniin osiin SymPy myös ratkaisijoita ja yksinkertaistamista.
  • Toinen suuri muutos on uusi quantum moduuli, joka lisättiin seurauksena kahden Google Summer of Code hankkeita.
  • Riippumatta näistä suuria muutoksia, on olemassa monia muutoksia kaikkialle SymPy.
  • Tämä tiedote on myös muutamia enimmäkseen vähäisiä taaksepäin yhteensopivuus taukoja.

Mitä uutta versiossa 0.6.3:

  • siirretty python2.6 (kaikki testit pass) ja Jython (kaikki kokeet kulkevat paitsi riippuen & quot; ast & quot; moduuli).
  • True jako on vahvistettu (kaikki testit passata & quot; -Qnew & quot; Python vaihtoehto).
  • buildbot.sympy.org luotiin; sympy nyt säännöllisesti testattu Python 2.4, 2.5, ja 2.6 molemmin i386 ja amd64.
  • py.bench: py.test perustuva benchmarking.
  • bin / testi: yksinkertainen py.test kaltainen testaus puitteet, ilman ulkoisia riippuvuuksia ja kauniisti värillinen lähtö.
  • Useimmat rajoitukset toimivat nyt.
  • Tekijöihin yli Z [x] oli parantunut huomattavasti.
  • Paloittain toiminto lisättiin. nsimplify () toteutettiin.
  • Symbolit ja var syntaksin yhtenäistettiin.
  • C-koodia tulostus.

Vaatimukset :

  • Python

Vastaavia ohjelmistoja

Scilab
Scilab

14 Apr 15

FreeMat
FreeMat

3 Jun 15

smib
smib

10 Mar 16

Kommentit Sympy

Kommentteja ei löytynyt
Lisää kommentti
Ota kuvia!