Sympy

Yazılım ekran görüntüsü:
Sympy
Yazılım detaylar:
Versiyon: 0.7.2
Qayıt: 20 Feb 15
Geliştirici: Ondrej Certik
Lisans: Ücretsiz
Popülerlik: 148

Rating: 3.7/5 (Total Votes: 3)

Sympy saf Python ile yazılmış bir açık kaynak sembolik manipülasyon paketidir.
Sympy amacı kolayca genişletilebilir ve anlaşılır olabilir bu yüzden kod mümkün olduğunca basit tutulurken, Python tam özellikli CAS olmaktır

Özellikler :.

  • temel arithmetics *, /, +, -
  • temel basitleştirme (a * b * b + 2 * b * a * b gibi - & gt; 3 * a * b ^ 2)
  • genişleme (gibi (a + b) ^ 2 - & gt; ^ 2 + 2 * a * b + b ^ 2)
  • fonksiyonlar (exp, ln, sin, cos, tan, ...)
  • karmaşık sayılar (exp gibi (I x) .evalc () * - & gt; Cos (x) + ben günah * (x))
  • farklılaşma
  • taylor serisi
  • temel ikamesi (x- & gt gibi, ln (x))
  • keyfi hassas tamsayılar ve Kesirli
  • standart (python) yüzen

Bu sürümdeki yeni nedir:.

  • SymPy şimdi Python 3 ve PYPY destekler
  • Bu sürüm ayrıca kombinatorik büyük yeni özellikler, kesin entegrasyonu, rastgele değişkenler, matris ifadeleri, setleri, klasik mekaniği, kuantum mekaniği, değişmeli cebir, komplo ve diferansiyel geometri içerir.
  • tüm kod tabanı boyunca onarımları yüzlerce de vardı.

