Как создать файл mat matlab

Обновлено: 06.07.2024

2 -е занятие по MATLAB

ЛАБОРАТОРНАЯ РАБОТА №2

Создание М-файлов в виде М-функций.

Элементы программирования в MATLAB .

1. По определению файлы, которые содержат в себе языковые коды системы MATLAB , называются М-файлами. М-файлы могут быть функциональными (М-функциями), если они содержат аргументы (входные переменные) и создают выходные данные. М-файлы обеспечивают расширяемость среды MATLAB , позволяют добавлять новые функции (встроенные функции) к уже существующим функциям MATLAB . М - файлы типа М-функций представляют собой как и М-сценарии обычные текстовые файлы, которые создаются с помощью редактора файлов. Написание М-функции начинается с кючевого слов function .

1. Формат заголовка М - функции:

function [список выходных переменных] = <имя функции>(<список входных переменных>); % список выходных переменных может быть условным, т.е просто символ.

% Сохранение М-файла как М-функции должно быть с именем, которое указывается в поле заголовка М-функции.

Пример 1 на создание М-функции. Создать М-файл для вычисления следующего выражения: , где — числа или матрицы одинаковой размерности.

В текстовом редакторе MATLAB создаем следующий М-файл в виде М-функции:

% Применение точки означает массивное озведение в квадрат.

% Созданную М-функцию сохраним под именем , которому редактор MATLAB добавит расширение " .m " .

% Обращение к функции fun 1 может быть выполнено или в командном окне или в М-сценарии.

Для примера 1 сначала в командном окне выполним следующие действия:

Ø fun 1(3,4) % в качестве аргументов выбраны значения a =3, b =4

5 % результат выполнения М-функции fun 1 с входными аргументами 3 и 4

Ø % другой способ использования созданной функции fun 1:

Ø % с присвоением результата, например, через z 1

Пример 2. Вычисление факториалов: , где — количество сомножителей.

Создадим следующую М-функцию под именем fact 1. m :

% Вычисление n -факториал:

function f 1= fact 1( n )

f 1= prod (1: n );

% максимальное число n =170

% функция prod в свою очередь является встроенной функцией MATLAB .

Для примера вычислим :

Пример 3. Создадим функцию для подсчета суммы натуральных чисел как положительных, так и отрицательных.

function s 1= sum 1( n , k ) % n — количество членов ряда, k —любое число, большее или % меньшее нуля, n , k — входные аргументы

Для проверки примера 3 в командном окне следует набрать sum 1 с конкретными n и k , например, n =5, k =1.333 и для отрицательной суммы n =5, k =-6.78.

Пример 4. Закодируем функцию в виде М-функции, где — действительное число.

Создадим следующую М-функцию под именем graf1.m:

function y = zet1(t,k)

% t — входной аргумент , который должен быть определен как вектор чисел

% Созданную М - функцию следует сохранить под именем zet1 .

% Для проверки примера 3 в командном окне MATLAB набрать:

Ø k=3; % число k можно задавать произвольно

Ø % Должен получиться график в полярной системе координат.

z1 будет означать y1 = 3 + 3(1+sint) . Если клавишей Enter запустить на выполнение, то будут выводиться все значения функции z1. Если же в конце строки стояла точка с запятой, то результат выводится не будет.

Построить график z1 в декартовой системе координат. Для этого в командной строке набрать plot(t,z1),grid . Откроется окно с графиком синусоиды по оси ординат от +3 до + 9 и по оси абсцисс от 0 до 10.

Задание. Применить функцию graf1 с различными входными аргументами и построить графики в декартовой и полярной системах координат.

Пример 5. Контроль количества входных аргументов.

function y=test1(a,b)

if (nargin==1) % nargin — ключевое слово для проверки количества входных аргументов

elseif (nargin==2) % Двойное равенство"=="означает тождественно равно, оператор

% Операторы условия if, elseif (ранее встречалось else) имеют следующие форматы записи:

Читайте также: