Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
Download

11th grade-all tasks

2151 views
Kernel: Python 3 (old Anaconda 3)

תרגיל מס 2 ב- SymPy

Names=['שמי','שותפי']

שאלה 1

בעזרת הנוסחא gt22\frac{g\cdot t^2}{2} אפשר לחשב את המרחק שגוף נופל עובר. "גוף נופל" הוא גוף המשוחרר ממנוחה. אבן הנופלת מגג בניין חולפת על פני חלון באורך ll במשך Δt\Delta t. מה מרחק הקצה העליון של החלון מהגג? פתרו בעזרת SymPy בלבד.

שאלה 2

נתון כי בשאלה הקודמת Δt=0.2s\Delta t=0.2s ו- l=2ml=2 m. חשבו את מרחק הקצה העליון של החלון מהגג.

שאלה 3

מהירות שחיין במים עומדים היא c. השחיין שוחה מרחק d במורד נהר וחוזר במעלה הנהר. מהירות זרימת המים בנהר v. פתחו ב-Sympy ביטוי למשך הזמן הדרוש לשחיין לבצע את הדרך הלוך ושוב.

שאלה 4

רוחב הנהר בשאלה הקודמת הוא d. פתחו ביטוי לכיוון שבו על השחיין לשחות כדי להתקדם בכיוון הניצב לגדת הנהר.

שאלה 5

עבור שאלות 3 ו- 4 חשבו את היחס בין הזמן הדרוש לשחיין לשחות מרחק d במורד הנהר ולחזור לבין הזמן הדרוש לו לחצות את הנהר הלוך ושוב.

שאלה 6

נתון בניין בגובה H. מתחתית הבניין זורקים מעלה אבן במהירות v0. מצאו גבול תחתון למהירות הדרושה כדי שהאבן תגיע לראש הבניין. נניח כי מקנים לגוף מהירות גדולה יותר, פתחו ביטוי לזמנים בהם חולפת האבן על פני הבניין והפכו בעזרת הפונקציה lambdify את הביטוי לפונקציה נומרית.
H,v0,t = sp.symbols('H,v0,t') v0 = sp.sqrt(20*H) sp.solve(sp.Eq(H,v0*t-5*t**2),t) t1 = v0/10 - sp.sqrt(-20*H + v0**2)/10 t2 = v0/10 + sp.sqrt(-20*H + v0**2)/10 t1= t1.evalf() t2 = t2.evalf() t1,t2
(0.447213595499958*H**0.5, 0.447213595499958*H**0.5)
--------------------------------------------------------------------------- TypeError Traceback (most recent call last) <ipython-input-6-a2458456e1d1> in <module>() 3 eq1 = sp.Eq(h,t*v-5*t**2) 4 eq2 = sp.Eq(v, 5*t) ----> 5 a=sp.solve(eq1, eq2) 6 print(a) /ext/anaconda3/lib/python3.5/site-packages/sympy/solvers/solvers.py in solve(f, *symbols, **flags) 825 bare_f = not iterable(f) 826 ordered_symbols = (symbols and --> 827 symbols[0] and 828 (isinstance(symbols[0], Symbol) or 829 is_sequence(symbols[0], /ext/anaconda3/lib/python3.5/site-packages/sympy/core/relational.py in __nonzero__(self) 193 194 def __nonzero__(self): --> 195 raise TypeError("cannot determine truth value of Relational") 196 197 __bool__ = __nonzero__ TypeError: cannot determine truth value of Relational
הראו שהפונקציה שקיבלתם עבור הזמן עובדת באמצעות מספר דוגמאות מתאימות

שאלה 7

שרטטו גרף באמצעותו ניתן להמחיש את השאלה הקודמת.

שאלה 8

נתון הפולינום x36x2+5x+12x^{3} - 6 x^{2} + 5 x + 12 מצאו את כל השורשים שלו, פעם בעזרת הפונקציה solve ופעם באמצעות הפונקציה factor.
x=sp.symbols('x') sp.solve(sp.Eq(0,x**3-6*x**2+5*x+12),x) sp.factor(sp.Eq(0,x**3-6*x**2+5*x+12),x)
Eq(0, (x - 4)*(x - 3)*(x + 1))

שאלה 9

פונקציית מקום זמן של חלקיק ניתנת על ידי: x(t)=A2tT x(t)=A\cdot 2^{-\frac{t}{T}}
כאשר T הוא קבוע הניתן בשניות ו-A ניתן במטרים. פתחו ביטוי למהירות ותאוצת החלקיק כתלות בזמן. כמו כן שרטטו גרפים דינאמיים של המקום, המהירות והתאוצה. שנו את A בתחום שבין 0.1 ל-5 ואת T בתחום שבין 0.1 ל- 2.
import sympy as sp x,A,t,T,v,a=sp.symbols('x A t T v,a') eq1=sp.Eq(v,x/t) eq2=sp.Eq(x,A**(-t/T)) eq=[] eq.append(eq1) eq.append(eq2) sp.solve(eq,v,x) eq3=sp.Eq(a,(-2)*x/t**2+v/t) eq4=[] eq4.append(eq2) eq4.append(eq3) sp.solve(eq4,a,x)
{a: v/t - 2*A**(-t/T)/t**2, x: A**(-t/T)}