Sympy

Software screenshot:
Sympy
Podrobnosti Software:
Verze: 0.7.2
Datum uploadu: 20 Feb 15
Vývojka: Ondrej Certik
Licence: Volný
Popularita: 148

Rating: 3.7/5 (Total Votes: 3)

Sympy je open source symbolická manipulace balíček, napsaný v čistém Pythonu.
Sympy si klade za cíl, aby se stal plně vybavený CAS v Pythonu, zatímco kód je veden tak jednoduché, jak je to možné, takže to může být snadno rozšiřitelný a srozumitelné

Vlastnosti :.

  • Základní aritmetika *, /, +, -
  • základní zjednodušení (jako * b * b + 2 * b * a * b - & gt; 3 * a * b ^ 2)
  • rozšíření (jako (+ b) ^ 2 - & gt; ^ 2 + 2 * * b + b ^ 2)
  • funkce (exp, ln, sin, cos, tan, ...)
  • komplexní čísla (jako exp (I * x) .evalc () - & gt; cos (x) + I * sin (x))
  • diferenciace
  • Taylor série
  • základní náhrada (jako x-& gt; ln (x))
  • s libovolnou přesností celá čísla a racionální
  • standard (python) se vznáší

Co je nového v této verzi:.

  • SymPy nyní podporuje Python 3 a PyPy
  • Tato verze také obsahuje významné nové funkce v kombinatoriky, definitivní integrace, náhodné veličiny, maticové výrazy, soupravy, klasické mechaniky, kvantové mechaniky, komutativní algebra, vyhodnocování a diferenciální geometrie.
  • Tam byly také stovky oprav v celém celého kódu.

Co je nového ve verzi 0.7.1:

  • Hlavní změny:
  • Python 2.4 již není podporován. SymPy nebude fungovat vůbec v Pythonu 2.4. Pokud potřebujete použít SymPy v Pythonu 2.4 z nějakého důvodu, budete muset použít SymPy 0.7.0 nebo starší.
  • parcelování knihovna Pyglet je nyní (volitelně) externí závislost. Dříve jsme dodáván verzi Pyglet s SymPy, ale to byl starý a buggy. V plánu je, aby nakonec se zákresem v SymPy mnohem modulární, takže to podporuje mnoho backendů, ale to ještě nebyla provedena. Pro tuto chvíli, pořád jen Pyglet je přímo podporován. Všimněte si, že Pyglet je pouze volitelná závislost a je potřeba pouze pro vykreslování. Zbytek SymPy lze nadále používat bez jakýchkoliv závislostí (s výjimkou pro Python).
  • isympy nyní pracuje s novým IPython 0.11.
  • mpmath byl aktualizován na verzi 0.17. Viz odpovídající poznámkách k vydání mpmath na http://mpmath.googlecode.com/svn/trunk/CHANGES.
  • Přidána Subs objekt pro zastupování nevyhodnocené substituce. To nakonec nám umožňuje představují deriváty vyhodnocovány v bodě, tj rozdíl (f (x), x) .subs (x, 0) vrací subs (Derivace (f (_x), _x), (_x,), (0, )). To také znamená, že SymPy nyní správně vypočítat pravidlo řetězu, kdy je tato funkce, jako je například F (g (x)). Rozdíl (x).
  • funkce Hypergeometrické / Meijer G-Funkce:
  • Přidány třídy hyper () a meijerg () reprezentovat Hypergeometrické a Meijer G-funkce, resp. Podporují numerické výpočty (pomocí mpmath) a symbolické diferenciaci (nikoliv s ohledem na parametry).
  • Přidána algoritmus pro přepisování Hypergeometrické a Meijer g-funkce, pokud jde o více známých, pojmenované speciální funkce. To je přístupné přes funkce hyperexpand (), nebo také přes expand_func (). Tento algoritmus rozpoznává mnoho elementárních funkcí, a také kompletní a neúplné funkce gama, Bessel funkce, a chybové funkce. To může být snadno rozšířen pro zpracování více druhů speciálních funkcí.
  • Sady:
  • Přidáno FiniteSet třída napodobit python nastavit chování a zároveň interakci se stávajícími intervalech a svazů
  • FiniteSets a intervaly vzájemně tak, že, například intervalu (0, 10) - FiniteSet (0, 5) vytváří (0, 5) U (5, 10]
  • FiniteSets zpracovávat i jiné než číselné předměty, takže je možný následující {1, 2, "jeden", "dvě", {a, b}}
  • Přidáno ProductSet zvládnout kartézský součin množin
  • vytvořit pomocí operátoru *, tj twodice = FiniteSet (1, 2, 3, 4, 5, 6) * FiniteSet (1, 2, 3, 4, 5, 6), nebo čtvercový = interval (0, 1) * Interval (0, 1)
  • operátor pow také funguje podle očekávání: R3 = Interval (-OO, oo) ** 3; (3, -5, 0) v R3 == true
  • odečítání, unie, měření všechny práce při složitých křižovatek v úvahu.
  • Přidal as_relational metodu k souborům, produkovat logické příkazy pomocí AND, OR, rovnice, LT, GT, etc ...
  • změna reduce_poly_inequalities vrátit odbory množin spíše než seznamy sad
  • Iterables:
  • Added generování rutiny pro celočíselné oddíly a binárních oddíly. Rutina pro celočíselné příčky se 3 argumenty, čísla sám, maximální možný prvek povoleno v oddíly vytvořené a maximální možný počet prvků, které budou v oddílu. Binární příčky se vyznačují tím, že obsahuje pouze síly dva.
  • Přidána generování rutinu pro multi-set oddíly. Daný multiset, algoritmus implementovaný vygeneruje všechny možné oddíly tohoto multi-set.
  • Added generování rutiny pro zvonek permutací, derangements a involucema. Zvon permutace je taková, ve které se cykly, které ji tvoří se skládají z celých čísel v klesajícím pořadí. Porucha je taková, že permutační i-tý prvek není v poloze-té. Involuce je permutace, která po vynásobení samo o sobě dává identitu permutace.
  • Added generování rutinu pro neomezený náhrdelníky. Neomezené náhrdelník je ary řetězec n postav, z nichž každá z možných typů. Ty byly charakterizovány parametry n a k v rutině.
  • Added generování rutinu orientovaných lesy. To je implementace algoritmu S v TAOCP sv 4A.
  • XYZ Spin základy:
  • představují, přepsat a InnerProduct logika byla vylepšena práce mezi jakýmikoli dvěma spin základen. To bylo provedeno s použitím Wigner-D matice, realizované ve třídě WignerD, při definování změny mezi jednotlivými základnami. Zastupování státu, tedy představují (JzKet (1,0), základ = Jx), lze použít k získání vektoru zastoupení některé dostat se v některém z x / y / z podkladů pro numerické hodnoty j a m ve spin eigenstate. Stejně tak, přepisování státy do různých základů, tj JzKet (1,0) .rewrite ("Jx"), bude psát stavy jako lineární kombinace prvků daného základu. Vzhledem k tomu, to závisí na představují funkci, to funguje pouze pro numerické j i m hodnot. Skalární součin dvou eigenstates v různých bází mohou být hodnoceny, tj InnerProduct (JzKet (1,0), (1,1) JxKet). Pokud jsou použity dva různé základy, jeden stát je přepsána do jiném základě, takže to vyžaduje numerické hodnoty j a m, ale innerproducts států při stejném základě může ještě udělat symbolicky.
  • Na Rotation.D a Rotation.d metody, které představují funkce Wigner-D a malé d funkci Wignerova, vrátí instanci třídy WignerD, které mohou být hodnoceny pomocí metody doit (), na odpovídající matice prvek Wignerova-D matrice.
  • Další změny:
  • Nyní používají MathJax v našich docs. MathJax činí LaTeX matematiky entierly v prohlížeči pomocí JavaScriptu. To znamená, že matematický je mnohem čitelnější než předchozí png matematiku, který používá obrázky. MathJax je podporován pouze v moderních prohlížečích, a tak LaTeX matematika v docs nemusí fungovat na starších prohlížečích.
  • nroots () nyní umožňuje nastavit přesnost výpočtů
  • Byla přidána podpora pro gmpy a mpmath to typy na sympify ()
  • Opravuje některé chyby se lambdify ()
  • Opravit chybu s as_independent a nekomutativní symbolů.
  • Oprava chyby při sbírání (vydání 2516)
  • Mnoho oprav týkajících se portování SymPy Python 3. Díky našemu GSoC studenta Vladimir Peric, tento úkol je téměř dokončen.
  • Někteří lidé zpětně přidány do souboru AUTORŮ.
  • Přidána řešič pro zvláštní případ Riccatiho rovnice v ODE modulu.
  • Opakované deriváty jsou pěkně vytištěny v stručné způsobem.
  • Oprava chyby s integrací funkcí s více DiracDeltas.
  • Přidává podporu pro Matrix.norm (), který pracuje pro matice (ne jen vektorů).
  • Zlepšení Groebnerových základy algoritmu.
  • Plot.saveimage nyní podporuje StringIO outfile
  • Expr.as_ordered_terms nyní podporuje non lex uspořádání.
  • diff nyní canonicalizes pořadí diferenciačních symbolů. To je tak, že mohou zjednodušit výrazy, jako je f (x, y) .diff (x, y) - f (x, y) .diff (y, x). Chcete-li vytvářet odvozená objekt, aniž by třídění args, měli byste vytvořit explicitně s odvozenými, takže budete mít derivát (f (x, y), x, y)! = Derivát (f (x, y), y, x). Všimněte si, že vnitřně, deriváty, které mohou být vypočteny vždy počítány v pořadí, v jakém jsou uvedeny v.
  • Přidány funkce is_sequence () a iterable (), pro určení, zda je něco objednat iterable nebo normální iterable, resp.
  • Povoleno možnost v sfingy, který přidá zdroj odkaz vedle jednotlivých funkcí, které odkazuje na kopii zdrojového kódu pro tuto funkci.

