Systém pružina-tlmič
 

Matematický model daného systému sa dá popísať pomocou diferenciálnej rovnice

Ak pri nenulových počiatočných podmienkach
uvážime nulové pôsobenie vonkajšej sily r, tak diferenciálna rovnica bude vyzerať nasledovne

Pohrajme sa ešte trocha s úpravou našej diferenciálnej rovnice. Pokiaľ celú rovnicu podelíme konštantou pružiny dostávame

Označme


pričom parameter T sa nazýva časová konštanta a b tlmenie systému.

Diferenciálna sa rovnica zmení na tvar

Bez straty na všeobecnosti môžeme predpokladať, že T=1. Potom

Našou úlohou je odsimulovať v Matlabe správanie sa tohoto systému.


V prvom rade si musíme uvedomiť fakt, že Matlab neumožňuje narábať s diferenciálnymi rovnicami viac ako prvého rádu. Z tohoto dôvodu je treba pretransformovať danú diferenciálnu rovnicu na systém diferenciálnych rovníc 1. rádu. Zadefinujeme si nové premenné x1 a x2 :

Diferenciálnu rovnicu je potom možné prepísať do tvaru
odkiaľ si je možné vyjadriť vzťah pre deriváciu x2. Potom hľadaný systém diferenciálnych rovníc bude
Toto už dokážeme zapísať aj v Matlabe.

Do súboru vozik_ps.m zapíšeme vektor pravých strán:

function xdot=vozik_ps(t,x)
global b
xdot=[x(2);-x(1)-2*b*x(2)];

a v druhom súbore, ktorý bude zároveň spúšťacím, zadefinujeme všetky premenné, počiatočné podmienky a pomocou metódy ode23 budeme riešiť diferenciálnu rovnicu. Funkciou plot potom už len vykreslíme priebeh zmeny pozície a zrýchlenia vozíka.

t0=0;
tfin=20;
global b
b=input('zadaj tlmenie b=');
x0=input('zadaj poc. podmienky x0=');
[t,x]=ode23('vozik_ps',[t0,tfin],x0);
plot(t,x)
title('System vozik-pruzina')

(Syntax funkcie ode23:   [t,x]=ode23('meno_subora_pravych_stran',[t0,tfin],x0),
kde t0 je počiatočný čas simulácie, tfin je koncový stav simulácie a x0 je vektor počiatočných podmienok )

Aký vplyv má zmena parametra b na celkové správanie systému? (vyskúšajte si hodnoty 0, 0.5, 0.75, 2)