טיש פון קאָנטענץ[באַהאַלטן][ווייַזן]
עס איז ניט מעגלעך צו באַקומען אַרום מאטעמאטיק, צי איר זענט אַ אוניווערסיטעט תּלמיד אָדער אַרבעט אין דאַטן וויסנשאַפֿט.
איינער קען אפילו טענהן אַז דאַטן וויסנשאַפֿט איז אַ טיפּ פון געווענדט מאטעמאטיק / סטאַטיסטיק. נומפּי, סיפּי, סקיקיט-לערן, און TensorFlow זענען בלויז אַ ביסל פון די פּיטהאָן לייברעריז וואָס האַנדלען מיט מאטעמאטיק קוואַנטיטאַטיוולי.
אָבער, עס איז בלויז איין קאָנקורענט פֿאַר בפירוש דילינג מיט מאַטאַמאַטיקאַל סימבאָלס: SymPy.
לאָמיר געפֿינען אַלץ וועגן SymPy.
וואָס איז סימפּי?
SymPy איז אַ פּיטהאָן סימבאָליש מאטעמאטיק ביבליאָטעק. עס אַספּיירז צו זיין אַ פול-פיטשערד קאָמפּיוטער אַלגעבראַ סיסטעם (CAS) און האַלטן די קאָד ווי יקערדיק ווי מעגלעך צו זיין פאַרשטיייק און לייכט יקספּאַנדאַבאַל.
עס איז גאָר געשריבן אין פּיטהאָן. עס איז פּשוט צו נוצן זינט עס רילייז בלויז אויף mpmath, אַ ריין פּיטהאָן ביבליאָטעק פֿאַר אַרביטראַריש פלאָוטינג פונט אַריטמעטיק.
ווי אַ ביבליאָטעק, עס איז געווען באשאפן מיט אַ באַטייטיק טראָפּ אויף וסאַביליטי אין זינען. עקסטענסיביליטי איז קריטיש אין די פּלאַן פון זייַן אַפּלאַקיישאַן פּראָגראַם צובינד (API).
ווי אַ רעזולטאַט, עס מאכט קיין פּרווון צו פאַרבעסערן די פּיטהאָן שפּראַך. די אָביעקטיוו איז אַז ניצערס קענען נוצן עס צוזאמען מיט אנדערע פּיטהאָן לייברעריז אין זייער וואָרקפלאָוו, צי אין אַ ינטעראַקטיוו סוויווע אָדער ווי אַ פּראָוגראַמד קאָמפּאָנענט פון אַ גרעסערע סיסטעם.
SymPy, ווי אַ ביבליאָטעק, פעלן אַ געבויט-אין גראַפיקאַל באַניצער צובינד (GUI). די ביבליאטעק איז:
- פריי, ביידע וועגן רייד און ביר, ווייַל עס איז לייסאַנסט אונטער די BSD דערלויבעניש.
- פּיטהאָן-באזירט: עס איז טאָוטאַלי דעוועלאָפּעד אין פּיטהאָן און ימפּלויז פּיטהאָן ווי זייַן שפּראַך.
- לייטווייט ווייַל עס רילייז בלויז אויף mpmath, אַ ריין פּיטהאָן ביבליאָטעק פֿאַר אַרביטראַריש פלאָוטינג פונט אַריטמעטיק, מאכן עס פּשוט צו נוצן.
- קענען זיין ינקאָרפּערייטיד אין אנדערע מגילה און מאַדאַפייד מיט מנהג פאַנגקשאַנז אין אַדישאַן צו זיין געוויינט ווי אַן ינטעראַקטיוו געצייַג.
פארוואס נוצן SymPy?
סאַגע, אַ קאָמפּיוטער אַלגעבראַ סיסטעם, אויך ימפּלויז פּיטהאָן ווי זייַן פּראָגראַממינג שפּראַך. סאַגע, אויף די אנדערע האַנט, איז ריזיק, ריקוויירינג אַ אראפקאפיע פון מער ווי אַ גיגאבייט. עס האט די נוץ פון לייטווייט.
אין אַדישאַן צו זיין סאָליד, עס האט קיין דיפּענדאַנסיז אנדערע ווי Python, אַלאַוינג עס צו זיין געוויינט פּראַקטאַקלי אומעטום.
דערצו, די יימז פון Sage און SymPy זענען נישט די זעלבע. סאַגע אַספּיירז צו זיין אַ פול-פיטשערד מאטעמאטיק סיסטעם, און עס טוט דאָס דורך קאַמביינינג אַלע די הויפּט אָפֿן-מקור מאַטאַמאַטיקאַל סיסטעמען אין איין.
ווען איר נוצן אַ סאַגע פֿונקציע, אַזאַ ווי ויסשטימען, עס ינוואָוקס איינער פון די אָפֿן מקור פּאַקאַדזשאַז וואָס עס כּולל. אין פאַקט, עס איז געבויט אין סאַגע. SymPy, אויף די אנדערע האַנט, אַספּיירז צו זיין אַ זיך-קאַנטיינד סיסטעם, מיט אַלע פאַנגקשאַנאַליטי ימפּלאַמענאַד אין עס זיך.
זיין פיייקייט צו פונקציאָנירן ווי אַ ביבליאָטעק איז אַ וויכטיק שטריך. פילע קאָמפּיוטער אַלגעבראַ סיסטעמען זענען מענט צו זיין געוויינט אין ינטעראַקטיוו ינווייראַנמאַנץ, אָבער זיי זענען שווער צו אָטאַמייט אָדער יקספּאַנד.
עס קענען זיין געוויינט ינטעראַקטיוועלי אין פּיטהאָן אָדער ימפּאָרטיד אין דיין אייגענע פּיטהאָן פּראָגראַם. עס אויך האט אַפּיס פֿאַר גרינג יקסטענדינג עס מיט דיין אייגענע רוטינז.
ינסטאָלינג SymPy
פשוט נוצן די באַפֿעל אונטן צו ינסטאַלירן אין דיין סוויווע.
סימפּי סימבאָלס
זאל ס באַקומען סטאַרטעד מיט אים איצט! זייַן יסוד איז אַ סימבאָל. אין SymPy, איר קענען דזשענערייט אַ סימבאָל x דורך שרייבן:
דער קאָד אויבן דזשענערייץ די סימבאָל X. סימבאָלס אין עס זענען בדעה צו עמיאַלייט מאַטאַמאַטיקאַל סימבאָלס וואָס רעפּראַזענץ אומבאַקאַנט וואַלועס.
ווי אַ רעזולטאַט, די פאלגענדע קאַמפּיאַטיישאַן איז געוויזן אונטן:
ווי געוויזן אויבן, דער סימבאָל X פאַנגקשאַנז ענלעך צו אַן אומבאַקאַנט סומע. אויב איר ווילט צו מאַכן פילע סימבאָלס, שרייַבן זיי ווי גייט:
איר באשאפן צוויי סימבאָלס, י, און ז, אין דער זעלביקער מאָמענט אין דעם פאַל. די סימבאָלס קענען איצט זיין מוסיף, סאַבטראַקטיד, געמערט און צעטיילט ווי געוואלט:
סימפּי פאַנגקשאַנז
1. סימפיפי () פֿונקציע
די סימפּיפי () מעטאָד פארוואנדלען אַן אַרביטראַריש אויסדרוק אין אַ סימפּי אויסדרוק. עס קאַנווערץ נאָרמאַל פּיטהאָן אַבדזשעקץ, אַזאַ ווי ינטאַדזשערז.
סטרינגס זענען פארוואנדלען צו זייער אויסדרוקן ווי געזונט ווי גאַנץ נומערן, אאז"ו ו.
2. עוואַלף () פֿונקציע
די פֿונקציע יוואַליוייץ אַ ספּעסיפיעד נומעריקאַל אויסדרוק מיט אַ פלאָוטינג פונט פּינטלעכקייַט פון אַרויף צו 100 דידזשאַץ.
די פֿונקציע אַדישנאַלי אַקסעפּץ אַ ווערטערבוך כייפעץ מיט נומעריקאַל וואַלועס פֿאַר סימבאָלס ווי אַ סאַבס אַרגומענט. באַטראַכטן די פאלגענדע פראַזע:
פלאָוטינג-פונט אַקיעראַסי איז באַשטימט צו 15 דידזשאַץ דורך פעליקייַט. אָבער, דאָס קען זיין פארענדערט צו קיין נומער צווישן 1 און 100.
די פאלגענדע יקווייזשאַן איז עוואַלואַטעד צו אַ פּינטלעכקייַט פון 20 דידזשאַץ.
3. Lambdify() פֿונקציע
Lambdify איז אַ פונקציע וואָס קאַנווערץ זייַן אויסדרוקן אין פּיטהאָן פאַנגקשאַנז. די evalf () אופֿן איז באַטלאָניש ווען עוואַלואַטינג אַן אויסדרוק אַריבער אַ ברייט קייט פון וואַלועס.
Lambdify אַרבעט ענלעך צו אַ לאַמבדאַ פֿונקציע, אַחוץ אַז עס טראַנסלייץ SymPy נעמען צו די נעמען פון די צוגעשטעלט נומעריקאַל ביבליאָטעק, וואָס איז בכלל NumPy.
דורך פעליקייַט, Lambdify איז געווענדט צו מאַט נאָרמאַל ביבליאָטעק ימפּלאַמאַנץ.
איינריכטונגען
אַ האַנדפול פון די מערסט וויכטיק פֿעיִקייטן פון דער ביבליאָטעק זענען ליסטעד דאָ; עס זענען פילע מער ניט אַרייַנגערעכנט, אָבער איר קענען קאָנטראָלירן זיי דאָ.
1. קאָר קאַפּאַביליטיז
- פונדאַמענטאַל אַריטמעטיק: +, -, *, /, און ** אָפּערייטערז זענען געשטיצט (מאַכט)
- א פּאָלינאָמיאַל יקספּאַנשאַן
- ינטאַדזשערז, ראַשאַנאַלז און פלאָוץ מיט אַרביטראַריש פּינטלעכקייַט
- טריגאָנאָמעטריק, כייפּערבאָליק און עקספּאָונענשאַל פאַנגקשאַנז, וואָרצל, לאָגאַריטהמס, אַבסאָלוט ווערט, ספעריש האַרמאָניקס, פאַקטאָריאַלז און גאַמאַ פאַנגקשאַנז, זעטאַ פאַנגקשאַנז, פּאָלינאָמיאַלז און ספּעציעל פאַנגקשאַנז
- סימבאָלס וואָס זענען ניט-קאַממוטאַטיוו
- מאַטטשינג פּאַטערנז
2. קאַלקולוס
- ינטעגראַטיאָן: דעם אופֿן ניצט די יקספּאַנדיד Risch-Norman כיוריסטיק
- Differentiation.
- באַגרענעצן פאַנגקשאַנז
- די סעריע פון Laurent Taylor
3. פּאָלינאָמיאַלס
- גרöבנער יסודות
- דיקאַמפּאָוזישאַן פון פּאַרטיייש פראַקשאַנז
- דיוויזשאַן, גקד רעזולטאַטן זענען ביישפילן פון יקערדיק אַריטמעטיק.
4. קאָמבינאַטאָריקס
- פּערמיוטיישאַנז
- גריי און פּרופער קאָודז
- קאַמבאַניישאַנז, פּאַרטישאַנז, סובסעץ
- פּאָליהעדראַל, רוביק, סיממעטריק און אנדערע פּערמיוטיישאַן גרופּעס
5. דיסקרעטע מאַטהס
- סאַמיישאַנז
- לאגישע אויסדרוקן
- בינאָמיאַל קאָואַפישאַנץ
- נומער טעאָריע
אַפּפּליקאַטיאָנס
1. בנין קאַלקולאַטאָר
2. קאָמפּיוטער אַלגעבראַ סיסטעמס
ניט ענלעך אנדערע קאָמפּיוטער אַלגעבראַ סיסטעמען, איר מוזן מאַניואַלי דערקלערן סימבאָליש וועריאַבאַלז מיט די סימבאָל () פֿונקציע.
3. קאַלקולוס
די קאַפּאַציטעט פון אַ סימבאָליש קאַמפּיאַטיישאַן סיסטעם צו טאָן אַלע סאָרץ פון קאַמפּיאַטיישאַנז סימבאָליש איז זייַן הויפּט שטאַרקייט.
עס קענען פאַרפּאָשעטערן סטייטמאַנץ, סימבאַליקאַלי, רעכענען דעריוואַטיווז, ינטאַגראַלז און לימאַץ, סאָלווע יקווייזשאַנז, ינטעראַקט מיט מאַטריסיז און טאָן פיל מער.
צו וועקן דיין אַפּעטיט, דאָ ס אַ געשמאַק פון סימבאָליש מאַכט.
וואָס אַנדערש קענען איר טאָן מיט SymPy?
אלא ווי דראָנינג וועגן נאָך ישוז אין-טיפקייַט, לאָזן מיר צושטעלן איר אַ רשימה פון רעסורסן צו העלפֿן איר פֿאַרבעסערן דיין סקילז:
- מאַטריסעס און לינעאַר אַלגעבראַ: עס קענען אַרבעטן מיט מאַטריץ און דורכפירן יקערדיק לינעאַר אַלגעבראַ אַפּעריישאַנז. די שפּראַך איז ענלעך צו די סינטאַקס פון NumPy. אָבער, עס זענען נאָוטאַבאַל דיפעראַנסיז. צו אָנהייבן, פאָרשן מאַטריסעס אין ביבליאָטעק.
- אויסדרוק: עס לעוועראַדזשאַז אַן אויסדרוק בוים, וואָס איז אַ בוים-באזירט סטרוקטור, צו האַלטן שפּור פון אויסדרוקן. קוק אויף אויסדרוק ביימער אויב איר ווילן צו לערנען מער וועגן זייער ינער ווערקינגז.
- דעריוואַטיווז און ינטאַגראַלז: עס קענען ויספירן רובֿ פון וואָס איר'ד לערנען אין אַ ינטראַדאַקטערי קאַלקולוס קלאַס (מינוס די טראכטן). איר קענט אָנהייבן מיט אונדזער פונקציע דיפפערענטיאַטיאָן אין SymPy.
- שייכות מיט NumPy: NumPy און SymPy זענען ביידע מאטעמאטיק-פֿאַרבונדענע לייברעריז. זיי זענען, אָבער, יסענשאַלי אַנדערש! NumPy אַרבעט מיט נומערן, כאָטש עס אַרבעט מיט סימבאָליש אויסדרוקן.
- סימפּליפיקאַטיאָנס: עס איז ינטעליגענט גענוג צו אויטאָמאַטיש פאַרפּאָשעטערן אויסדרוקן. אָבער, אויב איר ווילן מער פיין-גריינד קאָנטראָל איבער דעם, קוק אין עס סימפּלאַפיקיישאַנז.
סאָף
SymPy איז אַ שטאַרק ביבליאָטעק פֿאַר סימבאָליש מאטעמאטיק.
איר קענען נוצן עס צו שאַפֿן וועריאַבאַלז און פאַנגקשאַנז, און סימבאַליקאַלי פאַרברייטערן און פאַרפּאָשעטערן מאַטאַמאַטיקאַל סטייטמאַנץ און סאָלווע יקווייזשאַנז, יניקוואַלאַטיז און אפילו סיסטעמען פון יקווייזשאַנז / יניקוואַלאַטיז.
איר קענען שרייַבן די פאַנגקשאַנז ביידע אין די שריפט טעקסט און גלייַך אין די וואָקזאַל (אָדער דזשופּיטער נאָוטבוקס) צו באַקומען אַ שנעל אַסעסמאַנט און אַ בעסער גראַפיקאַל דיפּיקשאַן פון די דורכגעקאָכט קאַמפּיאַטיישאַנז.
זענט איר גרייט צו ויספאָרשן מער פון SymPy? לאָזן אונדז וויסן אין די באַמערקונגען.
לאָזן אַ ענטפֿערן