sürüm 0.7.1 yeni nedir:

  • Büyük değişiklikler:
  • Python 2.4 artık desteklenmiyor. SymPy Python 2.4 hiç çalışmaz. Eğer hala nedense Python 2.4 altında SymPy kullanmanız gerekiyorsa, önceki SymPy 0.7.0 ya da kullanmanız gerekecektir.
  • pyglet komplo kütüphane artık (isteğe bağlı) dışa bağımlılık olduğunu. Daha önce, SymPy ile pyglet bir versiyonunu birlikte, ancak bu eski ve hatalı olmuştur. Plan birçok backend'e destekler, böylece sonunda, SymPy daha modüler komplo yapmak, ancak bu henüz yapılmamıştır. Şimdilik, hala sadece pyglet doğrudan desteklenir. Pyglet sadece opsiyonel bağımlılık ve sadece çizmek için gerekli olduğunu not edin. SymPy geri kalanı hala (Python hariç) herhangi bir bağımlılık olmadan kullanılabilir.
  • isympy şimdi yeni ipython 0.11 ile çalışır.
  • mpmath 0.17 için güncellendi. Http://mpmath.googlecode.com/svn/trunk/CHANGES de gelen mpmath sürüm notlarına bakın.
  • unevaluated değiştirmelerin temsil için Subs nesnesi eklendi. Bu son olarak, yani fark (f (x), x) .subs (x, 0) Subs (Türev (f (_x) döndürür, bize noktasında değerlendirilir türevleri temsil sağlar, _x), (_x,), (0, )). Bu da, bu işlevi gerektiğinde SymPy şimdi doğru gibi f (g (x)) gibi, zincir kuralı hesaplayabiliriz anlamına gelir. Diff (x).
  • Hipergeometrik fonksiyonlar / Meijer G-Fonksiyonlar:
  • Eklenen sınıflar hiper () ve meijerg () sırasıyla, Hipergeometrik ve Meijer G-fonksiyonları temsil etmek. Onlar (değil parametrelere göre) sayısal değerlendirme (kullanarak mpmath) ve sembolik farklılaşma destek.
  • daha tanıdık, adında özel fonksiyonlar açısından hipergeometrik ve meijer g-fonksiyonları yeniden bir algoritma eklendi. Bu fonksiyon hyperexpand erişilebilir (), ya da expand_func yoluyla (). Bu algoritma, birçok ilköğretim fonksiyonlar, hem de tam ve eksik gama fonksiyonları, bessel fonksiyonları ve hata fonksiyonları tanır. Kolayca özel fonksiyonların daha fazla sınıfları işlemek için uzatılabilir.
  • Set:

  • Ayrıca, mevcut Aralıkları ve Birlikleri ile etkileşim sırasında
  • Eklendi FiniteSet sınıf python seti davranışını taklit etmek
  • FiniteSets ve Aralıkları örneğin Aralığı (0, 10) için, böylece etkileşim - FiniteSet (0, 5) U (5, 10]
  • (5, 0) üretir
    Aşağıdaki olası yani
  • FiniteSets da sayısal olmayan nesneleri ele {1, 2, 'tek', 'iki', {a, b}}
  • Eklendi ürününüzün setleri Kartezyen ürünleri işlemek için
  • * operatörü ile oluşturma, yani twodice = FiniteSet (1, 2, 3, 4, 5, 6) * FiniteSet (1, 2, 3, 4, 5, 6) ya da kare = Aralığı (0, 1) * Aralık (0, 1)

  • Beklendiği gibi
  • pow operatörü de çalışır: R3 = Aralığı (-Oo, oo) ** 3; (3, -5, 0) R3 == true olarak
  • Çıkarma, sendika, ölçüm dikkate karmaşık kavşakları alarak tüm iş.
  • Denklem, Lt, Gt, setleri as_relational yöntemi eklendi kullanılarak Ve mantıksal ifadeleri üreten, ya da vb ...
  • değiştirildi reduce_poly_inequalities yerine setleri listeleri daha setleri sendikaları dönmek için
  • Iterables:
  • tamsayı bölme ve ikili bölümleri için rutin üreten Eklendi. tamsayı bölümleri için rutin 3 argümanlar, sayı kendisi, oluşturulan bölümler ve bölüm olacak unsurların mümkün olan maksimum sayıda izin verilen maksimum olası eleman alır. İkili bölümleri iki yalnızca yetkileri içeren karakterize edilir.
  • Çok kümesi bölümleri için rutin üreten eklendi. Bir MultiSet, bu çok kümesinin tüm olası bölümleri üretecektir uygulanan algoritma göz önüne alındığında.
  • çan permütasyon, bozuklukların, ve involutions için rutinleri üreten Eklendi. Bir çan permütasyon onu oluşturan döngüleri azalan sırayla tamsayılar oluşur ki biridir. Bir düzensizliği i elemanı i konumunda olmadığı bir permütasyon şekildedir. Bir involisyon kendisi ile çarpılarak zaman kimlik permütasyon verir bir permütasyon olduğunu.
  • sınırsız kolye için rutin üreten Eklendi. Sınırsız kolye n karakter, olası bir türlerinin her birinin bir a-li dizedir. Bunlar rutin parametreler n ve k ile karakterize edilmiştir.
  • odaklı ormanlar için rutin üreten Eklendi. Bu TAOCP Vol 4A algoritma S bir uygulamasıdır.
  • xyz Spin tabanları:
  • yeniden temsil ve InnerProduct mantığı herhangi iki spin üsleri arasında çalışmak üzere geliştirilmiştir. Bu, çeşitli bazlar arasında değişiklik tanımlanmasında, WignerD sınıfta uygulanan Wigner-D matris kullanılarak yapıldı. Bir durumu temsil eden, örneğin, biri (JzKet (1,0), esas = JX), her bir dönüş j ve m sayısal değerleri için x / y / z bazdan herhangi almak vektör temsil vermek için kullanılabilir özdurumu. Benzer şekilde, farklı üsleri içine yeniden devletler, yani JzKet (1,0) .rewrite ('Jx'), verilen esas unsurlarının bir lineer kombinasyonu olarak devletler yazacak. Bu temsil işlevi dayanır, çünkü bu sadece sayısal j ve m değerleri için çalışır. Farklı üsleri iki özdurumların iç çarpım, yani InnerProduct (JzKet (1,0), JxKet (1,1)) değerlendirilebilir. İki farklı bazlar kullanıldığında, tek devlet, diğer temel içine yazılabilir, böylece bu j ve m sayısal değerleri gerektirir, ama aynı bazda devletlerin innerproducts hala sembolik yapılabilir.
  • Wigner-Ge fonksiyonu ve Wigner küçük-d fonksiyonunu temsil Rotation.D ve Rotation.d yöntemleri, ilgili matris vermek için doit () yöntemi ile değerlendirilebilir WignerD sınıfının bir örneğini döndürür Wigner-D matrisinin elemanı.
  • Diğer değişiklikler:
  • Şimdi bizim dokümanlar MathJax kullanın. MathJax JavaScript kullanarak tarayıcı entierly LaTeX matematik vermektedir. Bu matematik çok daha okunabilir görüntüleri kullanır önceki png matematik, daha demektir. MathJax sadece modern tarayıcılarda desteklenir, böylece dokümanlar LaTeX matematik eski tarayıcılarda çalışmayabilir.
  • nroots () şimdi hesaplamaların hassas ayarlamanızı sağlar
  • gmpy ve mpmath en türleri için destek eklendi sympify için ()
  • lambdify bazı hatalar Fix ()
  • as_independent ve olmayan değişmeli sembollerle bir hata düzeltildi.
  • toplamak (sayısında 2516)
  • bir hata düzeltildi
  • Python bizim GSoC öğrenci Vladimir Peric 3. sayesinde SymPy taşıma ile ilgili birçok düzeltmeler, bu görevi neredeyse tamamlandı.
  • Bazı insanlar geriye dönük YAZARLAR dosyaya eklenmiştir.
  • ODE modülünde Riccati denkleminin bir özel durum için bir çözücü eklendi.
  • Ardışık türevleri oldukça özlü bir şekilde yazdırılır.
  • Birden DiracDeltas işlevleri ile entegre olan bir hata düzeltildi.
  • Matris (sadece vektörleri) için çalışır Matrix.norm () desteği ekleyin.
  • Groebner bazlar algoritmaya İyileştirmeler.
  • Plot.saveimage şimdi StringIO ÇıkışDosyası
  • destekler
  • Expr.as_ordered_terms şimdi olmayan lex orderings destekler.
  • fark artık farklılaşma simgeler düzeni kanonlaştırır. Bu f (x, y) .diff (x, y) gibi ifadeler basitleştirebilir so - f (x, y) .diff (X, Y). Eğer args sıralama olmadan Türev nesne oluşturmak istiyorsanız Türev (f (x, y), x, y)! = Türev (f (x, y) olsun böylece, sen, Türev ile açıkça oluşturmanız gerekir, Y, x). Bu içten, hesaplanabilir türevleri her zaman verilen sırayla hesaplanır Not.

  • Bir şey sıralı iterable veya iterable normal sırasıyla. olup olmadığının belirlenmesi için
  • Eklenen işlevler is_sequence () ve iterable ()
  • işlev için kaynak kodunun bir kopyasını bağlantılar her işlevin, yanındaki bir kaynak bağlantı ekler Sfenks bir seçenek Etkin.

