Składnia funkcji anonimowej:
nazwa_funkcji=@(lista_argumentów) (wyrażenie)
gdzie:
wyrażenie jest ciałem funkcji zawierającym pojedynczy wzór funkcji; lista_argumentów występujących we wzorze funkcji, oddzielanych przecinkami Zadanie: Obliczyć wartości drogi dla podanego wzoru na drogę: s=^- dla a=4 w przedziale dla t=[0, 5] Generujemy listę argumentów w macierzy jednowierszowej t od 0 do 5 z krokiem 0.1. t=[0:0.1:5]
Dla wzoru s=at2/2 tworzymy funkcję anonimową (Uwaga: operator potęgowania na elementach macierzy .A) f = @(t)(a*tA2/2)
Wywołujemy funkcję anonimową: s=f(t)
Metoda obliczeń w Matlab-ie: t=[0:0.1:5] a=4
f = @(t)(a*tA2/2);
s=f(t)
plot(t,s)
Wyniki obliczeń:
0 1 2 3 4 5 s =
0 2 8 18 32 50
Najpierw tworzymy m-plik funkcyjny o nazwie fs.m:
% obliczanie wartości funkcji fs(t,a)=2*tA2 function y = fs(t, a) %argumenty funkcjkt oraz a y=a*tA2/2;
Generujemy macierz jednowierszową argumentów t: t=[0:0.1:5]
Obliczamy ilość elementów macierzy t przy pomocy funkcji length n=length(t)
Obliczamy wartości:
sli = fs(tj) dla i=l:n Metoda obliczeń w Matlab-ie:
% Program oblicza tablicę wartości drogi s dla tablicy argumentów t
t=[0:0.5:5];
n=length(t);
for i=l:n
s 0)=fe(t(i), a); end
plot(t,s), grid %utworzenie wykresu s(t)
Wyniki obliczeń: w macierzy t zadane są argumenty czasu t, zaś w macierzy sl obliczone są wartości drogi dla każdej chwili t. Wyniki są wyświetlane w postaci wykresu.