Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Mathcad_для_экономистов_Голдобина_2

.pdf
Скачиваний:
32
Добавлен:
05.07.2022
Размер:
885.22 Кб
Скачать

Шаг следования значений ранжированной переменной в явном виде обычно не задается, он определяется как разность между Значение2 и Значение1. Ес- ли Значение1 > Значение2, то шаг отрицательный. Существует сокращенная форма определения ранжированной переменной:

Имя_переменной := Значение1 .. ЗначениеN

В этом случае шаг изменения ранжированной переменной по умолчанию ра-

вен 1 или -1 (если Значение1 > ЗначениеN).

Любое выражение с ранжированной переменной создает после знака равен- ства «=» таблицу вывода. Числа в таблицах можно форматировать с помощью окна Result Format (Формат Результата). При определении размерной ранжи-

рованной переменной все данные таблицы вывода будут содержать единицы измерения, например:

 

i := 1.. 10

x := (1, 1.1.. 2) × kg

z := -3, -1.. 4

 

 

i2 =

x =

 

z =

 

 

 

 

 

kg

 

 

 

1

 

1

-3.000E+000

 

 

4

 

1.1

 

-1.000E+000

 

 

 

 

 

 

 

 

 

9

 

1.2

 

1.000E+000

 

 

 

 

 

 

 

 

 

16

 

1.3

 

3.000E+000

 

 

 

 

 

 

 

 

 

25

 

1.4

 

 

 

 

 

 

 

 

 

 

 

36

 

1.5

 

 

 

 

 

 

 

 

 

 

 

49

 

1.6

 

 

 

 

 

 

 

 

 

 

 

64

 

1.7

 

 

 

 

 

 

 

 

 

 

 

81

 

1.8

 

 

 

 

 

 

 

 

 

 

 

100

 

1.9

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Таблица вывода помещается по умолчанию под именем переменной. Такое расположение можно изменить в пункте Alignment (Выравнивание) ее контек- стного меню. Отображение номеров строк и столбцов таблицы устанавливается флажком Show column/row labels на вкладке Display (Вид) окна Properties

(Свойства), также вызванного из контекстного меню таблицы вывода. Отображать таблицу вывода ранжированной переменной можно и в матрич-

ном виде, т. е. в круглых скобках. Для этого в окне Result Format на вкладке

Display Options (Параметры отображения) из списка Matrix display style

(Стиль отображения матриц) выбирается Matrix (Матрица).

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

21

Функции

Вставка и определение функций

Функции в системе Mathcad можно условно разделить на две группы: встро- енные и функции пользователя.

Встроенные функции изначально задаются в системе разработчиками. Имя функции вводится с клавиатуры, обычно в нижнем регистре. Далее указывается аргумент (список аргументов, перечисленных через запятую) в круглых скоб- ках. Следует помнить, что запись имен функций в системе зачастую отличается от привычной записи. Например, функция арккосинус в системе Mathcad имеет имя acos, а функция котангенс имеет имя cot. Поэтому лучше выбирать встро- енную функцию в окне, вызываемом командой Function (Функция) главного

меню Insert (Вставка), или нажатием на кнопку панели инструментов (ри- сунок 2.1). Это окно позволяет:

получить перечень всех встроенных функций, разбитых на категории;

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

получить дополнительную информацию с примерами по выбранной функ- ции, запустив справочную систему Mathcad;

правильно ввести в место расположения курсора имя функции вместе с требуемым количеством знакомест в круглых скобках.

Рисунок 2.1 − Окно вставки функции

При выборе категории из списка Function Category (Категория функции) в правой части окна в поле Function Name (Имя функции) отображается содер-

22

жимое указанной тематической группы. Из списка функций выбирается требуе- мая и нажимается кнопка OK. Далее достаточно заполнить знакоместа аргумен- тов данными.

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

Идентификатор(список аргументов) := Выражение

Сначала задается имя функции, в круглых скобках указывается список аргу- ментов функции (перечень используемых переменных), разделяемых запятыми. Затем вводится оператор присваивания, справа от которого записывается выра- жение, содержащее доступные системе операторы, операнды и функции с аргу- ментами, указанными в списке аргументов, например:

Fun(var) := evar + var3 circle(x,y) := x2 + y2

Функции, определенные с применением знака «:=», являются заданными ло- кально. Поэтому они должны быть заданы в документе до того, как будут ис- пользованы. С помощью знака «» можно задать функции пользователя гло- бально, в любом месте документа, в том числе в конце.

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

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

Fun(var) := evar + var3 - определение функции пользователя

Fun(5) = 273.413

- значение функции пользователя на скаляре

Использование ранжированной переменной:

 

 

 

z := −3, −1.. 4

Fun(z) =

 

Fun(3z − 7) =

 

5 − 2 Fun(z) =

 

 

 

 

 

 

 

 

-26.95

 

-4.096·103

 

58.9

 

 

-0.632

 

-1000

 

6.264

 

 

 

 

 

 

 

 

 

3.718

 

-63.982

 

-2.437

 

 

 

 

 

 

 

 

 

47.086

 

15.389

 

-89.171

 

 

 

 

 

 

 

 

23

Пример 2.1. Подсчитать значения функции f 1( p) =

5a 3

 

p

cos4 ( p)

при из-

1

a2

 

 

менении аргумента arg на диапазоне [-4; 4] с шагом 1,4, при произвольном зна- чении параметра a.

Решение.

Задаем значение параметра a:

a := 2

Определяем функцию пользователя:

f1(p) := 5a - 3p × cos (p)4 1 - a2

Аргумент arg определяем в виде ранжированной переменной

arg := −4, −4 + 1.4.. 4

Получаем таблицы вывода значений аргумента и функции:

 

arg =

 

f1(arg) =

 

 

 

 

 

 

-4

 

-3.43

 

 

 

 

 

 

 

-2.6

 

-3.58

 

 

 

 

 

 

 

-1.2

 

-3.339

 

 

 

 

 

 

 

0.2

 

-3.153

 

 

 

 

 

 

 

1.6

 

-3.333

 

 

 

 

 

 

 

3

 

-2.872

 

 

 

 

 

 

 

 

 

 

 

Обзор категорий встроенных функций системы Mathcad

Окно вставки функций (Insert Function) предоставляет доступ к расширен- ному набору встроенных функций системы Mathcad, разделенных более чем на 30 тематических групп (категорий), среди которых можно выделить:

All (Все) – алфавитный перечень всех встроенных функций Mathcad;

Complex Numbers (Комплексные числа) – функции для работы с ком- плексными данными;

Curve Fitting – функции аппроксимации данных;

Differential Equation Solving (Решение дифференциальных уравнений);

File Access (Доступ к файлам) – для работы с внешними файлами;

Finance (Финансы) – функции, предназначенные для финансово- экономических расчетов;

Interpolation and Prediction – функции интерполяции и предсказания;

Log and Exponential – логарифмы и экспоненциальная функция;

24

Number Theory / Combinatorics – комбинаторика и теория чисел;

Probability Density – функции плотности вероятности;

Probability Distribution – функции распределения вероятности;

Piecewise Continuous (Кусочная непрерывность) – функции кусочно- непрерывных зависимостей и условия;

Random Numbers – функции случайных чисел;

Regression and Smoothing − регрессия и сглаживание данных;

Solving – функции, предназначенные для решения уравнений, систем урав- нений и неравенств, поиска максимального и минимального значений;

Sorting – функции сортировки;

Statistics – функции математической статистики;

String – строковые функции;

Trigonometric – тригонометрические функции;

Truncation and Round-Off (Усечение и округление);

User defined – функции, определенные пользователем;

Vector and Matrix – функции для работы с векторами и матрицами.

Далее рассмотрим наиболее часто встречающиеся функции.

Краткий обзор основных встроенных функций

Рассмотрим сначала некоторые математические функции (рисунок 2.2).

Вкатегорию Complex Numbers включены следующие функции для работы

скомплексными числами:

Re(z) – действительная часть комплексного числа z;

Im(z) – мнимая часть комплексного числа z;

arg(z) – аргумент комплексного числа z (в радианах); Функции из категории Log and Exponential:

exp(z) – экспоненциальная функция, значение е (основание натурального логарифма) в степени z;

ln(z) – натуральный логарифм;

log(z) – десятичный логарифм числа z;

log(z, b) – логарифм числа z по основанию b.

 

 

i×

π

 

 

 

 

 

 

 

 

 

 

z :=

 

e 6

 

 

 

3

 

 

 

Re(z) = 1.5

ln(z) = 0.549 + 0.524i

- натуральный логарифм

Im(z) = 0.866

log(z) = 0.239 +

0.227i

- десятичный логарифм

arg(z) = 30deg

log(z, 2) = 0.792

+ 0.755i

- логарифм по основанию 2

 

 

 

 

 

 

 

 

Рисунок 2.2 − Функции для работы с комплексными числами и

логарифмические функции

25

Категория Number Theory / Combinatorics (Теория чисел / Комбинаторика) содержит 5 функций (рисунок 2.3):

combin(n, k) – возвращает число сочетаний из n элементов по k, где n k целые неотрицательные числа;

permut(n, k) – возвращает число размещений из n элементов по k, причем n k целые неотрицательные числа;

gcd(A, B, C,…) – возвращает наибольший общий делитель натуральных чисел A, B, C,…, или элементов вектора v;

lcm(A, B, C,…) – возвращает наименьшее общее кратное натуральных чи- сел A, B, C,…, или элементов вектора v;

