Sympy

ภาพหน้าจอของซอฟแวร์:
Sympy
รายละเอียดซอฟแวร์:
รุ่น: 0.7.2
วันที่อัพโหลด: 20 Feb 15
ผู้พัฒนา: Ondrej Certik
การอนุญาต: ฟรี
ความนิยม: 54

Rating: 4.5/5 (Total Votes: 2)

SymPy เป็นแหล่งเปิดแพคเกจการจัดการสัญลักษณ์เขียนในหลามบริสุทธิ์
จุดมุ่งหมาย SymPy คือการเป็นเต็มรูปแบบที่โดดเด่น CAS ในหลามในขณะที่รหัสจะถูกเก็บไว้ที่เรียบง่ายที่สุดเท่าที่เป็นไปได้เพื่อที่จะสามารถได้อย่างง่ายดายขยายและเข้าใจ

คุณสมบัติ .

  • เลขคณิตพื้นฐาน *, /, +, -
  • เข้าใจง่ายล่าง (เช่น * b * b + 2 * b * b * - & gt; 3 * b * ^ 2)
  • การขยายตัว (เช่น (A + B) ^ 2 - & gt; ^ 2 + 2 * * * * * * * * b + B ^ 2)
  • ฟังก์ชั่น (EXP, ln บาป, cos, สีน้ำตาล, ... )
  • ตัวเลขที่ซับซ้อน (เช่น exp (I * x) .evalc () - & gt; cos (x) + I * sin (x))
  • ความแตกต่าง
  • ชุดเทย์เลอร์
  • ทดแทนล่าง (เช่น x- & gt; ln (x))
  • จำนวนเต็มแม่นยำโดยพลการและ rationals
  • มาตรฐาน (งูใหญ่) ลอย

มีอะไรใหม่ ในข่าวประชาสัมพันธ์ฉบับนี้.

  • SymPy ในขณะนี้สนับสนุนหลาม 3 และ PyPy
  • ข่าวประชาสัมพันธ์ฉบับนี้ยังรวมถึงคุณสมบัติใหม่ที่สำคัญในการจัดบูรณาการที่ชัดเจน, ตัวแปรสุ่มแสดงออกเมทริกซ์, ชุดกลศาสตร์คลาสสิกกลศาสตร์ควอนตัม, พีชคณิตสับเปลี่ยนวางแผนและเรขาคณิตต่างกัน.
  • นอกจากนั้นยังมีหลายร้อย bugfixes ตลอดฐานรหัสทั้งหมด.

