در Sympy منبع باز بسته دستکاری نمادین، نوشته شده در پایتون خالص است.
هدف Sympy است برای تبدیل شدن به CAS کامل برجسته در پایتون، در حالی که کد به ساده که ممکن است نگه داشته تا آن را به راحتی می توان توسعه و فهم
ویژگی ها:.
arithmetics عمومی *، /، +، -
ساده سازی عمومی (مانند * * * * * * * * ب ب + 2 * B * A * B - & gt؛ به 3 * * * * * B ^ 2)
گسترش (مانند (A + B) ^ 2 - & gt؛ به ^ 2 + 2 * A * B + B ^ 2)
توابع (درصد این سطح، LN، گناه، COS، قهوهای مایل به زرد، ...)
اعداد مختلط (مانند درصد این سطح (من * X) .evalc () - & gt؛ به COS (X) + من * گناه (x))
تفکیک
سری تیلور
تعویض عمومی (مانند ایکس ها & gt؛ لوگاریتم طبیعی (x))
اعداد صحیح با دقت دلخواه و rationals
استاندارد (پایتون) شناور
چه جدید در این نسخه است:
در SymPy در حال حاضر پشتیبانی پایتون 3 و پایپای.
این نسخه همچنین شامل ویژگی های اصلی جدید در ترکیبیات، ادغام قطعی، متغیرهای تصادفی، عبارات ماتریس، مجموعه، مکانیک کلاسیک، مکانیک کوانتومی، جبر جابجایی، توطئه، و هندسه دیفرانسیل.
صدها نفر از رفع اشکالات در سراسر پایگاه کد کل وجود دارد.
چه در نسخه 0.7.1 جدید است:
به تغییرات عمده:
پایتون 2.4 دیگر پشتیبانی. SymPy در پایتون 2.4 کار نخواهد کرد در همه. اگر شما هنوز هم نیاز به استفاده از SymPy تحت پایتون 2.4 برای برخی از دلیل، شما نیاز به استفاده از SymPy 0.7.0 و یا پیش از آن.
کتابخانه توطئه Pyglet در حال حاضر (اختیاری) وابستگی خارجی. پیش از این، ما یک نسخه از Pyglet با SymPy حمل، اما این قدیمی و حشره دار بود. طرح این است که در نهایت رسم را در SymPy مدولار خیلی بیشتر، به طوری که آن را پشتیبانی بسیاری از پایانه (Backend)، اما این تا به انجام نشده است. در حال حاضر، هنوز هم تنها Pyglet است به طور مستقیم پشتیبانی می شود. توجه داشته باشید که Pyglet تنها وابستگی اختیاری است و فقط برای توطئه مورد نیاز است. بقیه SymPy هنوز هم می تواند بدون هیچ گونه وابستگی (به جز برای پایتون) استفاده می شود.
isympy در حال حاضر با IPython جدید 0.11 کار می کند.
mpmath شده است به 0.17 به روز شد. مربوط به یادداشتهای انتشار mpmath در http://mpmath.googlecode.com/svn/trunk/CHANGES را ببینید.
اضافه شده یک شی فیلم برای نمایندگی تعویض unevaluated. این در نهایت اجازه می دهد تا ما را نشان مشتقات در یک نقطه ارزیابی، به عنوان مثال، تفاوت (F (X)، X) .subs (X، 0) را برمی گرداند فیلم (مشتق (F (_x)، _x)، (_x،)، (0، )). این همچنین بدان معنی است که SymPy هم اکنون می توانید به درستی قانون زنجیره ای محاسبه زمانی که این قابلیت مورد نیاز است، مانند با F (G (X)). تفاوت (X).
توابع کمپ / Meijer در G-توابع:
کلاس های اضافه شده بیش از حد () و meijerg () برای نشان دادن کمپ و Meijer در G-توابع بود. آنها ارزیابی عددی (با استفاده از mpmath) و تمایز نمادین (و نه با توجه به پارامترهای) پشتیبانی می کند.
اضافه شده یک الگوریتم برای بازنویسی فوقهندسی و Meijer در G-توابع در نظر بیشتر آشنا، توابع خاص به نام. آن را از طریق hyperexpand تابع قابل دسترسی است ()، و همچنین از طریق expand_func (). این الگوریتم بسیاری از توابع ابتدایی، و همچنین توابع کامل و ناقص گاما، توابع بسل، و توابع خطا به رسمیت می شناسد. این به راحتی می توانید تمدید شود که مسئولیت رسیدگی به طبقات بیشتر از توابع خاص.
مجموعه:
کلاس اضافه FiniteSet به تقلید رفتار مجموعه پایتون در حالی که همچنین با فواصل و اتحادیه های موجود در تعامل
FiniteSets و فواصل تعامل به طوری که، به عنوان مثال فاصله (0، 10) - FiniteSet (0، 5) تولید (0، 5) U (5، 10]
FiniteSets همچنین اشیاء غیر عددی که مسئولیت رسیدگی به طوری که زیر امکان پذیر است {1، 2، 'یک'، 'دو'، {A، B}}
اضافه شده 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 == واقعی
تفریق، اتحادیه، اندازه گیری تمام کار گرفتن تقاطع پیچیده به حساب.
اضافه شده به روش as_relational به مجموعه، تولید اظهارات بولی با استفاده از AND، OR، معادله، LT، GT، و غیره ...
reduce_poly_inequalities تغییر برای بازگشت به اتحادیه از مجموعه به جای لیست مجموعه
Iterables:
اضافه شده روال تولید برای پارتیشن عدد صحیح و پارتیشن های باینری. معمول برای پارتیشن عدد صحیح 3 استدلال، تعداد خود، ممکن است حداکثر عنصر مجاز در پارتیشن تولید و حداکثر تعداد ممکن از عناصر است که در پارتیشن می شود طول می کشد. پارتیشن های باینری که توسط حاوی تنها قدرت از دو مشخص می شود.
اضافه شده معمول تولید برای پارتیشن چند مجموعه. با توجه به های MultiSet، الگوریتم اجرا خواهد شد تمام پارتیشن های احتمالی که چند مجموعه تولید.
اضافه شده روال تولید برای جایگشت زنگ، اختلالات، و involutions. جایگشت زنگ است که در آن چرخه است که آهنگسازی آن از اعداد صحیح شامل در جهت کاهش است. اختلال جایگشت به طوری که عنصر i ام است در موقعیت i ام است. پیچ جایگشت که زمانی که به خودی خود ضرب می دهد جایگشت هویت است.
اضافه شده معمول تولید برای گردنبند نامحدود. گردنبند نامحدود-ARY رشته از N حرف، هر یک از انواع ممکن است. این توسط n و k پارامترهای در روال مشخص شده است.
اضافه شده تولید معمول برای جنگل گرا. این یک پیاده سازی از الگوریتم S در 4A TAOCP جلد است.
XYZ پایگاه اسپین:
نمایندگی، بازنویسی و منطق InnerProduct است به کار بین هر دو پایگاه چرخش بهبود یافته است. این با استفاده از ماتریس Wigner-D، اجرا شده در کلاس WignerD، در تعریف تغییرات بین پایگاه های مختلف انجام شد. به نمایندگی از دولت، یعنی نشان (JzKet (1،0)، اساس JX =)، می تواند مورد استفاده قرار گیرد را به نمایندگی بردار از هر در هر یک از پایگاه های X / Y / Z برای مقادیر عددی از J و M در چرخش دریافت eigenstate. به طور مشابه، ایالات بازنویسی به پایگاه های مختلف، به عنوان مثال JzKet (1،0) .rewrite ('JX')، خواهد ایالات به عنوان یک ترکیب خطی از عناصر اساس داده ارسال. از آنجا که این متکی به عملکرد نماینده، این فقط برای J و M مقادیر عددی کار می کند. محصول داخلی دو eigenstates در پایگاه های مختلف را می توان مورد بررسی قرار، یعنی InnerProduct (JzKet (1،0)، JxKet (1،1)). هنگامی که دو پایگاه های مختلف استفاده می شود، یک دولت به اساس دیگر بازنویسی، بنابراین این نیاز به مقادیر عددی از J و M، اما innerproducts از ایالات در اساس همان هنوز هم می تواند نمادین انجام شود.
روش Rotation.D و Rotation.d، به نمایندگی از عملکرد Wigner-D و Wigner تابع کوچک-D، بازگشت یک نمونه از کلاس WignerD، که می تواند با استفاده از روش تکه () مورد بررسی قرار دادن عنصر ماتریس مربوطه از ماتریس Wigner-D.
تغییرات دیگر:
ما در حال حاضر استفاده از متجکس در اسناد ما. متجکس ارائه ریاضی لیتک entierly در مرورگر با استفاده از جاوا اسکریپت است. این بدان معنی است که ریاضی خیلی بیشتر قابل خواندن از ریاضی قبلی PNG، که با استفاده از تصاویر. متجکس تنها در مرورگر های مدرن پشتیبانی، بنابراین ریاضی لیتک در اسناد ممکن است کار نمی کند در مرورگرهای قدیمی تر.
nroots () در حال حاضر اجازه می دهد تا به شما در تنظیم دقت محاسبات
اضافه شدن پشتیبانی از انواع gmpy و mpmath به sympify ()
رفع برخی از اشکالات با lambdify ()
رفع اشکال با as_independent و علامت غیر جابجایی.
رفع اشکال با جمع آوری (شماره 2516)
بسیاری از رفع مربوط به انتقال SymPy به پایتون 3. با تشکر از دانش آموز GSoC ما ولادیمیر Peric، این کار تقریبا به پایان رسید.
برخی از افراد عطف به ماسبق به فایل AUTHORS اضافه شد.
اضافه شده حل برای یک مورد خاص از معادله ریکاتی در ماژول ODE.
مشتقات تکرار خیلی در راه مختصر چاپ شده است.
رفع اشکال با ادغام توابع با DiracDeltas متعدد.
اضافه کردن پشتیبانی برای Matrix.norm () که برای ماتریس (نه فقط بردارها) کار می کند.
ارتقاء به Groebner الگوریتم پایگاه.
Plot.saveimage در حال حاضر پشتیبانی outfile StringIO
Expr.as_ordered_terms در حال حاضر پشتیبانی ترتیب غیر سافلکس.
تفاوت حال حاضر منظور از علامت تمایز canonicalizes. این است که آن را می توانید عبارات مانند F (X، Y) .diff (X، Y) ساده - F (X، Y) .diff (Y، X). اگر می خواهید برای ایجاد یک شیء مشتق بدون مرتب سازی استدلال، شما باید آن را به صراحت با مشتق ایجاد، به طوری که شما مشتق (F (X، Y)، X، Y)! = مشتق (F (X، Y) دریافت کنید، Y، X). توجه داشته باشید که در داخل، مشتقات است که می تواند محاسبه همواره در جهت که آنها در توجه به محاسبه.
اضافه شده توابع is_sequence () و iterable () برای تعیین اگر چیزی است دستور iterable یا نرمال iterable بود.
فعال یک گزینه در مجسمه ابوالهول می افزاید که یک لینک منبع در کنار هر تابع، که لینک به یک کپی از کد منبع آن تابع.
جدید در نسخه 0.7.0 است:
این یک نسخه اصلی می افزاید که بسیار قابلیت های جدید است.
بزرگترین تغییر پرداخت جدید، که بسیار قوی تر و بسیار سریعتر می باشد. این بسیاری از SymPy قطعات، از جمله حل و ساده سازی تاثیر می گذارد.
یکی دیگر از تغییرات بزرگ ماژول کوانتومی جدید، که به عنوان یک نتیجه از دو تابستان کد گوگل پروژه اضافه شده است.
گذشته از این تغییرات عمده، تغییرات زیادی در سراسر همه SymPy وجود دارد.
این نسخه همچنین دارای چند عمدتا جزئی استراحت سازگاری.
جدید در نسخه 0.6.3 است:
منتقل شده به Python2.6 (همه آزمون عبور) و جایتون (همه آزمون به جز کسانی که بسته به تصویب و & quot؛ AST و & quot؛ ماژول) .
بخش واقعی ثابت شد (همه آزمون با گروه & quot عبور، -Qnew ها & quot؛ گزینه پایتون).
buildbot.sympy.org ایجاد شد. sympy در حال حاضر به طور منظم در پایتون 2.4، 2.5 در هر دو i386 و AMD64 تست شده، و 2.6.
py.bench: تعیین معیار مبتنی بر py.test.
بن / آزمون: یک چارچوب تست مانند py.test ساده، بدون وابستگی خارجی و با خروجی سادگی رنگی.
بیشترین محدودیت در حال حاضر کار می کنند.
تجزیه بیش از Z [X] تا حد زیادی بهبود یافته است.
تابع اضافه شده است. nsimplify () اجرا شد.
علامت و ور نحو متحد شدند.
C چاپ کد.
مورد نیاز:
پایتون
نظر یافت نشد