mod(n, k) – возвращает остаток от деления n на k, причем аргументы могут быть действительными, а результат имеет тот же знак, что и n.

combin(6, 4) = 15

- число сочетаний из 6 по 4

permut(6, 4) = 360

- число размещений из 6 по 4

gcd (210, 150, 720) = 30

- наибольший общий делитель

lcm(210, 150, 120) = 4200

- наименьшее общее кратное

mod(20, 3) = 2

- остаток от деления 20 на 3

 

 

Рисунок 2.3 − Функции комбинаторики и теории чисел

В категории Piecewise Continuous (Кусочная непрерывность) находятся, в частности, функции знака и условия:

∙ sign(x) – функция знака (возвращает либо 0, если х = 0, либо 1, если х по- ложительно, либо минус 1, если х отрицательно);

∙ if(cond, x, у) – функция условия, возвращает выражение х, если условие cond истинно (не равно 0), и выражение у в остальных случаях;

 

ì2 cos

3 (a

3 )

, a £ 0;

 

ï

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Пример 2.2. Задать функцию

ï 4

 

a + 1

 

. Подсчитать значе-

f (a) = í

 

 

æ a ö

 

 

ïlog

2

 

 

 

3

ç

 

 

÷, a > 0

 

 

 

 

ï

 

 

 

è p ø

 

 

 

î

 

 

 

 

 

ния этой функции при изменении переменной b [− 0,5; 0,5] с шагом b = 0,2.

Решение.

Зададим функцию f(a): имя, аргумент в круглых скобках, знак присваивания. Далее вызываем окно вставки функции: Insert / Function, в списке справа вы- бираем функцию if и нажимаем OK. Появившийся шаблон с тремя пустующими

знакоместами if( , ,) заполняем следующим образом. На первом месте указы-

26

ваем условие a 0, на втором − выражение

 

 

2cos3 (a

3 )

, соответствующее дан-

 

 

 

 

 

 

 

 

 

4

 

a + 1

 

2

æ a

ö

 

 

ному условию, а на третьем − выражение log

3

ç

 

÷ , по которому подсчитывается

 

 

 

è p

ø

 

 

значение функции f(a), если указанное условие не выполняется (т. е. аргумент принимает значения a > 0). Получим

æ

2cos (a3)

3

 

æ a

 

ö2

ö

ç

 

 

 

÷

f(a) := ifç a ≤ 0,

 

 

 

 

 

, log

 

 

, 3

 

÷

4

 

 

 

 

è π

ø

è

a

+ 1

 

 

 

ø

 

 

 

 

 

 

 

Далее задаем ранжированную переменную b и получаем значения f(b):

b := −0.5, −0.3.. 0.5 f(b) =

2.323

2.184

2.053

9.846

4.571

2.799

Для генерации случайных чисел, в том числе и с определенными законами их распределения, применяются функции из категории Random Numbers. Из

них наиболее часто используется

·rnd(x) – функция генерации случайных чисел с равномерным распределе- нием в интервале [0, х].

При использовании тригонометрических и обратных тригонометрических функций из категории Trigonometric следует обратить внимание на то, что за- пись некоторых из них не совпадает с общепринятой у нас в стране:

·acos(z) – арккосинус;

·acot(z) – арккотангенс;

·asin(z) – арксинус;

·atan(z) – арктангенс;

·angle(x, y) – угол (в радианах) от 0 до 2π между положительным направле- нием оси х и радиус-вектором точки (х, у), причем х и у должны быть действи- тельными числами;

·atan2(x, у) – угол (в радианах) от минус π до π между осью х и отрезком прямой с конечными точками (0, 0) и (х, у), причем х и у должны быть действи- тельными числами.

27

В категории Truncation and Round-Off (Усечение и округление) находятся функции (рисунок 2.4):

ceil(z) – возвращает наименьшее целое число, большее либо равное z;

floor(z) – возвращает наибольшее целое, меньшее либо равное z;

round(z, n) – при n > 0 возвращает округленное значение z с точностью до n знаков после десятичной точки. При n < 0 возвращает округленное значение z с n цифрами слева от десятичной точки. При n = 0 или при использовании функ- ции без второго аргумента возвращает округленное до ближайшего целого зна- чение z;

trunc(z) – целая часть числа z.

x:= 4.726

y := −3.1934

ceil(x) = 5

ceil(y) = −3

floor(x) = 4

floor(y) = −4

trunc(x) = 4

trunc(y) = −3

round(x, 2) = 4.73

round(y, 3) = −3.193

 

 

Рисунок 2.4 − Функции округления

Функции для финансово-экономических расчетов

Наряду с уже рассмотренными функциями для решения задач комбинатори- ки система Mathcad включает категории функций для проведения статистиче- ских расчетов, обработки и анализа данных, которые требуют специального изучения. Остановимся кратко на категории Finance (Финансы), содержащей функции, предназначенные для расчетов следующих финансово-экономических параметров на основе заданных:

pv – сумма вклада в настоящее время;

fv – сумма вклада в будущем;

rate – процент начислений;

pmt – сумма начислений за период;

crate – фиксированный процент начислений за период;

nper – число периодов;

cnper – число составных периодов;

start – начало периода;

end – конец периода.

Некоторые финансово-экономические функции представлены ниже:

∙ cnper (rate, pv, fv) – число составных периодов для получения будущего значения вклада;

28

crate (nper, pv, fv) – фиксированный процент начислений за период для по- лучения будущего значения вклада;

cumint (rate, nper, pv, start, end, [type]) – совокупный процент платежа по займу в выбранный промежуток времени. Здесь и далее type = 0 (по умолча- нию), если сумма вносится в конце периода, type = 1 − если в начале;

cumprn (rate, nper, pv, stall, end, [type]) – совокупная сумма за составной период выбранного промежутка времени, которая платится по займу;

eff (rate, nper) – эффективный ежегодный процент платежа по займу;

fv (rate, nper, pmt, [[pv] , [type]]) – будущее значение вклада;

fvadj (prin, v) – будущее значение вклада при ряде составных процентных ставок, представленных в виде вектора v;

fvc(rate,v) – будущее значение вклада при фиксированной процентной ставке и регулярно поступающих (изымаемых) суммах вклада;

ipmt(rate, per, nper, pv, [[fv], [type]]) – процентная ставка за период;

nom (rate, nper) – номинальная процентная ставка;

nper(rate, pmt, pv, [[fv], [type]]) – число периодов;

npv(rate, v) – нынешнее значение вклада при регулярно поступающих (изымаемых) суммах вклада, представленных в виде вектора v;

pmt(rate, nper, pv, [[fv], [type]]) – плата за период займа;

pv (rate, nper, pmt, [[fv] , [type]] ) – вклад, который должен быть внесен в настоящее время;

rate (nper, pmt, pv, [[fv] , [type]]) – процентная ставка за период ренты.

Примечания

1 Получаемые суммы положительны, а выплачиваемые − отрицательны.

2 Возможны различия в определениях финансово-экономических параметров и рас- четных соотношений в Республике Беларусь и за рубежом, поэтому при применении на практике рассмотренных функций требуется проверка.

Пример 2.3. Для погашения кредита в 5000 , взятого на 4 года, ежемесячно выплачивается 90 . Под какой процент годовых взят кредит?

Решение.

Четыре года − это 4 · 12 периодов. Далее применим соответствующую функ- цию и вычислим годовую процентную ставку:

rate (4 × 12, -90, 5000, 0) = -0.582%

0.582 % × 12 = 6.984%

 

 

Итак, кредит взят под 7 % годовых.

Примечание − Для вывода результата в процентах знак «%» вводится в знакоместо, предназначенное для единиц измерения и расположенное справа от результата. Знакоме- сто отображается только в случае, если вычислительная область активна.

29

Построение графиков функций

Основные типы графиков в Mathcad

Основные типы графиков и инструменты для работы с ними находятся на палитре математических инструментов Graph (График) или в подменю Graph главного меню Insert (Вставка).

Имеется семь основных шаблонов графиков:

X-Y Plot (Декартов график) – двумерный график в декартовой прямо- угольной системе координат;

Polar Plot (Полярный график) – двумерный график в полярных координа-

тах;

Surface Plot (График поверхности) – график поверхности в трехмерном пространстве;

Contour Plot (Контурный график) – график линий одного уровня;

3D Scatter Plot (Точечный график) – множество точек в трехмерном про- странстве;

3D Bar Plot (Трехмерная гистограмма) – изображение функции в виде со- вокупности параллелепипедов в трехмерном пространстве;

Vector Field Plot (Векторное поле) – плоский векторный график.

Еще один тип графиков, не выведенный на палитру Graph − это Patch Plot, лоскутный график поверхности, который можно задать при форматировании трехмерных графиков.

Для форматирования графиков служат следующие команды из подменю Graph (График) пункта главного меню Format (Формат):

X-Y Plot – изменение формата двумерного графика в декартовой системе координат;

Polar Plot – изменение формата графика в полярных координатах;

3D Plot – изменение формата трехмерного графика.

Дополнительными инструментами более детального исследования графиков функций являются трассировка и масштабирование:

Trace (значок ) – отслеживание координат точек графика;

Zoom (значок ) – изменение размеров отдельных участков плоскости графика.

Эти инструменты можно найти на палитре Graph (График) или вызвать по- следовательным выбором из главного меню Format / Graph / Trace… (или Zoom…) – Формат / График / Трассировка… (или Масштаб…).

30