Функции на MATLAB - 4 Видове функции в MATLAB и примери

Съдържание:

Anonim

Въведение във функциите на MATLAB

Функциите на MATLAB са написани с различни редове от код, които свързват една променлива с друга променлива и всеки изход е свързан точно с един конкретен вход, който представлява важна част от всеки език за програмиране. В среда на MATLAB те се съхраняват в определен файл като скриптове и т.н. Те могат да приемат повече от един входен аргумент и могат също да върнат повече от един изходен аргумент. Те работят върху дефинираните променливи в предварително зададеното им работно пространство, известно като локално работно пространство.

Видове функции в MATLAB

В Matlab функциите могат да бъдат създадени или дефинирани с помощта на по-долу синтаксиса:

function (o1, o2, …, oN) = myfun(i1, i2, i3, …, iN)

Тук моето забавление е името на функцията, която приема входните аргументи i1, i2..iN и връща изход o1, o2… on. Горното изявление трябва да бъде от първия ред, докато декларира функцията. Има някои правила, които трябва да се спазват за валидни имена на функции и запазване на функцията:

  • Името на функцията, което започва с азбуки и може да съдържа число, знаци или подчертавания, се счита за валидно.
  • Можем да запишем функцията във функционален файл, който съдържа дефиниции на функции и името на файла трябва да съвпада с първото име на функцията във файла.
  • Също така можем да запишем функцията, която съдържа дефиниции и команди на функции. Функциите трябва да присъстват в края на файла и името на файла на скрипта не може да има същото име като функцията във файла.

Крайната ключова дума трябва да се използва за посочване на края на функцията. Тя се изисква, когато която и да е функция във файла съдържа вложена функция или използваната функция е локална функция в рамките на скрипта и функционалния файл. Функциите работят в сценарии в R2016b или по-нова версия. Има няколко типа функции, използвани в MATLAB. Те са както следва:

1. Анонимна функция

Това е функцията, която не се съхранява в програмен файл, но е свързана с променливата, чийто тип данни е function_handle. Тя се дефинира в един оператор и има произволен брой входни или изходни аргументи. Синтаксисът може да бъде записан като:

(аргумент) израз

Пример:

(x, y) x*y;
res1=mul(2, 3)
res2=mul(4, 3)
res3=mul(4, 5)

Когато стартираме резултата, получаваме следния резултат:

res1 = 6

res2 = 12

res3 = 20

Можем да пишем анонимни функции без входове или множество входове и изходи. Ако функцията няма вход, тогава можем да използваме празни скоби за извикване на анонимната функция. Някои от примерите са

1. curr= @() datestr(now);
d = curr()
Output: d= 22-Oct-2019 11:02:47
curr= @() 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. Локални функции

Всеки функционален файл съдържа първична функция, която се появява в първия ред на кода. Те са видими за функции в други файлове и могат да се извикат в командния ред. Други функции, които присъстват във файла, се наричат ​​локални функции. Те не могат да бъдат извиквани от командния ред и се виждат на родителска или основна функция и функции, написани в един и същ файл. Те са известни и като подфункции. Те са еквивалентни на подпрограмите, използвани в друг език за програмиране. Те също могат да бъдат записани в скрипт файлове, стига да се появят след последния ред от кода на скрипта.

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. Вложени функции

Функциите, които са дефинирани в друга функция или родителска функция, се наричат ​​вложени функции. Те могат да използват или променят променливите, които са дефинирани в родителската функция. Те са дефинирани в обхвата на функцията и имат достъп до работното пространство, в което са дефинирани. Има определени изисквания, които всяка вложена функция трябва да спазва:

  • Всички функции не изискват крайния оператор. Въпреки това, за да вложите всяка функция за край, трябва да се напише за всяка функция.
  • Не можем да дефинираме вложени функции в контролни оператори, като if-else, case case и т.н.
  • Вложени функции могат да бъдат извиквани директно по име или с помощта на която и да е дръжка за функции.

function current
nestfun1
nestfun2
function nestfun1
x = 7;
end
function nestfun2
x = 4;
end

4. Частни функции

Те са функциите, които са видими само за ограничена група от функции. Те пребивават в подфункции и се означават с ключова дума „частен“. Те са видими само за функции, които се намират в родителската папка или функциите в папката непосредствено над частната подпапка. Те са полезни, когато искаме да ограничим обхвата на функцията. Не можем да извикаме частните функции от командния ред или от функциите извън родителската папка.

Код :

function priv
disp(“Hello “)

Променете папката, която съдържа частна папка и променете името на файла, което да се представи
присъстваща функция
PRIV

Променете папката на всяко място и извикайте настоящата функция
настояще

Резултат: “Здравей”

Заключение - MATLAB функции

Функциите MATLAB могат да се използват за няколко задачи и сценарии. Те са неразделна част от всеки език за програмиране. До тях може да се осъществи достъп както в глобален мащаб, като използваме глобални променливи, или използваме частни функции, ако искаме дадена информация или съдържание да бъдат частни. Те се използват във всяка организация за нуждите на бизнеса, за да отговорят на нуждите.

Препоръчителни статии

Това е ръководство за функциите на MATLAB. Тук обсъждаме Въвеждането на функциите на MATLAB и видовете функции. Можете да разгледате и другите ни предложени статии, за да научите повече -

  1. Функции на Bessel в MATLAB
  2. Анонимни функции в Matlab
  3. Математически функции в C #
  4. Функции за трансфер в Matlab
  5. Matlab Съставител | Приложения на Matlab Compiler
  6. Примери за Matlab И оператор
  7. Пълно ръководство за превключване на случая в PowerShell