Processing math: 100%

DKiPI_1_2019_s izradom

2271 days ago by mdemsic@grad.hr

 

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_vj02izrazi, 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 ωn0

       

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)+ctu(t)+m2(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(12tc2m2+4km)+K1sin(12tc2m2+4km))e(ct2m)

                                
       
(u0cos(12tc2m2+4km)+(cu0+2mv0)sin(12tc2m2+4km)mc2m2+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(c2m24km+cm))+K1e(12t(c2m24kmcm))

                                
       
(K1e(2ω2dt)+K2)e(ωntζω2dt)

                                
       
((mc2m24kmc)u02mv0)e(12t(c2m24km+cm))2mc2m24km+((mc2m24km+c)u0+2mv0)e(12t(c2m24kmcm))2mc2m24km

                                
       
((ω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

                                
       
       
       
       
(37272800921755829cos(3200175582910)406405162297510sin(3200175582910))cos(3200175582910t)2945008173028(1755829cos(3200175582910)2+1755829sin(3200175582910)2)+(406405162297510cos(3200175582910)+37272800921755829sin(3200175582910))sin(3200175582910t)2945008173028(1755829cos(3200175582910)2+1755829sin(3200175582910)2)