Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
01_Среда_Matlab.doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
330.75 Кб
Скачать

5. Функции, задаваемые пользователем

Рассмотрим два способа задания функций, определенных пользователем, в MATLAB.

Первый способ использует оператор @ для создания, так называемой «анонимной функции».

Второй способ использует команду inline.

Рассмотрим два способа на примере функции одной переменной

.

Как было отмечено ранее, большинство функций MATLAB могут оперировать как векторами, так и скалярами, и чтобы быть уверенным, что в качестве аргумента функции может выступать вектор, необходимо ставить точки перед математическими операциями ^, *.

Первый способ:

>> f = @(x) x.^2.*sin(pi*x/2)

f =

@(x)x.^2.*sin(pi*x/2)

Второй способ:

>> f1 = inline('x.^2.*sin(pi*x/2)')

f1 =

Inline function:

f1(x) = x.^2.*sin(pi*x/2)

Когда функция задана, неважно каким методом, её можно вычислить, например

>> a = f(3)

a =

-9

>> a = f1(3)

a =

-9

или

>> x = [1 2 3]

x =

1 2 3

>> a = f(x)

a =

1.0000 0.0000 -9.0000

>> a = f1(x)

a =

1.0000 0.0000 -9.0000

Этими способами можно задать функцию двух и более аргументов.

Например, .

>> g = @(x,y) (x+y).*exp(x)

g =

@(x,y)(x+y).*exp(x)

>> g1 = inline('(x+y).*exp(x)','x','y')

g1 =

Inline function:

g1(x,y) = (x+y).*exp(x)

>> x = [1 2]

x =

1 2

>> y = [2.5 3.4]

y =

2.5000 3.4000

>> u = g(x,y)

u =

9.5140 39.9009

>> u = g1(x,y)

u =

9.5140 39.9009

6. Создание м-файлов.

М-файл позволяет вводить большое число команд, изменять их, создавать собственные функции.

Для создания М-файла открываем меню File основного окна MatLab и в пункте New выбираем подпункт M-file. На экране открывается новое окно редактора М-файлов.

Набираем в этом окне команды, например, создаем из двух матриц одну расширенную.

------------------------------------------------------------------------------------------------------------------------

A = [2 1 -0.1 1

0.4 0.5 4 -8.5

0.3 -1 1 5.2

1 0.2 2.5 -1]

B = [2.7; 21.9; -3.9; 9.9]

D = [A B]

-----------------------------------------------------------------------------------------------------------------------

Сохраним файл с именем, например, proba в личном каталоге, выбирая при этом пункт Save as меню File редактора. Для запуска на выполнение всех команд М-файла, следует выбрать пункт Run в меню Debug (или нажать F5).

Отдельные блоки М-файла можно снабжать комментариями, которые начинаются со знака процента %. Например, редактируем уже существующий файл:

------------------------------------------------------------------------------------------------------------------------

% Создание матрицы А

A = [2 1 -0.1 1

0.4 0.5 4 -8.5

0.3 -1 1 5.2

1 0.2 2.5 -1];

% Создание матрицы В

B = [2.7; 21.9; -3.9; 9.9];

% Создание расширенной матрицы D

D = [A B];

% Вывод матрицы D на экран в командное окно

disp('Расширенная матрица D = ')

disp(D)

------------------------------------------------------------------------------------------------------------------------

Сохраним и запустим снова этот файл.

Вывод результата и текста в командное окно осуществляется оператором disp, причем текст указывается в апострофах.

Открытие уже существующего М-файла осуществляется при помощи пункта Open меню File, либо редактора М-файлов.