Элементарные математические функции

Функции в Scilab

Все функции, используемые в Scilab, можно разделить на два класса:
•встроенные;
• определенные пользователем.

В общем виде обращение к функции в Scilab имеет вид:

имя_переменной = имя_функции(переменная1 [,переменная2,...])

где имя_переменной – переменная, в которую будут записаны результаты работы функции; этот параметр может отсутствовать, тогда значение, вычисленное функцией, будет присвоено системной переменной ans;

имя_функции – имя встроенной или ранее созданной пользователем функции;

переменная1, переменная2,... – список аргументов функции.

Пакет Scilab снабжен достаточным количеством всевозможных встроенных функций, знакомство с которыми будет происходить в следующих разделах. Здесь приведем только элементарные математические функции, используемые чаще всего:

Рисунок 3.10 – Таблица применений математических функций

Пример вычисления значения выражения:

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

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

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

Первый способ – это применение оператора deff, который в общем виде можно записать так:

deff(’[имя1,...,имяN] =имя_функции(переменная_1,...,переменная_M)’,
’имя1=выражение1;...;имяN=выражениеN’)

где имя1,...,имяN – список выходных параметров, то есть переменных, которым будет присвоен конечный результат вычислений, имя_функции – имя с которым эта функция будет вызываться, переменная_1,...,переменная_M – входные параметры.

Далее приведен самый простой способ применения оператора deff. Здесь показано, как создать и применить функцию для вычисления выражения:

В следующем листинге приведен пример создания и применения функции, с помощью которой можно найти корни квадратного уравнения вида ax2 + bx + c = 0 по формулам:

Второй способ создания функции это применение конструкции вида:

function[имя1,...,имяN]=имя_функции(переменная_1,...,переменная_M)
тело функции
endfunction

где имя1,...,имяN – список выходных параметров, то есть переменных, которым будет присвоен конечный результат вычислений; имя_функции – имя с которым эта функция будет вызываться,
переменная_1,...,переменная_M – входные параметры.

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

Вообще говоря, функции в Scilab играют роль подпрограмм. Поэтому целесообразно набирать их тексты в редакторе и сохранять в виде отдельных файлов. Причем имя файла должно обязательно совпадать с именем функции. Расширение файлам-функциям обычно присваивают sci или sce.

Обращение к функции осуществляется так же, как и к любой другой встроенной функции системы, т.е. из командной строки. Однако функции, хранящиеся в отдельных файлах, должны быть предварительно загружены в систему, например, при помощи оператора exec(имя_файла) или командой главного меню
File – Exec..., что, в общем, одно и то же.

В качестве примера рассмотрим следующую задачу:

Рассмотрим выводы:

Далее представлен список команд, реализующий описанный выше способ решения кубического уравнения:

Рисунок 3.11 – Пример решения кубического уравнения


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: