Научная электронная библиотека
Монографии, изданные в издательстве Российской Академии Естествознания

1.5. Некоторые стандартные функции MathCAD

Рассмотрим некоторые стандартные функции системы MathCAD. Введем специальные обозначения для аргументов функций. Пусть первый символ имени аргумента обозначает его тип:

M – квадратная матрица;

V – вектор (матрица из одного столбца);

A – произвольная матрица;

S – симметричная матрица;

G – произвольная матрица или число;

X – вектор или число;

Z – комплексная матрица или число;

z – комплексное число;

прочие символы – скалярные величины.

Экспоненциальные и логарифмические функции

exp(X) – экспонента от X;

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

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

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

Гиперболические и тригонометрические (прямые и обратные) функции

sin(X), cos(X), tan(X), cot(X), sec(X), csc(X) – соответственно синус, косинус, тангенс, котангенс, секанс, косеканс от X, причем аргументы указываются в радианах;

sinh(X), cosh(X), tanh(X), coth(X), sech(X), csch(X) – аналогичные гиперболические функции;

asin(z), acos(z), atan(z), acot(z), asec(z), acsc(z) – соответственно арксинус, арккосинус, арктангенс, арккотангенс, арксеканс, арккосеканс от z.

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

Re(Z), Im(Z) – соответственно вещественная и мнимая части комплексного числа Z;

arg(z) – аргумент комплексного числа z (в радианах).

Матричные функции

length(V) – возвращает число элементов вектора V;

cols(A) – возвращает число столбцов матрицы A;

rows(A) – возвращает число строк матрицы A;

matrix(m, n, f) – матрица размером mxn, значения элементов матрицы определяются f – функцией f (i, j) от двух переменных (номера строки и номера столбца). Эта функция должна быть предварительно определена пользователем;

identity(n) – единичная матрица n×n;

tr(M) – след матрицы M (сумма элементов главной диагонали);

rank(A) – ранг матрицы M;

norme(M) – эвклидова норма матрицы M, то есть корень квадратный из суммы квадратов всех элементов;

eigenvals(M) – вектор, элементы которого являются собственными числами матрицы M;

eigenvecs(M) – матрица, состоящая из нормализованных собственных векторов матрицы M;

cholesky(S) – возвращает нижнетреугольную матрицу L – результат разложения Холецкого вида L∙LT = S;

lu(M) – возвращает матрицу размера n×3n, состоящую из трех соединенных матриц P, L, U, являющихся результатом LU-разложения вида P∙M = L∙U.

Пример вычислений с матричными функциями: нахождение собственного числа путем решения матричного уравнения det(M – λE) = 0 и с помощью функции eigenvals.

Элементы статистического анализа данных

gmean(G1,G2,G3…) – среднее геометрическое аргументов;

mean(G1,G2,G3…) – среднее арифметическое аргументов;

var(G1,G2,G3…) – дисперсия;

stdev(G1,G2,G3…) – среднеквадратичное отклонение.

Дискретные преобразования

fft(V1), ifft(V2) – прямое и обратное быстрые преобразования Фурье над вещественными данными. V1 – вектор из 2m элементов, V2 – вектор из 1 + 2m–1 элементов, m > 2;

cfft(A), icfft(A) – прямое и обратное преобразования Фурье над вещественными и комплексными векторами и матрицами;

wave(V), iwave(V) – прямое и обратное вейвлет-преобразования, V – вектор из 2m элементов, m – целое число.

Аппроксимация, интерполяция и экстраполяция

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

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

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

Применяются следующие функции MathCAD:

regress(VX,VY,k) – возвращает вектор данных, используемый для поиска интерполирующего полинома (a0 + a1x + a2x2 + ... + akxk) порядка k. Полином должен описывать данные, состоящие из упорядоченных значений аргумента (VX) и соответствующих значений неизвестной функции (VY), то есть график полинома должен проходить через все точки, заданные координатами (VX, VY), или максимально близко к этим точкам;

interp(VS,VX,VY,x) – возвращает интерполированное значение неизвестной функции при значении аргумента x. VS – вектор значений, который вернула функция regress. VX,VY – те же данные, что и для regress. Функции interp и regress используются в паре;

predict(V,m,n) – возвращает вектор из n предсказанных значений на основании анализа m предыдущих значений из вектора V. Предполагается, что значения функции в векторе V были получены при значениях аргумента, взятых последовательно, с одинаковым шагом. Используется алгоритм линейной предикции. Наиболее целесообразно использовать predict для предсказания значений по данным, в которых отмечены колебания.

Для интерполяции система MathCAD использует подход, основанный на применении метода наименьших квадратов.

Примеры интерполяции и экстраполяции:

1.5.1. Пусть заданы координаты пяти точек (1; 1), (2; 2), (3; 3), (4; 2), (5; 3), представляющих результаты измерения значений некоторой неизвестной функции при различных значениях x. Необходимо подобрать интерполирующую функцию (гладкую кривую), проходящую через заданные точки.

1.5.2. Дана функция y(i) = e–i/10∙sin (i). Известны значения данной функции при i = 0, 1, …, 10. Основываясь на десяти последних значениях, необходимо предсказать последующие десять значений.

Решения показаны на рис. 19.

а б

Рис. 19. Решения в MathCAD первой (а) и второй (б) задач

Нахождение корней полинома

polyroots(V) – возвращает вектор, содержащий все корни полинома a0 + a1x + a2x2 + ... + akxk, заданного вектором-столбцом коэффициентов

Прочие функции

max(G1,G2,…) – максимальное значение среди аргументов;

min(G1,G2,…) – минимальное значение среди аргументов;

if(a,b,c) – возвращает b, если a ≠ 0, иначе возвращает c;

sign(a) – возвращает –1, 0 или 1 в зависимости от знака числа a.

На рис. 20 показан пример применения функции if.

Рис. 20. Функция, вычисляющая факториал


Предлагаем вашему вниманию журналы, издающиеся в издательстве «Академия Естествознания»
(Высокий импакт-фактор РИНЦ, тематика журналов охватывает все научные направления)

«Фундаментальные исследования» список ВАК ИФ РИНЦ = 1.074