Untitled 39

Untitled 39



Utworzymy funkcję MATLAB ’a w której zdefiniujemy kolejni |hh hodne (np. pod nazwąxdot); powstanie M-plik, który zapiszemy pod nazwą własną, np. linfun.m

function xdot=linfun(t,x,u,flag)

A=1; B=l; E=l; pp=2; mk=0; mk=0.5; pp=2;n=14;

% xxx dla segmentów środkowych xxxxx for i=2:n-1

mg(i)=x(n+i)-x(n+i+l) ; xdot(n+i)=A*(x(i-l)-x(i)-B*x(n+i) ) ; xdot(i)=E*mg(i); end

% xxx dla segmentu 1-go xxxxx mg(1)=x(n+1)-x(n+2); xdot(n+1)= A*(pp-x(1)-B*x(n+1)); xdot(1)= E*mg(1);

% xxx dla segmentu n-tego xxxx mg(n)= x(n+n)-mk;

xdot(n+n)=A*(x(n-l)-x(n)-B*x(n+n)); xdot(n)=E*mg(n);

Powyższy plik jest uproszczoną S-funkcją w tym sensie, że nie wprowadziliśmy zmiennej flag.

Krok 2: polecimy wykonanie całkowania zmiennych xdot (zdefiniowanych w funkcji linfun za pomocą jednej z kilku funkcji MATLAB’a, np. ode23. Syntaktyka tej funkcji jest następująca: [t,x]=ode23(’naz_pliku\ tO, tk, x0, tol)

gdzie t jest wektorem czasu i x macierzą wyników, naz_pliku jest nazwą pliku w którym zapisane sa równania różniczkowe, tO i tk jest przedziałem czasu całkowania, x0 jest wektorem stanów początkowych, tol jest dopuszczalnym błędem całkowania (standardowo jest ustawiony le-3). Uprzednio należy jednak wprowadzić wartości parametrów, które nie zostały zadeklarowane w pliku uruchomieniowym, w naszym przypadku są to wartości zmiennych pp i mk.

Krok 3: Oglądanie wyników, np. graficznie za pomocą polecenia plot(t,x) lub mesh(x). Można też utworzyć odpowiedni plik

uruchomlui|IOWy w postaci scripfu, na przykład następującego:

script uruchomieniowy symulacji linii dług. pneumat.

% wcześniej wprowadzić wartość n 10=0; tk=30;    „ n . . . „ . .

h=input (1 Jaka liczba segmentów linii •    )#

for i=l:n x 0 (i) = 1; x0(i+n)=0; end

[t, x]=ode23(’linfun',tO,tk,x0) ;

2=x(:,1:n);

ta=[60,30], mesh(z,m), grid

ylabel ( ' czas [s]'), xlabel ( nr segmentu ) , zlabel('ciśnienie [bar]')

Powyższemu plikowi nadajemy nazwę własną, np. linscr.m („scenami dla linii”), staje się M-plikiem MATLAB’a i jest zapisem scenariuszu eksperymentu symulacyjnego. Można go uruchomić poleceniem:

» linscr R    * ' •

9S5S S3ŁS5*.—— ’ •

funkcji czasu, pp -2, mk 0.5


**10 "W—, -y:


Wyszukiwarka

Podobne podstrony:
img221 Iloczyny funkcji trygonometrycznych Dla każdej wartości x, y, dla której zdefiniowane są funk
Untitled 18 Budowa S-funkcji Każdy sposób tworzenia modelu prowadzi do utworzenia S funkcji: a)
System Zarządzania Bazą Danych -funkcje □    pozwala zdefiniować bazę danych , □
44268 Zdjęcie0042 (10) f    Uwagi: I □ Obiekt zdefiniowany na zewnątrz wszystkich fun
Grupa B S - Zaaieżc funkcję postaci a, ~a,x aproksymującą w sensie najmniejszy ch kwadratów ołiad n
statystyka skrypt53 Do równania regresji dołącza się funkcję fk(x) dla której wartość F,* jest najw
img039 39 3.4. Podział funkcji przynależności dach rozpoznawania przeznaczonych do konkretnych zasto
Zadanie 2 Zamień skrypty z Zadania 1 na funkcje Matlaba. Zadanie 3 Napisz funkcję Matlaba obliczając
skanuj0027 (178) Rozdział 2. ♦ Znaczniki, zmienne i typy danych    39 Tabela 2.2. F

więcej podobnych podstron