Kernel: Python 2 (SageMath)
# החבילה SymPy
SymPy היא ספרייה למתמטיקה סימבולית המיועדת ל- Python. היא כתובה כולה רק ב-Python, כך שאין צורך בסיפריות נוספות כדי להשתמש בה. בכוונת מפתחי ה- Sympy לפתחה עד כדי מערכת המכילה את כל התכונות והיכולות של תוכנות CAS (Computer Algebra System). המפתחים מנסים לשמור את הקוד פשוט ככל האפשר כדי ליצור חבילה קלה להבנה ושאפשר להרחיבה בקלות.
באופן בסיסי Sympy היא מחשבון סימבולי, אבל יתרונה בכך שאפשר להשתמש בה בתוכנית מחשב.
In [1]:
In [2]:
In [3]:
Out[3]:
In [4]:
Out[4]:
In [5]:
Out[5]:
In [6]:
Out[6]:
###תרגיל 1
הפעילו על 1- את הפונקציה acos
In [7]:
Out[7]:
## Symbols
האוביקט הבסיסי ב- Sympy הוא ה- Symbol אוביקט זה מייצג משתנה מתמטי. יצירת אובייקט זה נעשיית באמצעות הפונקציה Symbol או symbols
In [8]:
Out[8]:
### תרגיל 2
בעזרת הפונקציה symbols צרו את המשתנים mu ו- sigma
In [9]:
Out[9]:
Object `` not found.
### תרגיל 3
הגדירו את הפונקציה פונקציה זו מכונה פונקציית הפעמון.
In [10]:
Out[10]:
File "<ipython-input-10-5cb17d057ce3>", line 1
bell=?
^
SyntaxError: invalid syntax
## גזירה של פונקציה
In [ ]:
In [ ]:
## שרטוט גרף באמצעות sympy.plotting
In [ ]:
### תרגיל 4
חשבו את הניגזרת השנייה של פונקציית "הפעמון"
ושרטטו גרף שלה
In [ ]:
##הפונקציות simplify, subs,expand,evalf
In [ ]:
In [ ]:
In [ ]:
In [ ]:
In [ ]:
###תרגיל 5
בעזרת הפונקציה help בדקו מה פעולת הפונקציה simplify.
In [ ]:
###תרגיל 6
הפעילו את הפונקציה simplify על הניגזרת השלישית של פונקציית הפעמון
In [ ]:
### תרגיל 7
פשטו את הביטוי : (הפונקציה simplify)
In [ ]:
###תרגיל 8
הפעילו על הביטוי הקודם את הפונקציה expand.
In [ ]:
### תרגיל 9
הביטוי שלמטה הוא נוסחת הרון לחישוב שטח משולש שצלעותיו הן a,b ו-c. s הוא חצי היקף המשולש. השתמשו בפונקציה subs וחשבו את שטח המשולש אם נתון ש: a=6, b=7, c=9
קודם הציבו במקום s את מחצית סכום הצלעות ולאחר מכן הציבו את הערכים.
In [ ]:
## בדיקת שוויון
In [ ]:
In [ ]:
## יצירת משוואה
יוצרים משוואה באמצעות הפונקציה Eq
In [ ]:
In [ ]:
In [ ]:
In [ ]:
## תרגיל 10
כתבו פונקציה המקבלת שני ביטווים. הפונקציה צריכה tupl המכיל שני ערכים בוליאניים. הראשון מציין האם הביטויים זהים והשני האם הביטויים שווים מתמטית.
In [ ]:
In [ ]:
דוגמא
קיבול חום סגול של חומר מוגדר ככמות האנרגיה שצריך לספק לכמות חומר שגודלה יחידת מסה אחת כדי לחמם אותה ב- . קיבול החום הסגולי של מים הוא
(האות J מציינת את יחידת האנרגיה ג'ול) הספק של גוף חימום שווה לכמות האנרגיה שפולט גוף החימום ביחידת זמן. יחידת ההספק היא ווט (W) והיא שווה לכמות אנרגיה של 1J בשנייה (s). בהמשך דוגמא לחישוב הזמן הדרוש לחימום דוד מים המכיל 150 ליטר מים בטמפרטורה של לטמפרטורה של בעזרת גוף חימום שהספקו 2000W.
## הערה:
כאשר מצמידים גוף בטמפרטורה גבוהה לגוף בטמפרטורה נמוכה יותר עוברת אנרגיה מהגוף החם לקר עד שהטמפרטורות משתוות. כמות האנרגיה העוברת מהגוף החם לקר מכונה חום.
Q - כמות חוםT1- טמפרטורה התחלתית
T2- טמפרטורה סופית
m - מסת המים
c -קיבול חום סגולי של מים
P - הספק גוף החימום
## חישוב כמות החום הדרושה לחימום המים:
In [ ]:
כפי שניתן לראות במקרה זה אין צורך להשתמש ב-Sympy לפתרון התרגיל.
# השימוש ב- Sympy הוא הדרך הפשוטה לפתרון בעיות מסובכות והדרך המסובכת לפתרון בעיות פשוטות
## תרגיל 11
נתון גוף שמסתו m1 בטמפרטורה T1 וקיבול חום C1. מצמידים אותו לגוף שמסתו m2, הטמפרטורה שלו T2 וקיבול החום שלו C2. פתחו בעזרת Sympy ביטוי לטמפרטורה הסופית של שני הגופים ( הניחו כי כמות החום שפלט האחד שווה לכמות החום שקלט השני).
## הפונקציה solve
פתרון סימבולי:
In [ ]:
### פיתרון נומרי עבור b=5
In [ ]:
###יותר מנעלם אחד:
In [ ]:
## תרגיל 12
חלקיק נע במהירות קצובה לאורך הקו הישר: . בנקודה (a,b) דיסקה ברדיוס r.
פתחו נוסחא באמצעותה ניתן לדעת האם החלקיק מתנגש בדיסקה ןאם כן היכן.
היכן נקודת ההתנגשות עבור הערכים הבאים: a=2,b=3,m=1,n=0.5, ו- r=5
In [ ]:
# מציאת נקודות קיצון של פונקציה
בנקודת קיצון הניגזרת מתאפסת
In [ ]:
In [ ]:
## תרגיל 12
מזריקים כמות A של תרופה לחולה. הריכוז c של התרופה נימדד ב: . כעבור זמן t מרגע הזרקת התרופה הריכוז ניתן על ידי : . הזמן נימדד בדקות. הריכוז המקסימאלי המותר של התרופה הוא
- איזו כמות מקסימאלית A מותר להזריק ? ומתי מתקבל הריכוז המקסימאלי?
- שרטטו גרף של הריכוז בדם כתלות בזמן והעריכו באמצעותו מתי מתקבל ריכוז של
- מצאו לסעיף הקודם תשובה מדויקת בעזרת הפונקציה nsolv.
-כל כמה זמן צריך להזריק לחולה את התרופה כדי שהריכוז לא יהיה מעבר לערך המקסימאלי ולא יפחת מערך מינימאלי של
In [ ]:
In [ ]:
In [ ]:
In [ ]:
In [ ]:
In [ ]: