Полное руководство по функциям Matlab
Функции Matlab важны, так как позволяют создавать повторяемые коды. В этой статье мы подробно разберем функции Matlab.
Что такое функции Matlab?
Функции — это рабочие лошадки MATLAB. Они позволяют создавать код, который можно использовать многократно, и они являются одним из ключевых способов использования встроенных функций, уже доступных в MATLAB.
Станьте экспертом в области науки о данных и получите работу своей мечтыПрограмма аспирантуры Калифорнийского технологического института по науке о данныхИзучить программу
Помимо возможности повторного использования, функции имеют еще несколько существенных преимуществ:
Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)
Они могут принимать более одного входного аргумента и возвращать более одного выходного аргумента.
Они работают с переменными в своей рабочей области, отдельной от вашей базовой рабочей области (той, которую вы используете в командной строке).
Их можно хранить в отдельных файлах для удобства обмена с другими.
Синтаксис
функция (out1,out2, …, outN) = myfun(in1,in2,in3, …, inN)
Примеры
функция макс = моймакс(n1, n2, n3, n4, n5)
%Эта функция вычисляет максимум
% пять чисел, заданных в качестве входных данных
макс = n1;
если (n2 > макс)
макс = n2;
конец
если (n3 > макс)
макс = n3;
конец
если (n4 > макс)
макс = n4;
конец
если (n5 > макс)
макс = n5;
конец
Создать функции Matlab
И скрипты, и функции позволяют повторно использовать последовательности команд, сохраняя их в программных файлах. Скрипты — это самый простой тип программ, поскольку они хранят команды точно так же, как вы вводите их в командной строке. Функции обеспечивают большую гибкость, в первую очередь потому, что вы можете передавать входные значения и возвращать выходные значения. Например, эта функция с именем fact вычисляет факториал числа (n) и возвращает результат (f).
Помимо того, что функции упрощают чтение кода, они также помогают предотвратить проникновение ошибок в ваши программы. Функции могут использовать переменные, определенные в их охватывающей области видимости (скрипт или функция, вызывающая ее), но переменные, определенные внутри функции, не могут быть доступны за пределами этой функции (если только они явно не возвращены функцией). Это называется изоляцией области видимости, что означает, что каждая функция имеет свою собственную область видимости — и только свою собственную область видимости — для всех своих переменных. Это предотвращает путаницу относительно того, какая переменная используется в каком месте вашей программы.
функция f = факт(n)
f = продукт(1:n);
Конец
Начиная с R2016b, еще одним вариантом хранения функций является включение их в конец файла скрипта. Например, создайте файл с именем mystats.m с несколькими командами и двумя функциями, fact и perm.
х = 3;
у = 2;
z = постоянство(x,y)
функция p = perm(n,r)
p = факт(n)/факт(nr);
конец
функция f = факт(n)
f = продукт(1:n);
конец
Станьте экспертом в области науки о данных и получите работу своей мечтыПрограмма аспирантуры Калифорнийского технологического института по науке о данныхИзучить программу
Типы функций Matlab
Анонимные функции
Анонимные функции — отличный способ сэкономить время и усилия, и они просты в использовании.
Вы можете определить анонимную функцию в командной строке MATLAB или внутри функции или скрипта. Таким образом, вы можете создавать простые функции, не создавая для них файл.
Анонимные функции похожи на встроенные функции в традиционных языках программирования, определяемые в одном операторе MATLAB. Они состоят из одного выражения MATLAB и любого количества входных и выходных аргументов.
Местные функции
Файлы MATLAB совместимы с более чем функцией. Существует первичная функция, наряду с другими локальными функциями, когда вы используете локальные функции. Такие локальные функции видны только первичной функции и не могут быть вызваны из командной строки.
Основная функция используется для вызова файла MATLAB. Это то место, где вы можете увидеть все ваши переменные и любые созданные вами формулы. Она также позволяет вам добавлять комментарии и другие заметки, чтобы помнить, что делает ваш код или почему вы реализовали определенные вещи определенным образом.
Локальные функции недоступны за пределами родительской функции и могут использоваться только внутри нее. Они позволяют более эффективно писать код, разбивая его на более мелкие части, что упрощает задачу для людей, которые могут не понимать, что происходит за кулисами.
Вложенные функции
Вложенные функции — это способ организовать ваш код и сделать его более читаемым. Написав функции внутри тела другой функции, вы можете управлять своим кодом в модульных кусках, что упрощает его чтение.
Вложенные функции также позволяют определять их в области действия другой функции, чтобы они имели доступ к рабочей области содержащей их функции.
Частные функции
Частные функции позволяют создать вторичный уровень функций, к которому другие функции могут получить доступ только в своей родительской папке.
Это полезно, когда вы хотите сохранить реализацию функции в тайне, но при этом предоставить ее другим частям вашей программы.
Частные функции находятся в подпапках с уникальным именем personal. Они видны только функциям в родительской папке.
Определения аргументов
Когда вы работаете с MATLAB® и вашими функциями, вы будете писать код, который будет использоваться другими. Это означает, что вы хотите убедиться, что код работает так, как ожидается, поэтому важно проверить типы и размеры аргументов, а также их имена.
Если вы пишете функцию, которая имеет широкое применение и нуждается в проверке входных или выходных данных, вы можете определить блок аргументов. Это позволяет пользователям вашей функции легко узнать, какой тип входных данных необходим и какой тип выходных данных им следует ожидать.
Переменные области действия и генерация имен
Функции — это строительные блоки ваших скриптов. Каждая функция имеет свое собственное рабочее пространство, которое отделено от базового рабочего пространства, зарезервированного для скриптов и командной строки. В большинстве случаев переменные, созданные внутри функции, являются локальными переменными, известными только внутри этой функции. Локальные переменные недоступны в командной строке или любой другой функции. Однако существует несколько способов совместного использования данных между функциями или рабочими пространствами.
Вы также можете использовать глобальные переменные, чтобы сделать данные доступными во всех функциях и рабочих пространствах. Глобальные переменные должны быть инициализированы, прежде чем их можно будет использовать в любом скрипте или функции, и они могут быть инициализированы любым допустимым значением (включая пустое).
Обработка ошибок
При кодировании важно убедиться, что ваш код надежен. Это можно сделать, проверив пограничные случаи и проблемные условия. Самый простой подход — использовать оператор if или switch для проверки определенного условия, а затем выдать ошибку или предупреждение.
Подход к обработке ошибок заключается в использовании операторов try/catch: сначала выполняется предложение try, а предложение catch выполняется в случае ошибки. Вы также можете использовать предложение finally, чтобы программа продолжала работать даже после возникновения ошибки.
Для обработки ошибок в MATLAB можно использовать следующие ключевые слова:
ошибка | Выдать ошибку и отобразить сообщение |
попробуй, поймай | Выполнение операторов и выявление возникающих ошибок |
предупреждение | Отображать предупреждающее сообщение |
предупреждение о загрузке | Последнее предупреждающее сообщение |
утверждать | Выдать ошибку, если условие ложно |
onCleanup | Задачи по очистке после завершения функции |
Станьте экспертом в области науки о данных и получите работу своей мечтыПрограмма аспирантуры Калифорнийского технологического института по науке о данныхИзучить программу
Часто задаваемые вопросы
1. Что такое функции MATLAB?
Одной из самых мощных возможностей программирования является возможность повторного использования кода. Во многих языках вы можете хранить свои команды в файлах, называемых скриптами. Затем вы можете запускать эти скрипты, вводя их имена в окне терминала.
В MATLAB вы также можете хранить свои команды в файлах, называемых функциями. Функции обладают гораздо большей гибкостью, чем скрипты — они позволяют передавать входные значения и возвращать выходные значения.
2. Где находятся функции MATLAB?
Функции в MATLAB определяются в отдельных файлах и должны иметь то же имя, что и файл. Эти функции работают с переменными в своем рабочем пространстве, называемом локальным рабочим пространством. Это локальное рабочее пространство отделено от рабочего пространства, к которому вы получаете доступ из командной строки MATLAB, называемого базовым рабочим пространством.
3. Как определить функцию в MATLAB и использовать ее?
функция (y1,…,yN) = myfun(x1,…,xM)
function (y1,…,yN) = myfun(x1,…,xM) объявляет функцию с именем myfun, которая принимает входные данные x1,…,xM и возвращает выходные данные y1,…,yN. Этот оператор объявления должен быть первой исполняемой строкой функции.
Допустимые имена функций начинаются с буквенного символа и могут содержать буквы, цифры или символы подчеркивания.
4. Как определить функцию в скрипте MATLAB?
Определите скрипт в файле с именем integrationScript.m, который вычисляет значение подынтегральной функции и площадь под кривой от 0 до . Включите локальную функцию, которая определяет подынтегральную функцию, .
% Вычислить значение подынтегральной функции при 2*пи/3.
х = 2*пи/3;
y = мойИнтеграл(x)
% Вычислить площадь под кривой от 0 до пи.
хмин = 0;
хмакс = пи;
f = @myIntegrand;
а = интеграл(f,xmin,xmax)
функция y = myIntegrand(x)
у = грех (х).^3;
Конец
5. Каковы пять основных частей MATLAB?
Система MATLAB состоит из пяти основных частей:
Язык MATLAB.
Рабочая среда MATLAB.
Обработка графики®.
Библиотека математических функций MATLAB.
Интерфейс прикладного программирования MATLAB (API).
6. Какой тип кода представляет собой MATLAB?
MATLAB — наиболее широко используемое техническое вычислительное программное обеспечение для разработки алгоритмов, визуализации данных, анализа данных и численных вычислений. Это среда для вычислений и графического отображения, которая может использоваться различными способами: от анализа данных и моделирования до моделирования и создания прототипов. Вы можете быстро прототипировать свои идеи с помощью MATLAB, а затем масштабировать их до кода производственного качества.
Станьте специалистом по данным, пройдя практическое обучение с помощью хакатонов, мастер-классов, вебинаров и Ask-Me-Anything! Начните учиться прямо сейчас!
Заключение
MATLAB — один из самых востребованных языков программирования в области науки о данных. Если вы хотите стать хорошим специалистом по данным, вы можете записаться на магистерскую программу Simplilearn's Data Scientist.
Он подробно охватывает различные темы и содержит множество практических компонентов, которые помогут вам подготовиться к работе с первого дня.
Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)