Uvodno o programskom sustavu za simboličku matematiku Sage (http://sagemath.org/) - MPZI_predavanje_01
Zadaci za 'zagrijavanje' - MPZI_vj01 - aritmetičke operacije i matematičke funkcije
- MPZI_predavanje_02 i MPZI_vj02 - izrazi, funkcije, polinomi i njihovi grafovi
- MPZI_predavanje_03 i MPZI_vj03 - grafika - prikaz ravninskih i prostornih krivulja
- MPZI_predavanje_04 i MPZI_vj04 - prikaz ploha i nivo krivulja
- MPZI_predavanje_05 i MPZI_vj05 - vektori i matrice
- MPZI_predavanje_06 i MPZI_vj06 - jednadžbe i nejednadžbe (bitno → sustavi linearnih jednadžbi i određivanje korijena polinoma)
- MPZI_predavanje_07 i MPZI_vj07 - Elementi matematičke analize (derivacije!)
- MPZI_predavanje_08 i MPZI_vj08 - Elementi matematičke analize (2) (Integrali, uvod u diferencijalne jednadžbe)
DKPI - slobodno titranje sustava s jednim stupnjem slobode
Matematički model slobodnog neprigušenog titranja:
m¨u(t)+ku(t)=0
¨u(t)+ω2nu(t)=0
gdje je ω2n=km prirodna kružna frekvencija sustava
Zadavanje varijabli i nepoznatih funkcija:
|
Zadavanje diferencijalne jednadžbe (izraza):
ω2nu(t)+∂2(∂t)2u(t)=0
|
Određivanje rješenja diferencijalne jednadžbe
Traceback (click to the left of this block for traceback) ... Is omega_n zero or nonzero? Traceback (most recent call last): File "<stdin>", line 1, in <module> File "_sage_input_13.py", line 10, in <module> exec compile(u'open("___code___.py","w").write("# -*- coding: utf-8 -*-\\n" + _support_.preparse_worksheet_cell(base64.b64decode("ZGVzb2x2ZSggZGUxLCB1LCBpdmFyPXQp"),globals())+"\\n"); execfile(os.path.abspath("___code___.py")) File "", line 1, in <module> File "/tmp/tmpyCIwJV/___code___.py", line 2, in <module> exec compile(u'desolve( de1, u, ivar=t) File "", line 1, in <module> File "/opt/SageMath/local/lib/python2.7/site-packages/sage/calculus/desolvers.py", line 584, in desolve soln = P(cmd) File "/opt/SageMath/local/lib/python2.7/site-packages/sage/interfaces/interface.py", line 280, in __call__ return cls(self, x, name=name) File "/opt/SageMath/local/lib/python2.7/site-packages/sage/interfaces/interface.py", line 695, in __init__ raise TypeError(x) TypeError: Computation failed since Maxima requested additional constraints; using the 'assume' command before evaluation *may* help (example of legal syntax is 'assume(omega_n>0)', see `assume?` for more details) Is omega_n zero or nonzero? |
zadajemo pretpostavku da je ωn≠0
|
Rješenje diferencijalne jednadžbe glasi:
K2cos(ωnt)+K1sin(ωnt)
|
K1 i K2 su nepoznate konstante integracije diferencijalne jednadžbe i ovise o početnim uvjetima.
Određivanje rješenja diferencijalne jednadžbe za zadane početne uvjete u0 i v0
NAPOMENA:
početni uvjeti upisuju se u obliku liste:
[t0, u(t0)=u0] za problem početne vrijednosti u diferencijalnoj jednadžbi 1. reda
[t0, u(t0)=u0, u′(t0)=v0] za problem početne vrijednosti u diferencijalnoj jednadžbi 2. reda
[x0, y(x0), x1, y(x1)] za problem rubnih vrijednosti u diferencijalnoj jednadžbi 2. reda
(u0,v0)
|
u0cos(ωnt)+v0sin(ωnt)ωn
|
Nacrtati vremensku funkciju odziva sustava za sljedeće parametre:
ωn=10, u0=0.5, v0=8
0.500000000000000cos(10t)+45sin(10t)
|
12cos(10t)+45sin(10t)
|
12cos(10t)+45sin(10t)
|
u0cos(ωnt)+v0sin(ωnt)ωn
|
![]() |
Matematički model slobodnog prigušenog titranja:
m¨u(t)+c˙u(t)+ku(t)=0
¨u(t)+2ωnζ˙u(t)+ω2nx(t)=0
gdje je ζ=cckr relativno prigušenje sustava - omjer ekvivalentnog viskoznog prigušenja (c) i kritičnog prigušenja sustava (ckr=2ωnm)
(m,c,k,ζ,ωd)
|
ku(t)+c∂∂tu(t)+m∂2(∂t)2u(t)=0
|
Traceback (click to the left of this block for traceback) ... Is 4*k*m-c^2 positive, negative or zero? Traceback (most recent call last): File "<stdin>", line 1, in <module> File "_sage_input_28.py", line 10, in <module> exec compile(u'open("___code___.py","w").write("# -*- coding: utf-8 -*-\\n" + _support_.preparse_worksheet_cell(base64.b64decode("ZGVzb2x2ZSggZGUyLCB1LCBpdmFyPXQp"),globals())+"\\n"); execfile(os.path.abspath("___code___.py")) File "", line 1, in <module> File "/tmp/tmp8etU5f/___code___.py", line 2, in <module> exec compile(u'desolve( de2, u, ivar=t) File "", line 1, in <module> File "/opt/SageMath/local/lib/python2.7/site-packages/sage/calculus/desolvers.py", line 584, in desolve soln = P(cmd) File "/opt/SageMath/local/lib/python2.7/site-packages/sage/interfaces/interface.py", line 280, in __call__ return cls(self, x, name=name) File "/opt/SageMath/local/lib/python2.7/site-packages/sage/interfaces/interface.py", line 695, in __init__ raise TypeError(x) TypeError: Computation failed since Maxima requested additional constraints; using the 'assume' command before evaluation *may* help (example of legal syntax is 'assume(4*k*m-c^2>0)', see `assume?` for more details) Is 4*k*m-c^2 positive, negative or zero? |
Sjetimo se da je ovo upravo diskriminanta karakteristične jednadžbe, te da karakter titranja ovisi o njenoj vrijednosti
Kritično prigušenje - diskriminanta izčezava
|
Traceback (click to the left of this block for traceback) ... Is c zero or nonzero? Traceback (most recent call last): File "<stdin>", line 1, in <module> File "_sage_input_30.py", line 10, in <module> exec compile(u'open("___code___.py","w").write("# -*- coding: utf-8 -*-\\n" + _support_.preparse_worksheet_cell(base64.b64decode("ZGVzb2x2ZSggZGUyLCB1LCBpdmFyPXQp"),globals())+"\\n"); execfile(os.path.abspath("___code___.py")) File "", line 1, in <module> File "/tmp/tmpQpkxnl/___code___.py", line 2, in <module> exec compile(u'desolve( de2, u, ivar=t) File "", line 1, in <module> File "/opt/SageMath/local/lib/python2.7/site-packages/sage/calculus/desolvers.py", line 584, in desolve soln = P(cmd) File "/opt/SageMath/local/lib/python2.7/site-packages/sage/interfaces/interface.py", line 280, in __call__ return cls(self, x, name=name) File "/opt/SageMath/local/lib/python2.7/site-packages/sage/interfaces/interface.py", line 695, in __init__ raise TypeError(x) TypeError: Computation failed since Maxima requested additional constraints; using the 'assume' command before evaluation *may* help (example of legal syntax is 'assume(c>0)', see `assume?` for more details) Is c zero or nonzero? |
|
12((cu0+2mv0)tm+2u0)e(−ct2m)
|
Ako supstituiramo izraz za krtično prigušenje ckr=2mωn
((ωnt+1)u0+tv0)e(−ωnt)
|
12(26t+1)e(−10t)
|
![]() |
b) Prigušenje manje od kritičnog
|
(K2cos(12t√−c2m2+4km)+K1sin(12t√−c2m2+4km))e(−ct2m)
|
(u0cos(12t√−c2m2+4km)+(cu0+2mv0)sin(12t√−c2m2+4km)m√−c2m2+4km)e(−ct2m)
|
(ωnu0ζsin(√ω2dt)+√ω2du0cos(√ω2dt)+v0sin(√ω2dt))e(−ωntζ)√ω2d
|
gdje je ωd=ω√1−ζ2 frekvencija prigušenog titranja
Sjetimo se da za ζ<<1, slijedi da je ωd≈ω
Neka je relativno prigušenje zadanog sustava 3%
![]() |
c) Prigušenje veće od kritičnog
|
K2e(−12t(√c2m2−4km+cm))+K1e(12t(√c2m2−4km−cm))
|
(K1e(2√ω2dt)+K2)e(−ωntζ−√ω2dt)
|
((m√c2m2−4km−c)u0−2mv0)e(−12t(√c2m2−4km+cm))2m√c2m2−4km+((m√c2m2−4km+c)u0+2mv0)e(12t(√c2m2−4km−cm))2m√c2m2−4km
|
((ω2de(2√ω2dt)+ω2d)u0+((ωne(2√ω2dt)−ωn)u0ζ+v0(e(2√ω2dt)−1))√ω2d)e(−ωntζ−√ω2dt)2ω2d
|
![]() |
![]() |
Zadatak s auditornih vježbi:
Odredi funkciju slobodnog titranja prikazane grede ako se prilikom udara impulsa sile S=250Ns naglo odvoji teret težine G=4kN. Odredi amplitudu titranja.
Zadano je: L=4.5[m], m=0,8[t], EI=6000[kNm2]
|
(3160.5,62.854,0.099965)
|
Početni pomak jednak je statičkom pomaku od tereta G
0.00127
|
Početna brzina ovisi o promjeni količine gibanja koju uzrokuje impuls sile S. Budući da impuls djeluje na masu m ali i na teret težine G, u jednadžbi za promjenu količine gibanja treba uzeti ukupnu masu sustava prije titranja.
muk˙u(t2)−muk˙u(t1)=S1,2
(m+Gg)˙u(0)−0=S
˙u(0)=v0=S(m+Gg)
0.206996961512492
|
|
![]() |
|
(3727280092√1755829cos(3200√1755829√10)−4064051622975√10sin(3200√1755829√10))cos(3200√1755829√10t)2945008173028(√1755829cos(3200√1755829√10)2+√1755829sin(3200√1755829√10)2)+(4064051622975√10cos(3200√1755829√10)+3727280092√1755829sin(3200√1755829√10))sin(3200√1755829√10t)2945008173028(√1755829cos(3200√1755829√10)2+√1755829sin(3200√1755829√10)2)
|
![]() |
![]() |
|