nedir sürüm 0.7.0 Yeni:

Bu çok yeni işlevler ekleyen bir ana sürüm

  • olan .
  • en büyük değişiklik çok daha güçlü ve çok daha hızlı yeni poliler vardır. Bu çözücü ve basitleştirilmesi de dahil olmak üzere SymPy birçok yerinde etkiler.
  • Bir başka büyük değişiklik iki Google Summer of Code projeler sonucunda eklenen yeni kuantum modül vardır.
  • Bunların yanı sıra büyük değişikliklerden, SymPy tüm boyunca birçok değişiklikler vardır.
  • Bu sürüm ayrıca bir kaç çoğunlukla küçük geriye uyumluluk sonları vardır.

sürüm 0.6.3 yeni nedir:

  • (tüm testler geçmek) python2.6 Ported ve Jython (tüm testler & quot bağlı olanlar hariç geçmesi; ast & quot; modül).

  • Gerçek bölünme (Python seçeneği;; -Qnew & quot tüm testler & quot ile pass) tespit edildi.
  • buildbot.sympy.org oluşturuldu; sympy şimdi düzenli olarak Python 2.4, 2.5 üzerinde test ve i386 ve amd64 hem 2.6 olduğunu.
  • py.bench:. Py.test-tabanlı kıyaslama
  • bin / test: Basit bir py.test gibi test çerçevesi, dış bağımlılıklar olmadan ve güzel renkli çıkışı ile
  • .
  • En sınırları artık işe.
  • Z üzerinde çarpanlara [x] büyük ölçüde düzeldi.
  • Parçalı fonksiyonu eklendi. nsimplify () uygulanmıştır.
  • Semboller ve var sözdizimi birleşik edildi.
  • C kodu baskı.

Gereksinimler :

  • Python

Benzer yazılım

FEniCS
FEniCS

15 Apr 15

smib
smib

10 Mar 16

TRIP
TRIP

20 Feb 15

DragMath
DragMath

2 Jun 15

Yorumlar Sympy

Yorum Bulunamadı
Yorum eklemek
Görüntülerde açın!