Úvod do anonymnej funkcie v Matlabe
V Matlabe sú rôzne zabudované funkcie (v Matlabe sú dostupné rôzne knižnice). Vďaka týmto zabudovaným funkciám je Matlab ľahší a výkonnejší. Ale ak chceme vytvoriť našu vlastnú funkciu, potom v Matlabe existuje jedna možnosť, ktorá je funkcia handle. Pomocou obsluhy funkcií môžeme vytvoriť ľubovoľnú matematickú funkciu, tieto funkcie sa nazývajú anonymné funkcie.
Uvažujme jeden príklad y = - 2, v tomto sú dve premenné xay. x je vstup a y je výstup. Hodnota y závisí od hodnoty x.
Anonymná reprezentácia funkcie bude teda y = @ (x) 3 - 2
Vo vyššie uvedenej rovnici y je obsluha funkcií, x je vstupná premenná a '@' je symbol používaný pre anonymnú funkciu.
Po napísaní tejto rovnice môžeme dať akúkoľvek hodnotu x. napríklad y (0), y (1), y (2), y (3) atď
Ak je hodnota x 0, potom y = x 3 - 2
Y = 0 - 2
Y = -2
Podobne, ak je hodnota x 1, potom y = 1 3 - 2
Y = 1 - 2
Y = -1
Kroky na napísanie anonymnej funkcie v Matlabe
Krok 1: Najprv definujte funkciu popisovača Matlab pomocou symbolu '@' a vstupnej premennej y = @ (x)
Krok 2: Napíšte celú rovnicu vedľa premennej obsluhy funkcií.
Krok 3: Prijmite vstupnú hodnotu vo výstupnej premennej y (0).
syntaxe:
Definícia funkcie;
Telo funkcie;
Uvažujme jednu rovnicu p = q 2 - 3
Matlabov kód | syntax |
P = @ (q) | Premenná handle handle = @ vstupná premenná |
q 2 - 3 | Matematická rovnica |
q (1) | Premenná handle funkcie (hodnota vstupnej premennej) |
Príklady anonymných funkcií v Matlabe
Nižšie sú uvedené rôzne príklady anonymných funkcií v matlabe:
Príklad č. 1
Y = x 3 + 2x
V tomto príklade uvidíme jednoduchú metódu anonymnej funkcie.
Tu je Y výstup, x je variabilný vstup,
Ak dáme x = 0
Y = 0 + 2 (0)
Y = 0
Ak dáme x = 1
Y = x 3 + 2x
Y = 1 + 2
Y = 3
Ak dáme x = 2
Y = x 3 + 2x
Y = 8 + 4
Y = 12
Ak dáme x = 3
Y = x 3 + 2x
Y = 27 + 6
Y = 33
Matlab kód:
clc;
y = @ (x) x. 3 + (2 x x);
y (0)
y (1)
y (2)
y (3)
Vo vyššie uvedenom kóde y berie hodnoty x v čase kompilácie. Obrazovka 1 ukazuje implementáciu príkladu 1 v Matlabe
Príklad č. 2
y = x 3 - 2 * x + 3
ak x = 1
y = 1 - 2 + 3
y = 2
ak x = 2
y = 8 - 4 + 3
y = 7
ak x = 3
y = x 3 - 2 * x + 3
y = 27 - 6 + 3
y = 24
Matlab kód:
X = (1: 10)
y = @ (x) x. ^ 3 - 2 * x + 3
p = y (x)
dej (y, x)
Vo vyššie uvedenom kóde je x v rozsahu od 0 do 10, takže nie je potrebné priraďovať hodnoty 'x' v čase kompilácie a ak sú známe diskrétne hodnoty x a y, potom môžeme vykresliť odozvu premennej xay. Obrazovka 2 ukazuje implementáciu príkladu 2 a reakciu xay.
Príklad č. 3
Y = x 2 - log (x)
V tomto príklade je ťažké nájsť logaritmus pre každú hodnotu x. Namiesto matematických výpočtov, ak použijeme priame príkazy Matlab, dostaneme výstup so všetkými hodnotami y, ako aj reakciu x vs y (pomocou príkazu plot).,
Matlab kód:
clc;
y = @ (x) x. 2 - log (x)
y = @ (x) x. 2-log (x)
x (1: 10)
p = y (x)
Vo vyššie uvedenom kóde je x v rozsahu od 0 do 10, takže nie je potrebné priraďovať hodnoty 'x' v čase kompilácie a ak sú známe diskrétne hodnoty x a y, potom môžeme vykresliť odozvu premennej xay., Obrazovka 2 ukazuje implementáciu príkladu 2 a reakciu xay.
Výhody anonymných funkcií v Matlabe
- V anonymnej funkcii môžeme vytvoriť ľubovoľnú funkciu, ktorá nie je preddefinovaná.
- Môže byť uložený v premennej.
- Anonymné funkcie môžu byť vrátené vo funkcii.
- Môže sa preniesť dovnútra funkcie.
- Tieto funkcie nie je možné ukladať do programových súborov, preto môžeme šetriť pamäť.
- Môžeme si uložiť anonymný popisovač funkcií, aby sme ho mohli kedykoľvek a znovu použiť.
- Je ľahké ho reprezentovať a implementovať.
záver
V Matlabe môžeme pomocou anonymných funkcií ľahko implementovať zložité matematické kvadratické rovnice do jednoduchej formy. Týmto funkciám nenájdeme také definované meno, ktoré by sme mohli v čase definície funkcie zadať. Anonymná funkcia šetrí pamäť a podporuje vlastnosť opätovného použitia, preto nie je potrebné písať veľké a komplexné výrazy znova a znova.
Odporúčané články
Toto je príručka pre anonymné funkcie v Matlabe. Tu diskutujeme o krokoch, výhodách anonymných funkcií v Matlabe spolu s niektorými príkladmi. Ďalšie informácie nájdete aj v nasledujúcich článkoch -
- Typy údajov v MATLABe
- Ako nainštalovať MATLAB
- Príkazy Matlab
- Použitie Matlab
- Prehľad inline funkcií v Matlabe
- Funkcie MATLABu
- Kompilátor Matlab Aplikácie Matlab Compiler