MATLAB Функции - 4 типа функций в MATLAB и примеры

Содержание:

Anonim

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

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

Типы функций в MATLAB

В Matlab функции могут быть созданы или определены с использованием следующего синтаксиса:

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

Здесь мое удовольствие - имя функции, которая принимает входные аргументы i1, i2..iN и возвращает выходные данные o1, o2… on. Приведенное выше утверждение должно быть первой строкой при объявлении функции. Есть несколько правил, которым необходимо следовать для правильных имен функций и сохранения функции:

  • Имя функции, которое начинается с алфавита и может содержать цифры, символы или подчеркивания, считается действительным.
  • Мы можем сохранить функцию в файле функций, который содержит определения функций, и имя файла должно соответствовать первому имени функции в файле.
  • Мы также можем сохранить функцию, которая содержит определения функций и команды. Функции должны присутствовать в конце файла, а имя файла сценария не может иметь того же имени, что и функция в файле.

Ключевое слово end должно использоваться для обозначения конца функции. Требуется, когда любая функция в файле содержит вложенную функцию, или используемая функция является локальной функцией в файле сценария и функции. Функции работают в скриптах в 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, switch case и т. Д.
  • Вложенные функции могут быть вызваны напрямую по имени или с использованием любого дескриптора функции.

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

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

Это функции, которые видны только ограниченной группе функций. Они находятся в подфункциях и обозначаются ключевым словом «private». Они видны только функциям, которые присутствуют в родительской папке или функциям в папке, расположенной непосредственно над частной подпапкой. Они полезны, когда мы хотим ограничить область действия функции. Мы не можем вызывать приватные функции из командной строки или из функций вне родительской папки.

Код :

function priv
disp(“Hello “)

Измените папку, содержащую личную папку, и измените имя файла на настоящее
функция присутствует
собств

Измените папку на любое место и вызовите текущую функцию
настоящее время

Вывод: «Привет»

Вывод - функции MATLAB

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

Рекомендуемые статьи

Это руководство по функциям MATLAB. Здесь мы обсудим введение функций MATLAB и типы функций. Вы также можете просмотреть наши другие предлагаемые статьи, чтобы узнать больше -

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