มีอะไรใหม่ ในรุ่น 0.7.1:

  • การเปลี่ยนแปลงที่สำคัญ:
  • Python 2.4 ได้รับการสนับสนุนอีกต่อไป SymPy จะไม่ทำงานที่ทั้งหมดในหลาม 2.4 ถ้าคุณยังคงจำเป็นต้องใช้ภายใต้ SymPy หลาม 2.4 ด้วยเหตุผลบางอย่างที่คุณจะต้องใช้ SymPy 0.7.0 หรือก่อนหน้านี้.
  • ห้องสมุดการวางแผน pyglet อยู่ในขณะนี้ (ถ้ามี) การพึ่งพาภายนอก ก่อนหน้านี้เราจัดส่งรุ่น pyglet กับ SymPy แต่นี่เป็นเก่าและรถ แผนไปในที่สุดทำให้การวางแผนใน SymPy แบบแยกส่วนมากขึ้นเพื่อที่จะรองรับการแบ็กเอนด์จำนวนมาก แต่ตอนนี้ยังไม่ได้ทำเลย สำหรับตอนนี้ยังคงเป็นเพียง pyglet ได้รับการสนับสนุนโดยตรง โปรดทราบว่า pyglet เป็นเพียงการพึ่งพาตัวเลือกและเป็นสิ่งจำเป็นสำหรับการวางแผนเท่านั้น ส่วนที่เหลือของ SymPy ยังสามารถนำมาใช้โดยไม่มีการอ้างอิงใด ๆ (ยกเว้นงูใหญ่).
  • isympy ตอนนี้ทำงานร่วมกับ IPython ใหม่ 0.11.
  • mpmath ได้รับการปรับปรุงเพื่อ 0.17 ดูบันทึกประจำรุ่น mpmath ที่สอดคล้องกันที่ http://mpmath.googlecode.com/svn/trunk/CHANGES.
  • เพิ่มวัตถุใต้บังคับบัญชาแทนแทน unevaluated นี้ในที่สุดจะช่วยให้เราเป็นตัวแทนซื้อขายสัญญาซื้อขายล่วงหน้าประเมินที่จุดคือ diff (f (x), x) .subs (x, 0) ผลตอบแทนที่ผู้ใต้บังคับบัญชา (อนุพันธ์ (f (_x) _x) (_x), (0, )) นี่ก็หมายความว่า SymPy สามารถนี้ได้อย่างถูกต้องคำนวณกฎลูกโซ่เมื่อฟังก์ชั่นนี้เป็นสิ่งจำเป็นเช่นกับ f (g (x)). diff (x).
  • ฟังก์ชั่น hypergeometric / เมย์เยอร์ G-ฟังก์ชั่น:
  • การเรียนที่เพิ่มเข้ามามากเกินไป () และ meijerg () เพื่อเป็นตัวแทนของ hypergeometric และเมย์เยอร์ G-ฟังก์ชั่นตามลำดับ พวกเขาสนับสนุนการประเมินผลเชิงตัวเลข (ใช้ mpmath) และความแตกต่างสัญลักษณ์ (ไม่เกี่ยวกับการพารามิเตอร์).
  • เพิ่มอัลกอริทึมสำหรับการเขียนใหม่ hypergeometric และเมย์เยอร์กรัมฟังก์ชั่นในแง่ของความคุ้นเคยชื่อฟังก์ชั่นพิเศษ มันสามารถเข้าถึงได้ผ่านทาง hyperexpand ฟังก์ชั่น () หรือผ่านทาง expand_func () อัลกอริทึมนี้ตระหนักถึงฟังก์ชั่นระดับประถมศึกษาจำนวนมากและยังมีฟังก์ชั่นแกมมาที่สมบูรณ์และไม่สมบูรณ์หน้าที่ Bessel และการทำงานข้อผิดพลาด มันสามารถจะขยายไปถึงการจัดการชั้นเรียนมากขึ้นของฟังก์ชั่นพิเศษ.
  • ชุด:
  • เพิ่ม FiniteSet ชั้นจะเลียนแบบพฤติกรรมชุดหลามในขณะที่ยังมีปฏิสัมพันธ์กับช่วงเวลาที่มีอยู่และสหภาพ
  • FiniteSets และช่วงโต้ตอบเพื่อให้ตัวอย่างเช่นช่วง (0, 10) - FiniteSet (0, 5) การผลิต (0, 5) U (5, 10]
  • FiniteSets ยังจัดการวัตถุที่ไม่ใช่ตัวเลขดังนั้นต่อไปนี้เป็นไปได้ที่ {1, 2, 'หนึ่ง', 'สอง', {ข}}
  • เพิ่ม ProductSet ในการจัดการผลิตภัณฑ์คาร์ทีเซียนของชุด
  • สร้างโดยใช้ผู้ประกอบการ * คือ twodice FiniteSet = (1, 2, 3, 4, 5, 6) * FiniteSet (1, 2, 3, 4, 5, 6) หรือตาราง = ช่วง (0, 1) * ช่วง (0, 1)
  • ประกอบธารยังใช้งานได้ตามที่คาด: R3 = ช่วง (-oo, OO) ** 3; (3, -5, 0) ใน R3 == True
  • ลบ, ยูเนี่ยน, การวัดการทำงานทั้งหมดของการแยกที่ซับซ้อนเข้าบัญชี.
  • เพิ่มวิธี as_relational ชุดผลิตโดยใช้งบบูลีนและหรือ EQ, LT, Gt ฯลฯ ...
  • reduce_poly_inequalities เปลี่ยนเพื่อกลับสหภาพแรงงานของชุดมากกว่ารายการของชุด
  • Iterables:
  • เพิ่มการสร้างกิจวัตรประจำวันสำหรับพาร์ทิชันจำนวนเต็มและพาร์ทิชันไบนารี ประจำสำหรับพาร์ทิชันจำนวนเต็มใช้เวลา 3 ข้อโต้แย้งจำนวนตัวเององค์ประกอบที่เป็นไปได้สูงสุดที่อนุญาตในพาร์ทิชันที่สร้างขึ้นและจำนวนเป็นไปได้สูงสุดขององค์ประกอบที่จะอยู่ในพาร์ทิชัน พาร์ทิชันไบนารีมีลักษณะที่มีอำนาจเพียงสอง.
  • เพิ่มการสร้างกิจวัตรประจำวันสำหรับพาร์ทิชันหลายชุด ป.ร. ให้ไว้ MultiSet ขั้นตอนวิธีการดำเนินการจะสร้างพาร์ทิชันที่เป็นไปได้ทั้งหมดที่หลายชุด.
  • เพิ่มการสร้างกิจวัตรประจำวันสำหรับพีชคณิตระฆัง derangements และ involutions การเปลี่ยนแปลงระฆังซึ่งเป็นหนึ่งในรอบที่ประกอบมันประกอบด้วยจำนวนเต็มในการสั่งซื้อลดลง บ้าคือการเปลี่ยนแปลงดังกล่าวว่าองค์ประกอบบอดไม่ได้อยู่ที่ตำแหน่งบอด ร่วมด้วยคือการเปลี่ยนแปลงที่ว่าเมื่อคูณด้วยตัวเองจะช่วยให้การเปลี่ยนแปลงตัวตน.
  • เพิ่มการสร้างกิจวัตรประจำวันสำหรับสร้อยคอไม่ จำกัด สร้อยคอไม่ จำกัด เป็นสตริง-Ary ของตัวอักษร n แต่ละประเภทที่เป็นไปได้ เหล่านี้ได้รับความโดดเด่นด้วยพารามิเตอร์ n และ k ในชีวิตประจำ.
  • เพิ่มการสร้างกิจวัตรประจำวันสำหรับป่าที่มุ่งเน้น นี่คือการดำเนินการตามขั้นตอนวิธีใน S TAOCP ฉบับ 4A.
  • XYZ ฐานปั่น:
  • แทนเขียนและตรรกะ InnerProduct ได้รับการปรับปรุงในการทำงานใด ๆ ระหว่างสองฐานหมุน นี้ทำโดยใช้เมทริกซ์ Wigner-D ดำเนินการในชั้น WignerD ในการกำหนดเปลี่ยนแปลงระหว่างฐานต่างๆ ที่เป็นตัวแทนของรัฐคือเป็นตัวแทน (JzKet (1,0), พื้นฐาน = Jx) สามารถนำมาใช้เพื่อให้การแสดงเวกเตอร์ใด ๆ ได้รับในใด ๆ ของ x / y / ฐาน Z สำหรับค่าตัวเลขของเจมในการปั่น eigenstate ในทำนองเดียวกันการเขียนใหม่รัฐเป็นฐานที่แตกต่างกันเช่น JzKet (1,0) .rewrite ('Jx'), รัฐจะเขียนเป็นเชิงเส้นการรวมกันขององค์ประกอบพื้นฐานที่กำหนด เพราะอาศัยแทนฟังก์ชั่นนี้ใช้ได้เฉพาะสำหรับ J ตัวเลขและค่าเมตร สินค้าภายในของสอง eigenstates ในฐานที่แตกต่างกันสามารถประเมินได้เช่น InnerProduct (JzKet (1,0), JxK​​et (1,1)) เมื่อสองฐานที่แตกต่างกันมีการใช้รัฐหนึ่งจะเขียนเป็นพื้นฐานอื่น ๆ ดังนั้นนี้ต้องใช้ค่าตัวเลขของเจม แต่ innerproducts ของรัฐที่อยู่ในพื้นฐานเดียวกันยังคงสามารถทำได้สัญลักษณ์.
  • วิธี Rotation.D และ Rotation.d คิดเป็นฟังก์ชั่นวิกเนอร์-D และวิกเนอร์ฟังก์ชั่นขนาดเล็ก-D กลับตัวอย่างของชั้น WignerD ซึ่งสามารถประเมินด้วยการ doit () วิธีการที่จะให้แมทริกซ์ที่สอดคล้องกัน องค์ประกอบของเมทริกซ์ Wigner-D.
  • การเปลี่ยนแปลงอื่น ๆ :
  • ขณะนี้เราใช้ MathJax ในเอกสารของเรา MathJax คณิตศาสตร์ทำให้น้ำยาง entierly ในเบราว์เซอร์ใช้ Javascript ซึ่งหมายความว่าคณิตศาสตร์สามารถอ่านได้มากขึ้นกว่าคณิตศาสตร์ PNG ก่อนหน้านี้ซึ่งใช้ภาพ MathJax ได้รับการสนับสนุนในเบราว์เซอร์ที่ทันสมัย​​เพื่อให้น้ำยางคณิตศาสตร์ในเอกสารอาจไม่ทำงานในเบราว์เซอร์รุ่นเก่า.
  • nroots () ตอนนี้ช่วยให้คุณสามารถตั้งค่าความแม่นยำของการคำนวณ
  • เพิ่มการสนับสนุนสำหรับ gmpy และประเภท mpmath เพื่อ sympify ()
  • แก้ไขข้อบกพร่องบางอย่างกับ lambdify ()
  • แก้ไขข้อผิดพลาดที่มี as_independent และสัญลักษณ์ที่ไม่ใช่การสับเปลี่ยน.
  • แก้ไขข้อผิดพลาดที่มีการเก็บรวบรวม (ฉบับ 2516)
  • แก้ไขหลายคนที่เกี่ยวข้องกับการ porting SymPy หลาม 3. ขอบคุณที่นักเรียนของเรา GSoC วลาดิมี Peric งานนี้จะเสร็จสมบูรณ์เกือบ.
  • บางคนมีการเพิ่มผลย้อนหลังไปยังแฟ้มผู้เขียน.
  • เพิ่มแก้สำหรับกรณีพิเศษของสมการ Riccati ในโมดูล ODE.
  • อนุพันธ์ซ้ำจะถูกพิมพ์สวยในวิธีที่รัดกุม.
  • แก้ไขข้อผิดพลาดที่มีการบูรณาการการทำงานกับหลาย DiracDeltas.
  • เพิ่มการสนับสนุนสำหรับ Matrix.norm () ที่ทำงานสำหรับเมทริกซ์ (ไม่ใช่แค่เวกเตอร์).
  • การปรับปรุงขั้นตอนวิธี Groebner ฐาน.
  • Plot.saveimage ในขณะนี้สนับสนุน StringIO OUTFILE
  • Expr.as_ordered_terms ในขณะนี้สนับสนุน orderings ไฟแนนเชี่ไม่.
  • diff ตอนนี้ canonicalizes ลำดับของสัญลักษณ์ที่แตกต่าง นี่คือเพื่อที่จะสามารถลดความซับซ้อนของการแสดงออกเช่น f (x, y) .​​diff (x, y) - f (x, y) .​​diff (y, x) ถ้าคุณต้องการที่จะสร้างวัตถุอนุพันธ์โดยไม่ต้องเรียงลำดับ args คุณควรสร้างมันขึ้นมาอย่างชัดเจนด้วยอนุพันธ์เพื่อที่คุณจะได้รับอนุพันธ์ (f (x, y), x, y) = อนุพันธ์ (f (x, y), y, x) โปรดสังเกตว่าภายในตราสารอนุพันธ์ที่สามารถคำนวณจะคำนวณเสมอเพื่อที่พวกเขาจะได้รับใน.
  • ฟังก์ชั่นที่เพิ่มเข้ามา is_sequence () และ iterable () ในการพิจารณาว่าสิ่งที่ได้รับคำสั่ง iterable หรือปกติ iterable ตามลำดับ.
  • เปิดใช้งานตัวเลือกในสฟิงซ์ที่เพิ่มการเชื่อมโยงแหล่งที่อยู่ถัดจากแต่ละฟังก์ชั่นที่เชื่อมโยงกับสำเนาของรหัสที่มาสำหรับการทำงานที่.

มีอะไรใหม่ ในรุ่น 0.7.0:

  • นี้เป็นรุ่นที่สำคัญที่จะเพิ่มฟังก์ชันการทำงานใหม่มาก .
  • การเปลี่ยนแปลงที่ใหญ่ที่สุดคือ Polys ใหม่ที่มีประสิทธิภาพมากขึ้นและเร็วขึ้นมาก นี้ส่งผลกระทบต่อหลายส่วนของ SymPy รวมทั้งแก้และเข้าใจง่าย.
  • อีกการเปลี่ยนแปลงใหญ่เป็นโมดูลควอนตัมใหม่ที่ถูกเพิ่มเข้ามาเป็นผลมาจากสองโครงการ Google Summer ของโครงการรหัส.
  • นอกเหนือจากการเปลี่ยนแปลงที่สำคัญเหล่านี้มีการเปลี่ยนแปลงหลายอย่างทั่วทุก SymPy.
  • ข่าวประชาสัมพันธ์ฉบับนี้ยังมีไม่กี่หลังเล็กน้อยส่วนใหญ่แบ่งการทำงานร่วมกัน.

มีอะไรใหม่ ในรุ่น 0.6.3:

  • รังเพลิงเพื่อ Python2.6 (ผ่านการทดสอบทั้งหมด) และ Jython (ผ่านการทดสอบทั้งหมดยกเว้นผู้ที่ขึ้นอยู่กับ & quot; AST & quot; โมดูล).
  • ส่ว​​นทรูได้รับการแก้ไข (ผ่านการทดสอบทั้งหมดกับ & quot; -Qnew & quot; ตัวเลือก Python)
  • .
  • buildbot.sympy.org ถูกสร้างขึ้น; SymPy อยู่ในขณะนี้การทดสอบอย่างสม่ำเสมอใน Python 2.4, 2.5 และ 2.6 ทั้ง i386 และ amd64.
  • py.bench. py.test ตามการเปรียบเทียบ
  • bin / ทดสอบ: กรอบการทดสอบ py.test เหมือนง่ายโดยไม่ต้องพึ่งพาภายนอกและมีผลผลิตสีอย่างดี
  • .
  • ข้อ จำกัด มากที่สุดตอนนี้ทำงาน.
  • ตัวประกอบกว่า Z [x] ได้รับการปรับปรุงอย่างมาก.
  • ฟังก์ชั่น Piecewise ถูกเพิ่มเข้ามา nsimplify () ถูกนำมาใช้.
  • สัญลักษณ์และไวยากรณ์ var เป็นปึกแผ่น.
  • พิมพ์รหัส C.

ต้องการ

  • หลาม

ซอฟต์แวร์ที่คล้ายกัน

SpeedCrunch
SpeedCrunch

2 Jun 15

DanCalculator
DanCalculator

20 Feb 15

Gnuplot
Gnuplot

15 Apr 15

ความคิดเห็นที่ Sympy

ความคิดเห็นที่ไม่พบ
เพิ่มความคิดเห็น
เปิดภาพ!
ค้นหาตามหมวดหมู่