Функции обработки экспериментальных данных в Mathcad

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

В Mathcad имеется множество функций, направленных на решение задачи обработки данных. Основные функции представлены в табл. 14.3. В этой же таблице представлен ряд других функций, в частности функции теории вероятности и математической статистики.

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

Более простым способом ввести данные в Mathcad является вставка таблицы, осуществляемая через меню ВставитьДанныеТаблица или кнопкой стандартной панели инструментов. В рабочий документ будет вставлено небольшое окошко, под которым помещается таблица практически бесконечного размера. Около левого верхнего угла таблицы располагается знакоместо, в которое необходимо ввести имя табличной переменной. После вставки таблицы можно набирать данные в ней, прокручивая ее полосы прокрутки, можно вставить данные в нее через буфер обмена. Поскольку таблица в Mathcad является способом отображения матрицы, для использования ее данных в выражениях следует записывать присвоенное таблице имя с нижними индексами. Часто удобнее использовать оператор выделения столбца таблицы (кнопка панели инструментов «Матрица»). Выделенный при помощи этого оператора столбец таблицы является вектором, большинство же функций обработки данных предполагают использовать именно векторы. Если функция требует в качестве аргумента матрицу, число столбцов которой не совпадает с числом столбцов таблицы, помогут функции augment и submatrix (см. предыдущую Лабораторную работу).

Меню ВставитьДанныеВвод файла… вставляет в документ конструкцию, которая служит для импортирования данных напрямую из файла. Поддерживаются файлы разных типов, включая таблицу Microsoft Excel и простой текст. После вставки конструкции присваивается имя, и, в дальнейшем, с точки зрения Mathcad, она ведет себя как матрица со значениями. Изменения, вносимые в файл, приводят к автоматическому обновлению элементов матрицы, и, как следствие, к пересчету листа.

Через меню ВставитьДанныеВывод файла… в рабочий лист можно вставить такую же конструкцию, служащую для вывода данных вовне. Если присвоить элементам этой конструкции (для нее также требуется имя) какие-либо значения, они автоматически будут записаны в файл. Имя файла и его тип указываются в специальном диалоговом окне в момент вставки конструкции в документ.

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

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

Табл. 14.3

