Wprowadzenie do funkcji MATLAB
MATLAB Funkcje są pisane z różnymi wierszami kodu, które wiążą jedną zmienną z inną zmienną, a każde wyjście jest powiązane dokładnie z jednym konkretnym wejściem, które stanowi ważną część dowolnego języka programowania. W środowisku MATLAB są one przechowywane w określonym pliku, takim jak pliki skryptów itp. Mogą akceptować więcej niż jeden argument wejściowy i mogą również zwrócić więcej niż jeden argument wyjściowy. Działają na zdefiniowanych zmiennych w predefiniowanym obszarze roboczym, zwanym lokalnym obszarem roboczym.
Rodzaje funkcji w MATLAB
W Matlab funkcje mogą być tworzone lub definiowane przy użyciu poniższej składni:
function (o1, o2, …, oN) = myfun(i1, i2, i3, …, iN)
Tutaj moja zabawa to nazwa funkcji, która akceptuje argumenty wejściowe i1, i2..iN i zwraca dane wyjściowe o1, o2… włączone. Powyższa instrukcja powinna znajdować się w pierwszym wierszu podczas deklarowania funkcji. Istnieje kilka zasad, których należy przestrzegać w celu uzyskania prawidłowych nazw funkcji i zapisania funkcji:
- Nazwa funkcji, która zaczyna się od alfabetu i może zawierać cyfrę, znaki lub podkreślenia, jest uważana za poprawną.
- Możemy zapisać funkcję w pliku funkcji zawierającym definicje funkcji, a nazwa pliku musi być zgodna z nazwą pierwszej funkcji w pliku.
- Możemy również zapisać funkcję, która zawiera definicje funkcji i polecenia. Funkcje powinny znajdować się na końcu pliku, a nazwa pliku skryptu nie może mieć takiej samej nazwy jak funkcja w pliku.
Słowo kluczowe end powinno być użyte do wskazania końca funkcji. Jest wymagany, gdy jakakolwiek funkcja w pliku zawiera funkcję zagnieżdżoną lub używana funkcja jest funkcją lokalną w pliku skryptu i funkcji. Funkcje działają w skryptach w wersji R2016b lub nowszej. Istnieje kilka rodzajów funkcji używanych w MATLAB. Są to:
1. Funkcja anonimowa
Jest to funkcja, która nie jest przechowywana w pliku programu, ale jest powiązana ze zmienną, której typ danych to uchwyt_funkcji. Jest zdefiniowany w pojedynczej instrukcji i ma dowolną liczbę argumentów wejściowych lub wyjściowych. Składnię można zapisać jako:
wyrażenie (lista argumentów)
Przykład:
(x, y) x*y;
res1=mul(2, 3)
res2=mul(4, 3)
res3=mul(4, 5)
Po uruchomieniu danych wyjściowych otrzymujemy następujący wynik:
res1 = 6
res2 = 12
res3 = 20
Możemy pisać anonimowe funkcje bez wejść lub wielu wejść i wyjść. Jeśli funkcja nie ma danych wejściowych, możemy użyć pustego nawiasu, aby wywołać funkcję anonimową. Niektóre przykłady to
1. curr= @() datestr(now);
d = curr()
Output: d= 22-Oct-2019 11:02:47curr= @() datestr(now);
d = curr()
Output: d= 22-Oct-2019 11:02:47
2. (x, y)(x+y);
x=4
y=7
z=myfun(x, y)
Output: z=11 (x, y)(x+y);
x=4
y=7
z=myfun(x, y)
Output: z=11
2. Funkcje lokalne
Każdy plik funkcji zawiera podstawową funkcję, która pojawia się w pierwszym wierszu kodu. Są widoczne dla funkcji w innych plikach i można je wywoływać z wiersza poleceń. Inne funkcje obecne w pliku nazywane są funkcjami lokalnymi. Nie można ich wywoływać z wiersza poleceń i można zobaczyć w funkcji nadrzędnej lub głównej oraz funkcjach zapisanych w tym samym pliku. Są one również znane jako podfunkcje. Odpowiadają one podprogramom stosowanym w innym języku programowania. Można je również zapisywać w plikach skryptów, o ile pojawiają się po ostatnim wierszu kodu skryptu.
function (avg, med) = mystats(y)
a= length(y);
avg = mymean(y, a);
med = mymedian(y, a);
end
function a = mymean(v, n) ---- Example of a local function
a = sum(v)/n;
end
3. Funkcje zagnieżdżone
Funkcje zdefiniowane w innej funkcji lub funkcji nadrzędnej nazywane są funkcjami zagnieżdżonymi. Mogą używać lub modyfikować zmienne zdefiniowane w funkcji nadrzędnej. Są one zdefiniowane w zakresie funkcji i mogą uzyskać dostęp do obszaru roboczego, w którym są zdefiniowane. Istnieją pewne wymagania, które powinna spełniać każda zagnieżdżona funkcja:
- Wszystkie funkcje nie wymagają instrukcji końcowej. Jednak w celu zagnieżdżenia każdej funkcji należy zapisać instrukcję końcową funkcji.
- Nie możemy zdefiniować zagnieżdżonych funkcji wewnątrz instrukcji sterujących, takich jak if-else, wielkość liter itd.
- Funkcje zagnieżdżone można wywoływać bezpośrednio według nazwy lub przy użyciu dowolnego uchwytu funkcji.
function current
nestfun1
nestfun2
function nestfun1
x = 7;
end
function nestfun2
x = 4;
end
4. Funkcje prywatne
Są to funkcje widoczne tylko dla ograniczonej grupy funkcji. Znajdują się one w podfunkcjach i są oznaczone słowem kluczowym „prywatny”. Są widoczne tylko dla funkcji znajdujących się w folderze nadrzędnym lub funkcji w folderze bezpośrednio nad prywatnym podfolderem. Przydają się, gdy chcemy ograniczyć zakres funkcji. Nie możemy wywoływać funkcji prywatnych z wiersza poleceń lub funkcji spoza folderu nadrzędnego.
Kod :
function priv
disp(“Hello “)
Zmień folder zawierający folder prywatny i zmień nazwę pliku na obecny
funkcja obecna
priv
Zmień folder na dowolną lokalizację i wywołaj bieżącą funkcję
obecny
Wyjście: „Hello”
Wniosek - funkcje MATLAB
Funkcje MATLAB mogą być używane do wielu zadań i scenariuszy. Stanowią one integralną część każdego języka programowania. Można uzyskać do nich dostęp zarówno globalnie, używając zmiennych globalnych lub funkcji prywatnych, jeśli chcemy, aby niektóre informacje lub treści były prywatne. Są one stosowane w każdej organizacji, ponieważ firma musi spełnić wymagania.
Polecane artykuły
Jest to przewodnik po funkcjach MATLAB. Tutaj omawiamy wprowadzenie funkcji MATLAB i rodzaje funkcji. Możesz także przejrzeć nasze inne sugerowane artykuły, aby dowiedzieć się więcej -
- Funkcje Bessela w MATLAB
- Anonimowe funkcje w Matlabie
- Funkcje matematyczne w C #
- Funkcje przenoszenia w Matlabie
- Kompilator Matlab | Aplikacje kompilatora Matlab
- Przykłady Matlab AND Operator
- Kompletny przewodnik po przełączaniu skrzynek w PowerShell