Funkcja wbudowana w MATLAB

Funkcja wbudowana w MATLAB

W tym artykule wyjaśniono za pomocą funkcji inline () do konstruowania obiektów funkcyjnych w MATLAB. Przyjrzymy się różnym metodom, które zapewnia ta funkcja, i pokażemy, jak używać każdego z obrazami i praktycznymi przykładami. Będziemy również bardziej szczegółowo omówić argumenty wejściowe i wyjściowe oraz rodzaj danych, które każdy z tych argumentów akceptuje.

WAŻNY: MathWorks usunie tę funkcję z biblioteki MATLAB w przyszłych wydaniach. Dlatego zalecamy użycie funkcji anonimowych zamiast tych utworzonych z inline ().

Składnia funkcji MATLAB inline ()

f = inline (ex)
f = inline (ex, n)
f = inline (ex, arg1, arg2… argn)

Opis i przykłady funkcji MATLAB inline ()

Funkcja Matlab's INLINE () generuje funkcje w linii z kodu. Inline zwraca funkcję w „FUNC”, która po wywołaniu ma takie samo zachowanie i atrybuty jak funkcja standardowa i zwraca swoje dane wyjściowe jako wyrażenie wyrażenia lub funkcji określonej po utworzeniu obiektu. Funkcję utworzoną za pomocą tej metody może być używana w dowolnym miejscu w kodzie bez konieczności dalszej deklaracji. Funkcja Inline () Matlab zapewnia dwa sposoby tworzenia tych funkcji. Jednym z nich jest utworzenie ich z wyrażeń matematycznych lub formuł matematycznych definiowanych przez użytkownika lub. Innym sposobem jest użycie wyrażeń zawierających funkcje z biblioteki MATLAB. Aby utworzyć funkcję przy użyciu tej metody, musimy zadeklarować jawne wyrażenie w postaci ciągów znaków w argumentach wejściowych inline (). Zobaczmy teraz, w jaki sposób tworzymy funkcję „FUNC”, z wyrażenia A + B:

Func = inline („a + b”)

W ten sposób stworzyliśmy funkcję „FUNC”, która po wywołaniu zwraca wynik dodania A + B. To najłatwiejszy sposób na utworzenie funkcji inline () z wyrażenia utworzonego przez użytkownika.

Func = inline („funkcja (arg1, arg2)”)

Lub z funkcji, której argumenty wejściowe są wyraźnie zadeklarowane:

Func = inline („funkcja (arg1, arg2)”, „arg2”, „arg1”)

Jak widać w poprzednim przypadku, zarówno wyrażenie, jak i argumenty wejściowe w inline () są deklarowane jako wektory znaków oddzielone. Poniższy rysunek pokazuje obiekt utworzony dla poprzedniego wyrażenia:

Gdy funkcja inline jest tworzona za pomocą funkcji, argumenty wejściowe są określane przez rozpoznanie alfanumerycznego małej postaci, która nie jest częścią słowa.

Argumenty wejściowe dla funkcji inline () są następujące:

do potęgi: To jest wyrażenie wejściowe. Typ danych dla „exp” to ciąg znaków.

Arg1, arg2, arg… n: Są to argumenty wejściowe utworzonej funkcji. Typ danych dla tych wpisów to ciągły znaków.

N: Ten dodatni skalar wskazuje liczbę argumentów wejściowych.

Następnie spójrz na niektóre praktyczne przykłady i obrazy zastosowania funkcji MATLAB INLINE ().

Przykład 1: Aby utworzyć i użyć funkcji wbudowanej z wyrażenia, aby obliczyć wartość RMS fali sinusoidalnej

W tym przykładzie utworzymy prostą aplikację konsoli do obliczenia wartości RMS fali sinusoidalnej z funkcji utworzonej za pomocą inline (). Aby to zrobić, tworzymy funkcję „RMS”. Ponieważ fala jest sinusoidalna, obliczamy jej wartość RMS przy użyciu następującego wzoru:

RMS = VPK1.4142

Ta formuła jest konwertowana na funkcję według inline (). Za każdym razem, gdy jest wywoływany z dowolnej części skryptu w „R”, zwraca wartość RMS wartości wprowadzonej w „x”.