Функция Описание
Интерполяция, экстраполяция и сглаживание экспериментальных данных, поиск уравнений регрессии
slope(vx,vy) Возвращает величину наклона (коэффициент k) линии егресссии Вектор vx содержит x- координаты точек, vy –соответствующие им y -координаты
intercept(vx,vy) Возвращает величину смещения (коэффициент b) линии регрессии
line(vx, vy) Возвращает вектор, содержащий коэффициенты (b; k) для линии регрессии в форме b+kx. Коэффициенты по отдельности вычисляет предыдущие функции
medfit(vx, vy) Возвращает вектор, содержащий коэффициенты (b; k) для линии медианной регрессии в форме b+kx. Коэффициенты по отдельности вычисляет предыдущие функции
linterp(vx,vy,x) Интерполирует данные из векторов vx(x-координаты точек, обязательно в порядке возрастания) и vy(y-координаты точек) ломаной, состоящей из отрезков прямой. Возвращает координату y точки, имеющей координату x и принадлежащей отрезку ломаной
interp(vs,vx,vy, x) Создает функцию, основываясь на векторе vs, вычисленном одной из функций регрессии. Векторы vx и vy являются вводными данными для функции. x является именем аргумента результирующей функции
regress(vx,vy, k) Возвращает вектор коэффициентов регрессии полинома k-й степени, интерполирующих точки с координатами из векторов vx и vy. Именно этот вектор является аргументом vs функции interp
loess(vx,vy,span) Возвращает вектор коэффициентов регрессии полиномов 2-й степени, интерполирующих точки с координатами из векторов vx и vy. Именно этот вектор является аргументом vs функции interp. Чем меньше величина span, тем больше различных полиномов объединит в себе итоговый вектор и тем сложнее будет итоговая функция
cspline(vx,vy) Возвращает вектор коэффициентов регрессии для построения сплайна, интерполирующего точки с координатами из векторов vx и vy. Именно этот вектор является аргументом vs функции interp Кубический сплайн
pspline(vx,vy) Параболический сплайн
lspline(vx,vy) Линейный сплайн
expfit(vx,vy,vg) Возвращает вектор коэффициентов (a;b;c)регрессии для построения функции определенного вида, интерполирующих точки с координатами из векторов vx и vy. Итоговую функцию можно восстановить вручную, умножив вычисленные коэффициенты регрессии на соответствующие функциональные множители. Вектор vgсодержит значения угадывания для коэффициентов (a;b;c) ; vg –необязательный
lgsfit(vx,vy,vg)
sinfit(vx,vy,vg)
logfit(vx,vy,vg)
lnfit(vx,vy)
pwrfit(vx,vy,vg)
linfit(vx,vy,F) Возвращает вектор коэффициентов регрессии для построения линейной комбинации функций произвольного вида, интерполирующих точки с координатами из векторов vx и vy. Итоговую функцию можно восстановить вручную, умножив вычисленные коэффициенты регрессии на соответствующие множители-функции. Fсодержит одну или несколько (в виде вектора) функций, из которых составляется итоговая
interp(vs, Mxy,Mz, v) Создает функцию, основываясь на векторе vs, вычисленном одной из функций регрессии. Массив Mxy и вектор Mz являются вводными данными для функции. м является вектором из имен аргументов результирующей функции
regress(Mxy, vz, k) Аналогично функциям regress и loessдля одной переменной. Матрица Mxyразмером mx2 содержит координаты xи y точек, а вектор vz размером m содержит соответствующие координаты z
loess(Mxy, vz,span)
cspline(Mxy,Mz) Аналогично функциям cspline, pspline, lsplineдля одной переменной. Матрица Mxyразмером mx2 содержит координаты xи y точек, а матрица Mzразмером mxm содержит соответствующие координаты z
pspline(Mxy,Mz)
lspline(Mxy,Mz)
medsmooth(vy, n) Возвращает вектор такого же размера, что и vy, полученный путем сглаживания вектора vy методом скользящей медианы. n – нечетное целое число. Чем оно больше, тем сильнее сглаживание
ksmooth(vx,vy,b) Возвращает вектор такого же размера, что и vxи vy, полученный путем сглаживания кривой, заданной векторами vxи vy с использованием формулы Гаусса. b должно быть соизмеримо с интервалом между точками. Чем оно больше, тем сильнее сглаживание
supsmooth(vx, vy) Возвращает вектор такого же размера, что vxи и vy, полученный путем кусочно-линейного сглаживания методом наименьших квадратов кривой, заданной векторами vxи vy.
predict(v,m,n) Возвращает вектор из n предсказанных значений основанных на m последовательных элементах в векторе v
Функции теории вероятности
Бета-распределение, характер задается параметрами s1 и s2
rbeta(m,s1,s2) Возвращает вектор m случайно распределенных величин
dbeta(x,s1,s2) Возвращает плотность вероятности распределения в точке x
pbeta(x,s1,s2) Возвращает значение функции распределения в точке x
qbeta(p,s1,s2) Возвращает значение обратной функции распределения для вероятности p
Распределение Коши, характер задается коэффициентом сдвига l и масштаба s
rcauchy(m,l,s) Возвращает вектор m случайно распределенных величин
dcauchy(x,l,s) Возвращает плотность вероятности распределения в точке x
pcauchy(x,l,s) Возвращает значение функции распределения в точке x
qcauchy(p l,s) Возвращает значение обратной функции распределения для вероятности p
Гамма-Распределение, характер задается коэффициентом масштаба s
rgamma(m, s) Возвращает вектор m случайно распределенных величин
dgamma(x, s) Возвращает плотность вероятности распределения в точке x
pgamma(x,s) Возвращает значение функции распределения в точке x
qcauchy(p, l,s) Возвращает значение обратной функции распределения для вероятности p
Нормальное распределение, характер задается коэффициентами mиs
rnorm(m,m,s) Возвращает вектор m случайно распределенных величин
dnorm(x,m,s) Возвращает плотность вероятности распределения в точке x
pnorm(x,m,s) Возвращает значение функции распределения в точке x
cnorm(x) Возвращает значение функции распределения в точке xдля случая стандартного распределения
qnorm(p,m,s) Возвращает значение обратной функции распределения для вероятности p
Распределение Стьюдента, характер задается числом степеней свободы d
rt(m, d) Возвращает вектор m случайно распределенных величин
dt(x, d) Возвращает плотность вероятности распределения в точке x
pt(x,d) Возвращает значение функции распределения в точке x
qt(p,d) Возвращает значение обратной функции распределения для вероятности p
Распределение Вейбулла, характер задается параметром s
rweibull(m, s) Возвращает вектор m случайно распределенных величин
dweibull(x, s) Возвращает плотность вероятности распределения в точке x
pweibull(x, s) Возвращает значение функции распределения в точке x
qweibull(p, s) Возвращает значение обратной функции распределения для вероятности p
Функции математической статистики
hist(intvls,data) Возвращает вектор, представляющий частоту, с которой значения в матрице dataпопадают в интервалы intvls. intvls может быть вектором границ интервалов, либо целым числом, показывающим количество интервалов равной длины, на которые делится область data
histogram(intvls,data) Возвращает матрицу с двумя колонками. Первая колонка содержит средние точки интервалов. Вторая колонка идентична результату функции hist(intvls, data)
cvar(A,B) Возвращает ковариацию элементов массивов A и B. Массивы должны иметь одинаковый размер
corr(A,B) Возвращает коэффициент корреляции Пирсона для элементов массивов A и B. Массивы должны иметь одинаковый размер
mode(A,B,C,...) Возвращает элементы массивов A, B, C,... которые встречаются наиболее часто, где A, B, C,... массивы или скалярные величины. Если значение в A, B, C,... которое появляется чаще других, выявить невозможно, появится сообщение об ошибке
skew(A,B,C,...) Возвращает коэффициент асимметрии элементов A, B, C,... где A, B, C,... массивы или скалярные величины. Возвращает скаляр. Определена для данных, у которых стандартное отклонение не равно 0
mean(A,B,C,…) Вычисляет среднее арифметическое величин A, B, C (аргументы – неотрицательные безразмерные скалярные числа или массивы из таких чисел)
gmean(A,B,C,…) Вычисляет среднее геометрическое величин A, B, C (аргументы – неотрицательные безразмерные скалярные числа или массивы из таких чисел)
hmean(A,B,C,…) Вычисляет среднее гармоническое величин A, B, C (аргументы – неотрицательные безразмерные скалярные числа или массивы из таких чисел)
median(A,B,C,...) Вычисляет медиану величин A, B, C (аргументы – скалярные числа или массивы из таких чисел)
var(A,B,C,...) Возвращает смещенную дисперсию элементов A, B, C,... где A, B, C,... массивы или скаляры. Возвращает скаляр
Var(A,B,C,...) Возвращает дисперсию элементов A, B, C,... где A, B, C,... массивы или скаляры. Возвращает скаляр.
stdev(A,B,C,...) Возвращает смещенное среднеквадратическое отклонение элементов A, B, C,... где A, B, C,... массивы или скаляры. Возвращает скаляр
Stdev(A,B,C,...) Возвращает стандартное (несмещенное) отклонение элементов A, B, C... где A, B, C,... массивы или скаляры. Возвращает скаляр
kurt(A,B,C,...) Возвращает коэффициент эксцесса элементов A, B, C,... где A, B, C,... являются массивами или скалярами. Возвращает скаляр. Все значения A, B, C,... должны быть больше нуля
       

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




Подборка статей по вашей теме: