Kmity sústavy s dvoma stupňami volnosti: Rozdiel medzi revíziami
| (7 medziľahlých úprav od jedného ďalšieho používateľa nie je zobrazených) | |||
| Riadok 1: | Riadok 1: | ||
| + | {{sablona_python_priklady|Fyzika}}  | ||
__NOTOC__  | __NOTOC__  | ||
[[Category:Python]]  | [[Category:Python]]  | ||
Na obrázku je zobrazená sústava dvoch telies a  dvoch pružín. Prvá pružina je pevne ukotvená, hmotnosti telies sú ''m<sub>1</sub>'' a ''m<sub>2</sub>'', ich výchylky z rovnovážnej polohy sú ''x<sub>1</sub>'' a ''x<sub>2</sub>''. V zobrazenej pozícii je sústava v rovnováhe, pružiny sú natiahnuté pôsobením vlastnej hmotnosti telies, do pohybových rovníc preto nebudeme zahŕňať tiažové sily ''m<sub>1</sub>g'' a ''m<sub>2</sub>g''.  | Na obrázku je zobrazená sústava dvoch telies a  dvoch pružín. Prvá pružina je pevne ukotvená, hmotnosti telies sú ''m<sub>1</sub>'' a ''m<sub>2</sub>'', ich výchylky z rovnovážnej polohy sú ''x<sub>1</sub>'' a ''x<sub>2</sub>''. V zobrazenej pozícii je sústava v rovnováhe, pružiny sú natiahnuté pôsobením vlastnej hmotnosti telies, do pohybových rovníc preto nebudeme zahŕňať tiažové sily ''m<sub>1</sub>g'' a ''m<sub>2</sub>g''.  | ||
| − | [[Súbor:kmity-sustava.png | thumb|center| <div align="center"> Sústava </div>]]  | + | [[Súbor:kmity-sustava.png | thumb|center| <div align="center"> Sústava dvoch telies </div>]]  | 
| − | Pri vychýlení z rovnovážnej polohy pôsobia na telesá sily úmerné ich výchylkám z rovnovážnych polôh a konštantám pružín ''k<sub>1</sub>'' a ''k<sub>2</sub>''. Pre obe telesá môžeme potom napísať pohybové rovnice  | + | Pri vychýlení z rovnovážnej polohy pôsobia na telesá sily úmerné ich výchylkám z rovnovážnych polôh a konštantám pružín ''k<sub>1</sub>'' a ''k<sub>2</sub>''. Straty energie pri pohybe telies v tomto jednoduchom prípade nebudeme uvažovať. Pre obe telesá môžeme potom napísať pohybové rovnice  | 
:<math>    | :<math>    | ||
| Riadok 28: | Riadok 29: | ||
| − | Dosadením do pohybových rovníc dostaneme  | + | Hľadanou veličinou je frekvencia kmitov telies. Dosadením do pohybových rovníc dostaneme  | 
:<math>    | :<math>    | ||
| Riadok 57: | Riadok 58: | ||
\omega^4 - \left[ \frac{k_1+k_2} {m_1} + \frac{k_2}{m_2} \right] \omega^2 + \frac{k_1}{m_1} \frac{k_2}{m_2}=0  | \omega^4 - \left[ \frac{k_1+k_2} {m_1} + \frac{k_2}{m_2} \right] \omega^2 + \frac{k_1}{m_1} \frac{k_2}{m_2}=0  | ||
</math>  | </math>  | ||
| + | |||
| + | Túto rovnicu nazývame charakteristickou rovnicou systému. Vo všeobecnosti má dva korene <math>\omega_1^2</math> a <math>\omega_2^2</math>, vlastnými frekvenciami systému potom sú kladné hodnoty <math>\omega_1\,</math> a <math>\omega_2\,</math>.  | ||
| + | |||
| + | === Výpočet sústavy ===  | ||
| + | |||
| + | V interaktívnom móde Pythonu (konzola) importujeme balík ''pylab''<ref>http://www.scipy.org/PyLab</ref> pre vedecké výpočty. Ak použijeme interaktívny shell ''iPython''<ref>http://ipython.github.com/ipython-doc/</ref> <ref>http://ipython.scipy.org/moin/</ref>, balík ''pylab'' môžeme automaticky importovať pri spustení shellu  | ||
| + | |||
| + | <source lang="python">  | ||
| + | ipython -pylab   | ||
| + | </source>  | ||
| + | |||
| + | Definujeme hmotnosti telies a konštanty pružín  | ||
| + | <source lang="python">  | ||
| + | >>> m1=1.0; m2=0.5  | ||
| + | >>> k1=500; k2=250  | ||
| + | </source>  | ||
| + | |||
| + | Zostavíme koeficienty charkteristickej rovnice sústavy a nájdeme jej korene  | ||
| + | <source lang="python">  | ||
| + | >>> c=[1, -(k1+k2)/m1-k2/m2, k1*k2/(m1*m2)]  | ||
| + | >>> z=roots(c)  | ||
| + | </source>  | ||
| + | |||
| + | Vypočítame vlastné frekvencie systému  | ||
| + | <source lang="python">  | ||
| + | >>> f=sqrt(z)/(2*pi)  | ||
| + | </source>  | ||
| + | |||
| + | Vlastné frekvencie systému majú hodnoty f[0]=5.03 Hz a f[1]=2.51 Hz. Pre analyzovaný systém môžeme zobraziť jeho fázovú trajektóriu [x<sub>1</sub>, x<sub>2</sub>]  | ||
| + | <source lang="python">  | ||
| + | >>> t=arange(0.0, 5.0, 0.01)  | ||
| + | >>> x1=sin(t*f[0])  | ||
| + | >>> x2=sin(t*f[1])  | ||
| + | >>> plot(x1,x2)  | ||
| + | </source>  | ||
| + | |||
| + | [[Súbor:kmity-char.png | thumb|center| 400px | <div align="center"> Fázová trajektória sústavy </div>]]  | ||
| + | |||
| + | === Literatúra a odkazy ===  | ||
| + | <references/>  | ||
Aktuálna revízia z 10:34, 18. marec 2013
Na obrázku je zobrazená sústava dvoch telies a dvoch pružín. Prvá pružina je pevne ukotvená, hmotnosti telies sú m1 a m2, ich výchylky z rovnovážnej polohy sú x1 a x2. V zobrazenej pozícii je sústava v rovnováhe, pružiny sú natiahnuté pôsobením vlastnej hmotnosti telies, do pohybových rovníc preto nebudeme zahŕňať tiažové sily m1g a m2g.
Pri vychýlení z rovnovážnej polohy pôsobia na telesá sily úmerné ich výchylkám z rovnovážnych polôh a konštantám pružín k1 a k2. Straty energie pri pohybe telies v tomto jednoduchom prípade nebudeme uvažovať. Pre obe telesá môžeme potom napísať pohybové rovnice
- [math] m_1 \ddot{x_1}=-k_1 x_1 + k_2(x_2-x_1) [/math]
 
- [math] m_2 \ddot{x_2}=-k_2(x_2-x_1) [/math]
 
Analýza sústavy
Pri analýze sústavy predpokladáme, že pohyb telies bude harmonický s rovnakou frekvenciou a môžeme ho preto popísať vzťahmi
- [math] x_1 =A_1 sin(\omega t)\, [/math]
 
- [math] x_2 =A_2 sin(\omega t)\, [/math]
 
Hľadanou veličinou je frekvencia kmitov telies. Dosadením do pohybových rovníc dostaneme
- [math] -m_1 A_1\, \omega^2 + (k_1 + k_2)A_1 - k_2 A_2 = 0\, [/math]
 
- [math] -m_2 A_2\, \omega^2 - k_2 A_1 + k_2 A_2 = 0\, [/math]
 
Úpravou dostaneme maticový zápis sústavy pohybových rovníc
- [math] \left[ \begin{array}{cc} {[(k_1+k_2)-m_1 \omega^2]} & -k_2 \\ -k_2 & {[k_2-m_2 \omega^2]} \end{array} \right] \left[ \begin{array}{c} A_1 \\ A_2 \end{array} \right] = 0 [/math]
 
Homogénna sústava rovníc má netriviálne riešenie len vtedy, ak determinant sústavy je rovný nule, z toho vyplýva
- [math] \omega^4 - \left[ \frac{k_1+k_2} {m_1} + \frac{k_2}{m_2} \right] \omega^2 + \frac{k_1}{m_1} \frac{k_2}{m_2}=0 [/math]
 
Túto rovnicu nazývame charakteristickou rovnicou systému. Vo všeobecnosti má dva korene [math]\omega_1^2[/math] a [math]\omega_2^2[/math], vlastnými frekvenciami systému potom sú kladné hodnoty [math]\omega_1\,[/math] a [math]\omega_2\,[/math].
Výpočet sústavy
V interaktívnom móde Pythonu (konzola) importujeme balík pylab[1] pre vedecké výpočty. Ak použijeme interaktívny shell iPython[2] [3], balík pylab môžeme automaticky importovať pri spustení shellu
ipython -pylab
Definujeme hmotnosti telies a konštanty pružín
>>> m1=1.0; m2=0.5
>>> k1=500; k2=250
Zostavíme koeficienty charkteristickej rovnice sústavy a nájdeme jej korene
>>> c=[1, -(k1+k2)/m1-k2/m2, k1*k2/(m1*m2)]
>>> z=roots(c)
Vypočítame vlastné frekvencie systému
>>> f=sqrt(z)/(2*pi)
Vlastné frekvencie systému majú hodnoty f[0]=5.03 Hz a f[1]=2.51 Hz. Pre analyzovaný systém môžeme zobraziť jeho fázovú trajektóriu [x1, x2]
>>> t=arange(0.0, 5.0, 0.01)
>>> x1=sin(t*f[0])
>>> x2=sin(t*f[1])
>>> plot(x1,x2)
