Inline -funksjonen i Matlab

Inline -funksjonen i Matlab

Denne artikkelen vil forklare ved bruk av inline () -funksjonen for å konstruere funksjonsobjekter i MATLAB. Vi vil se på de forskjellige metodene denne funksjonen gir, og vi vil vise deg hvordan du bruker hver med bilder og praktiske eksempler. Vi vil også gå nærmere inn på inngangs- og utgangsargumentene og typen data hver av disse argumentene godtar.

VIKTIG: MathWorks vil fjerne denne funksjonen fra Matlab -biblioteket i fremtidige utgivelser. Derfor anbefaler vi å bruke anonyme funksjoner i stedet for de som er opprettet med inline ().

Matlab inline () funksjonssyntaks

f = inline (eks)
f = inline (eks, n)
f = inline (eks, arg1, arg2 ... argn)

Beskrivelse og eksempler på Matlab Inline () -funksjon

Matlabs inline () -funksjon genererer funksjoner inline fra kode. Inline returnerer en funksjon i "func" som, når den kalles, har samme oppførsel og attributter som en standardfunksjon og returnerer sin utgang som et resultat av uttrykket eller funksjonen som er spesifisert når objektet ble opprettet. En funksjon opprettet med denne metoden kan brukes hvor som helst i koden uten å kreve ytterligere erklæring. Matlabs Inline () -funksjon gir to måter å lage disse funksjonene. Den ene er å lage dem fra brukerdefinerte eller brukerskapte matematiske uttrykk eller formler. En annen måte er å bruke uttrykk som inneholder funksjoner fra MATLAB -biblioteket. For å lage en funksjon ved hjelp av denne metoden, må vi erklære det eksplisitte uttrykket i form av karakterstrenger i inngangsargumentene til inline (). La oss nå se hvordan vi lager en funksjon, "func", fra uttrykket a + b:

Func = inline ('a + b')

På denne måten opprettet vi funksjonen “func”, som, når de kalles, returnerer resultatet av tillegg av A + B. Dette er den enkleste måten å lage en inline () -funksjon fra et brukerskapt uttrykk.

Func = inline ('funksjon (arg1, arg2)')

Eller fra en funksjon hvis inngangsargumenter eksplisitt er erklært:

Func = inline ('funksjon (arg1, arg2)', 'arg2', 'arg1')

Som du ser i forrige tilfelle, er både uttrykket og inngangsargumentene i inline () erklært som komma-separerte karaktervektorer. Følgende figur viser objektet som er opprettet for forrige uttrykk:

Når en inline -funksjon opprettes ved hjelp av en funksjon, bestemmes inngangsargumentene ved å gjenkjenne en alfanumerisk små bokstaver som ikke er en del av et ord.

Inngangsargumentene for inline () -funksjonen er følgende:

exp: Dette er inngangsuttrykket. Datatypen for "EXP" er en tegnstreng.

Arg1, Arg2, Arg… n: Dette er inngangsargumentene til den opprettede funksjonen. Datatypen for disse oppføringene er karakterstrenger.

N: Denne positive skalaren indikerer antall inngangsargumenter.

Neste, se på noen praktiske eksempler og applikasjonsbilder av Matlab Inline () -funksjonen.

Eksempel 1: For å lage og bruke en inline -funksjon fra et uttrykk for å beregne RMS -verdien til en sinusbølge

I dette eksemplet vil vi lage en enkel konsollapplikasjon for å beregne RMS -verdien til en sinusbølge fra en funksjon opprettet med inline (). For å gjøre dette, gjør vi funksjonen til “RMS”. Siden bølgen er sinusformet, beregner vi RMS -verdien ved å bruke følgende formel:

RMS = VPK1.4142

Denne formelen konverteres til en funksjon av inline (). Hver gang det kalles fra noen del av skriptet i “R”, returnerer det RMS -verdien for verdien som er angitt i “X”.

For å lage funksjonen RMS, kaller vi inline (), og sender den som en inngangsargumentkarakterstreng som inneholder det eksplisitte uttrykket av formelen for å finne RMS-verdien til topp-til-topp spenning (VPP) “x”. Når RMS -funksjonen er opprettet for beregningen vår, bruker vi hurtigfunksjonen for å legge inn VPP som vi ønsker å oppnå RMS -verdien i kommandokonsollen.

Rms = inline ('x./1.4142 ');
mens 1
clc ();
spør = 'Enter VPP';
x = input (spør);
r = rms (x);
disp (['rms er:', num2str (r)])
%disp (r);
spurt = 'Trykk Enter for å fortsette eller Ctrl+C for å avslutte';
x = input (spør);
slutt

Nå som vi har opprettet vår funksjon RMS (x), kan vi bruke den til å beregne RMS -verdiene til sinusbølger basert på toppspenningen. Når denne funksjonen er opprettet, kan denne funksjonen ringes hvor som helst i koden.

Eksempel 2: Å opprette og bruke en online funksjon fra en funksjon

La oss nå se på hvordan du kan bruke inline () for å lage en funksjon fra en funksjon i Matlab -biblioteket. I dette eksemplet oppretter vi en konsollapplikasjon der vi oppretter funksjonen “R” som returnerer modulen for å dele utbyttet “A” med divisoren “B”. For å gjøre dette bruker vi mod () -funksjonen fra MATLAB -biblioteket:

r = inline ('mod (a, b)', 'a', 'b');
mens 1
clc ();
spør = 'Skriv inn Dividendo';
a = input (spør);
spør = 'Skriv inn divisor';
b = input (spør);
d = a./b;
m = r (a, b);
disp (['Resultatet er:', int2str (d), '. Modulen er: ', num2str (m)])
spurt = 'Trykk Enter for å fortsette eller Ctrl+C for å avslutte';
x = input (spør);
slutt

Mer pålitelig alternativ til inline () -funksjonen til MATLAB

Som vi nevnte, blir inline () -funksjonen opphevet i MATLAB. Så vi anbefaler å lage funksjonene vi vil bruke i koden vår som anonyme funksjoner med spesialpersonen “@”. Deretter vil vi kort vise hvordan du kan lage funksjoner ved hjelp av denne metoden.

Hvordan lage en funksjon i MATLAB ved hjelp av en alternativ metode til inline ()

La oss nå se på et eksempel på den enkleste måten å lage en anonym funksjon ved å bruke den spesielle tegnet “@”. Deretter vil vi se på syntaks for å erklære en funksjon ved å bruke denne modusen:

Navn =@ (Input Arguments) -funksjon

Navnet på funksjonen må gå foran “@” -tegnet. Deretter må inngangsargumentene deklareres i parentes og atskilt med komma hvis det er mer enn ett og deretter uttrykket. Deretter gjentar vi eksempel 1, men erstatter inline () med denne metoden for å lage RMS -funksjonen:

Rms = @ (x) x./1.4142;
mens 1
clc ();
spør = 'Enter VPP';
x = input (spør);
r = rms (x);
disp (['rms er:', num2str (r)])
%disp (r);
spurt = 'Trykk Enter for å fortsette eller Ctrl+C for å avslutte';
x = input (spør);
slutt

Konklusjon

Denne artikkelen forklarte hvordan du lager funksjoner ved hjelp av Matlab Inline () -funksjon. Inline () -funksjonen er et av flere verktøy dette kraftige programmeringsspråket tilbyr for å lage funksjoner. Vi inkluderte praktiske eksempler og bilder som viser hvordan du kan lage funksjoner fra matematiske formler som er lagt inn av programmereren og funksjonene i MATLAB -biblioteket. Vi viste deg også mer pålitelige alternativer for å lage funksjoner, ettersom MathWorks har kunngjort at Inline () -funksjonen ikke lenger vil bli brukt i fremtidige versjoner. Vi håper du fant denne Matlab -artikkelen nyttig. Se andre Linux -hint -artikler for flere tips og informasjon.