Úvod do funkcie Piecewise v Matlabe
Čiastočná funkcia je funkcia, ktorá je definovaná rôznymi viacnásobnými funkciami. V tomto prípade sa viacnásobné funkcie používajú na aplikovanie v určitých intervaloch hlavnej funkcie. Funkcia po častiach sa tiež používa na opis vlastnosti ktorejkoľvek rovnice alebo funkcie. Predstavuje rôzne podmienky vo funkciách alebo rovniciach. V tejto téme sa budeme učiť o Piecewise Function v Matlabe.
Môže sa implementovať dvoma spôsobmi, jedným je pomocou slučiek (príkaz if-else a switch) a druhý je bez použitia slučiek. V slučkovej metóde sa používa spôsob víťazstva. Ako vidíme, existujú dva spôsoby, so slučkami a bez použitia slučiek.
V prvej metóde sú opäť dva spôsoby
1. Použitím metódy if-else
2. Pomocou príkazu switch
V druhej metóde predstavuje funkcia vektorizáciu
3. Vektorizovaná metóda
Použitím príkazov If-Else
Toto je jedna zo základných terminológií na implementáciu funkcií po častiach, ale nie je to dobrý postup na implementáciu funkcií po častiach.
Syntax:
If condition1
Statement 1 ;
else
statement 2;
end
plot ( input variable, output variable )
function output variable = piecewise ( input variable )
Príklad č. 1
Teraz zvážme jeden príklad
f ( x ) = - 2 for x < 0
2 for x > 0
Aby sme vyššie uvedenú funkciu implementovali v Matlabe, musíme si vytvoriť jednu funkciu s kľúčovým slovom 'piecewise'.
> > function fx = piecewise ( x )
Vo vyššie uvedenom výkaze „fx“ je názov výstupnej premennej, „kus“ je kľúčové slovo použité pre uvedenú funkciu a „x“ je vstupná premenná.
Po deklarovaní funkcie teraz musíme definovať podmienky rozsahov vstupnej premennej 'x'.
>> If x < = 0
>> fx = -2
>> else
>> fx = 2
Vo vyššie uvedených príkazoch sa na definovanie rozsahu používa príkaz if-else, ktorý ukazuje, že ak je hodnota x menšia alebo rovná '0', potom out bude '- 2' a ak je hodnota 'x' väčšia ako '0', potom výstup bude '2'.
Program Matlab:
If x < = 0
fx = -2 ;
else
fx = 2 ;
end
plot ( x, f x )
function fx = piecewise ( x )
výkon :
Vyhlásenie o prepnutí prípadu
Druhá metóda v slučkách je riadená príkazmi typu switch-case. V tejto metóde reprezentujeme rôzne podmienky v rôznych metódach, môžeme špecifikovať viac prípadov v jednej prepínacej slučke.
Príklad č. 2
Predpokladajme vyššie uvedený príklad,
f x = - 2 for x <= 0
2 for x > 0
V tomto príklade sú vo funkcii fx dve podmienky, jedna je menšia ako rovná '0' a druhá je väčšia ako '0'.
Ak chcete implementovať vyššie uvedený príklad pomocou príkazu switch - case, musíme deklarovať príkaz funkcie (funkcia po častiach).
>> function fx = piecewise (x )
Vyššie uvedené príkazy ukazujú, že fx je po častiach funkcia týkajúca sa vstupnej premennej 'x', po vyhlásení funkcie začneme príkazom switch.
>> switch (x)
Vyššie uvedený príkaz je kľúčové slovo pre prípad prepínača na zmenu hodnôt premennej 'x'. Teraz vo vnútri prepínača budú rôzne prípady, naša požiadavka je iba v prípadoch, takže napíšeme 2 prípady.
Case 1: x < = 0
F x = - 2 ;
Case 2 : x > 0
F x = 2 ;
Vyššie uvedené príkazy predstavujú rozsahy x a príslušné očakávané funkčné hodnoty.
Program Matlab
function F x = piecewise (x )
switch ( x )
Case 1 : x < = 0
F x=-2 ;
Case 2 : x > 0
F x = 2 ;
end
Plot ( F x, x )
Výkon :
Vektorizovaná metóda
Táto metóda je druhým prístupom po častiach bez použitia slučiek. V tejto metóde je vstupom celý vektor sekvencií (podmienok) a pomocou operátora '&' môžeme kombinovať dve podmienky. Toto je najpopulárnejšia metóda v postupných funkciách.
Predpokladajme ten istý príklad;
fx=-2 … x<=0
2 … x > 0
Teraz ilustrujeme vyššie uvedený príklad pomocou prístupu vektorizovania. Najprv musíme deklarovať funkciu po častiach ako vyššie uvedené príklady.
function fx = piecewise (x)
Po deklarovaní funkcie po častiach definujeme rozsahy vstupnej premennej 'x'. Vo vyššie uvedenom príklade, ako vieme, existujú dve podmienky, preto musíme definovať dva rozsahy.
fx (x<=0)=-2 ;
and
fx (x>0)=2;
Teraz, ako sú známe rozsahy, musíme deklarovať celkový rozsah vstupnej premennej 'x'.
x = - 5: 1: 5
to ukazuje, že x prevezme hodnoty od - 5 do + 5.
Program Matlab
function fx = piecewise ( x )
fx(x<= 0) = - 2 ;
fx(x>0) = 2 ;
x = - 5 : 1 : 5
fx = piecewise ( x )
plot (fx, x )
Výkon:
Záver - Piecewise Function in Matlab
Funkcie po častiach sa používajú hlavne na označenie funkcií, ktoré majú rôzne vstupné rozsahy s rôznymi podmienkami. Ako vidíme vyššie, existujú tri prístupy, ktoré reprezentujú funkcie po častiach. Ale prístup if-else (loop) sa nepoužíva pri implementáciách v reálnom čase. A vektorizovaný prístup používaný v mnohých aplikáciách.
Odporúčané články
Toto je sprievodca funkciou Piecewise v Matlabe. Tu diskutujeme Metódy použitia Piecewise Function v Matlabe s rôznymi tvrdeniami a príkladmi. Viac informácií nájdete aj v nasledujúcom článku -
- Verzia MATLAB
- Vektory v Matlabe
- Matrix v Matlabe
- Čo je Matlab?
- Rôzne typy slučiek s jej výhodami
- Kompilátor Matlab Aplikácie Matlab Compiler