Aby utworzyć funkcję RMS, wywołujemy inline (), wysyłając ją jako ciąg znaków argumentu wejściowego zawierającego jawne wyrażenie wzoru do znalezienia wartości RMS napięcia szczytowego (VPP) „x”. Po utworzeniu funkcji RMS do naszych obliczeń używamy funkcji monitor.

Rms = inline ('x./1.4142 ');
podczas 1
clc ();
monit = „enter vpp”;
x = wejście (monit);
r = rms (x);
disp (['rms to:', num2str (r)])
%diss (r);
monit = 'Naciśnij Enter, aby kontynuować lub Ctrl+C do wyjścia';
x = wejście (monit);
koniec

Teraz, gdy stworzyliśmy naszą funkcję RMS (x), możemy ją użyć do obliczenia wartości RMS fal sinusoidalnych na podstawie ich napięcia szczytowego. Po utworzeniu tej funkcji można wywołać z dowolnego miejsca w kodzie.

Przykład 2: Aby utworzyć i używać funkcji online z funkcji

Teraz spójrzmy na to, jak możesz użyć inline (), aby utworzyć funkcję z funkcji w bibliotece MATLAB. W tym przykładzie tworzymy aplikację konsolową, w której tworzymy funkcję „R”, która zwraca moduł podziału dywidendy „A” przez dzielnika „B”. Aby to zrobić, używamy funkcji mod () z biblioteki MATLAB:

r = inline („mod (a, b)”, „a”, „b”);
podczas 1
clc ();
monit = „Enter Dividendo”;
a = wejście (monit);
monit = „Enter Divisor”;
B = wejście (monit);
D = a./B;
m = r (a, b);
Disp ([„Wynik to:”, int2str (d), '. Moduł to: ', num2str (m)])
monit = 'Naciśnij Enter, aby kontynuować lub Ctrl+C do wyjścia';
x = wejście (monit);
koniec

Bardziej niezawodna alternatywa dla funkcji inline () MATLAB

Jak wspomnieliśmy, funkcja inline () jest zniesiona w MATLAB. Zalecamy więc utworzenie funkcji, których użyjemy w naszym kodzie jako funkcji anonimowych ze specjalnym znakiem „@”. Następnie pokażemy krótko, w jaki sposób możesz tworzyć funkcje za pomocą tej metody.

Jak utworzyć funkcję w MATLAB przy użyciu alternatywnej metody inline ()

Teraz spójrzmy na przykład najprostszego sposobu utworzenia anonimowej funkcji za pomocą charakteru specjalnego „@”. Następnie przyjrzymy się składniom deklarowania funkcji za pomocą tego trybu:

Name =@ (Input Arguments) Funkcja

Nazwa funkcji musi poprzedzać znak „@”. Następnie argumenty wejściowe muszą być zadeklarowane w nawiasach i oddzielone przecinkami, jeśli jest więcej niż jeden, a następnie wyrażenie. Następnie powtarzamy przykład 1, ale zastępujemy inline () tą metodą, aby utworzyć funkcję RMS:

Rms = @ (x) x./1.4142;
podczas 1
clc ();
monit = „enter vpp”;
x = wejście (monit);
r = rms (x);
disp (['rms to:', num2str (r)])
%diss (r);
monit = 'Naciśnij Enter, aby kontynuować lub Ctrl+C do wyjścia';
x = wejście (monit);
koniec

Wniosek

W tym artykule wyjaśniono, jak tworzyć funkcje za pomocą funkcji MATLAB INLIE (). Funkcja inline () jest jednym z kilku narzędzi, które oferuje ten potężny język programowania do tworzenia funkcji. Dołączyliśmy praktyczne przykłady i zdjęcia pokazujące, w jaki sposób możesz tworzyć funkcje z formuł matematycznych wprowadzonych przez programista i funkcje w bibliotece Matlab. Pokazaliśmy również bardziej niezawodne alternatywy dla tworzenia funkcji, ponieważ Mathworks ogłosiło, że funkcja inline () nie będzie już używana w przyszłych wersjach. Mamy nadzieję, że ten artykuł Matlab był pomocny. Więcej wskazówek i informacji można znaleźć w innych artykułach dotyczących Linuksa.