Co je nového ve verzi 0.7.0:

  • To je hlavní zpráva, která přidává mnoho nových funkcí .
  • Největší změnou je nová POLYS, které jsou mnohem silnější a mnohem rychleji. To má vliv na mnoho částí SymPy, včetně řešitelů a zjednodušení.
  • Další velkou změnou je nový kvantový modul, který byl přidán jako výsledek dvou Google Summer of Code projekty.
  • Kromě těchto velkých změn, existuje mnoho změn v celém všechny SymPy.
  • Tato verze má také několik převážně menších přestávek zpětnou kompatibilitu.

Co je nového ve verzi 0.6.3:

  • portován na Python2.6 (všechny testy projít) a Jython (všechny testy projít, s výjimkou těch, které v závislosti na & quot; ast & quot; modul).
  • Pravda divize byla stanovena (všechny testy projít s & quot; -Qnew & quot; možnost Python)
  • .
  • buildbot.sympy.org byla vytvořena; sympy je nyní pravidelně testován na Python 2.4, 2.5 a 2.6 na obou i386 a amd64.
  • py.bench:. Py.test založené na benchmarking
  • bin / test: jednoduchý py.test podobné testování rámec, bez externích závislostí a pěkně barevného výstupu
  • .
  • Most limity nyní pracovat.
  • Rozklad nad Z [x] se výrazně zlepšila.
  • funkce po částech se přidá. nsimplify () byl zaveden.
  • Symboly a syntax var byly sjednoceny.
  • C kód tisk.

Požadavky na :

  • Python

Podobný software

Eigen
Eigen

19 Feb 15

TRIP
TRIP

20 Feb 15

Chombo
Chombo

15 Apr 15

Komentáře k Sympy

Komentáře nebyl nalezen
Přidat komentář
Zapnout obrázky!