Какая встроенная в mathcad переменная управляет порядком нумерации элементов массива
При вычислении большого массива изначально отображаются только первые 12 строк и столбцов массива. На наличие в массиве других элементов указывают три точки в верхнем левом или нижнем правом углах массива. Чтобы просмотреть скрытые элементы, измените размер массива. Кроме того, можно просматривать индексы строки и столбца. Нумерация индексов элементов массива по умолчанию начинается с нуля. Начальное значение индекса можно изменить путем изменения встроенной переменной ORIGIN .
• Для ORIGIN=0 последний индекс вектора равен length(v) -1 .
• Переменная-диапазон, которая начинается со значения, большего ORIGIN , или заканчивается значением, меньшим длины массива, не охватывает все элементы массива.
• Значение переменной ORIGIN определяет, какие элементы массива могут существовать. Например, если используются настройки по умолчанию, не может существовать элемент массива с индексом –1. При вычислении выражения M -1 отобразится сообщение об ошибке.
Дополнительная информация
Системную переменную ORIGIN можно рассматривать как скрытый аргумент некоторых функций и операторов. В зависимости от значения ORIGIN такие функции и операторы возвращают разные результаты.
Следующие функции явным образом требуют указания индекса строки или столбца.
• Функции поиска — hlookup и vlookup .
• Функции сортировки — csort и rsort .
• Функции обработки изображений — subcolor , dilate, gray_dilate, erode и gray_erode .
Следующие функции не требуют указания индекса строки или столбца, но тем не менее зависят от значения ORIGIN .
• Антисимметричная тензорная функция ε .
Следующие операторы требуют указания индекса строки или столбца, и их результат зависит от значения ORIGIN .
Изменение нумерации элементов в матрице
Найти сумму элементов на пересечении строк четной нумерации и столбцов нечетной нумерации в двумерном массиве
Здравствуйте. Помогите,пожалуйста,найти сумму элементов на пересечении строк четной нумерации и.
Программное изменение нумерации в 8.3
Здравствуйте, столкнулся с такой проблемой. Платформа 8.3 Бухгалтерия проф. Задача была поставлена.
Автоматическое изменение нумерации на единицу
Вобщем предстала такая проблемка. На предприятии печатаются паспорта для приборов, каждый со своим.
Изменение нумерации объекта Задачи
Здравствуйте. Создан объект Задачи. В нем при создании пользователи ввели номер вручную. Список.
566 / 541 / 80
Регистрация: 29.10.2010
Сообщений: 638
Порядком нумерации элементов в массивах управляет встроенная переменная ORIGIN. По умолчанию ORIGIN=0, т.е. нумерация начинается с нуля.
Если определить ORIGIN:=1, то нумерация будет мдти с единицы.
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь
Написать функцию, которая осуществляет изменение порядка элементов в матрице на обратной
Написать функцию, которая осуществляет изменение порядка элементов в матрице на обратной: в строке.

В матрице К размером m*n найти в каждом столбце произведение отрицательных элементов и количество нулевых элементов в матрице
В матрице К размером m*n найти в каждом столбце произведение отрицательных элементов и количество.
Изменение упорядочения в матрице
Добрый вечер! Итак, проблема в следующем. В matlab’e имеется встроенная функция по формированию.
Изменение знака на противоположный, в матрице
Нужно в каждом столбце заменить максимальный элемент на противоположный (если -1 максимальный, то.
Математический пакет MahCad
![]()
Работа с MathCad
№13.-Массивы (матрицы)
Существует несколько способов создания массива:
ввод всех элементов вручную с помощью команды Insert Matrix;
определение отдельных элементов массива;
создание таблицы данных и ввод в нее чисел;
применение встроенных функций создания массива;
создание связи с другим приложением, например, Excel или MATLAB;
чтение из внешнего файла данных;
импорт из внешнего файла данных.
Для ввода массива обычно
используется кнопка панели
инструментов.
Затем, в появившемся диалоговом окне
нужно ввести количество строк и
столбцов.
3.
Работа с MathCad
Массивы
2
3
8
a
b c d
0 1 2 3
A 1 2 3 4
2 3 4 5
– вектор–столбец с числовыми данными;
– вектор–строка с символьными данными;
– матрица с числовыми данными;
1
0
sin( 1)
a b
1 – матрица с элементами различного типа.
1
0
1
cos(1)
4.
Работа с MathCad
-№13.Основные функции при работе с матрицами
matrix (m, n, f) — создает и заполняет матрицу размерности mxn, элемент которой,
расположенный в i-ой строке, j-м столбце, равен значению f(i, j) функции f(x, y);
diag (v) – создает диагональную матрицу, элементы главной диагонали которой
хранятся в векторе v;
identity (n) – создает единичную матрицу порядка n;
augment (A, B) – формирует матрицу, в первых столбцах которой содержится
матрица А, а в последних матрица В (матрицы А и В должны иметь одинаковое
число строк);
stack (A, B) – формирует матрицу, в первых строках которой содержится
матрица А, а в последних матрица В (матрицы А и В должны иметь одинаковое
число столбцов);
submatrix (A, ir, jr, ic, jc) – формирует матрицу, которая является блоком
матрицы А, расположенным в строках с ir по jr и в столбцах ic jc, ir jr, ic jc
Номер первой строки (столбца) матрицы хранится в переменной ORIGIN.
5.
Работа с MathCad
Решение уравнений
Для решения уравнений и
символьных выражений
обычно используется кнопка
панели инструментов.
3
2
3
2
( x 2) ( x 3) solve x
5
2
Щелкните по кнопке решений уравнений solve в панели символьных
вычислений.
Введите в помеченной позиции слева от ключевого слова solve (решить)
выражение для левой части уравнения, а в позиции справа от solve – имя
переменной, относительно которой нужно решить уравнение (если переменная
одна, ее можно не вводить).
Нажмите (стрелку) на панели символьных вычислений.
Щелкните по свободному месту в рабочем документе (нажмите Enter).
Результат – значение корня уравнения – будет отображен в рабочем документе
справа от стрелки.
6.
Работа с MathCad
Решение систем уравнений
Для решения систем алгебраических уравнений необходимо:
Ввести с клавиатуры ключевое слово Given (дано)
Ввести правее и ниже ключевого слова – левую часть первого уравнения
системы.
Далее – символьный знак равенства (комбинация клавиш ctrl+=) и правую
часть уравнения. То же можно сделать и на панели инструментов:
Аналогично введите остальные два
уравнения системы
Правее и ниже последнего уравнения
системы ввести имя функции Find (найти),
перечислить в скобках имена переменных,
значения которых нужно вычислить .
В панели символьных вычислений нажать
(стрелку).
Given
2
x ( z 1) 2 z ( x z)
1 x2 4 y 2 2 x2
y 2 ( z 2) z
0
0 1
Find ( x y z) 2 3
0 1
0
0
7.
Работа с MathCad
Решение систем уравнений матричным способом
Система n алгебраических уравнений с n неизвестными в матричном виде
будет выглядеть так:
A X=B
a11 a12
a21 a22
A :
. .
a
n1 an 2
Необходимо найти х
. a1n
b1
x1
. a2 n
b2
x2
B : X :
. .
.
.
b
x
. ann
n
n
X = A-1 B
Для решения систем уравнений матричным способом необходимо:
Ввести матрицу А
Ввести вектор В (правую часть).
Ввести выражение X = A-1* B (для ввода степени
использовать команду на панели инструментов
«матрица»)
Вывести Х на экран
8.
№14,15,16-Работа с MathCad
Вычислительные операторы
-дифференцирование и интегрирование;
производная;
N-я производная
определенный интеграл;
неопределенный интеграл
градиент
— суммирование и вычисление произведения;
сумма;
произведение;
сумма ранжированной переменной;
произведение ранжированной переменной.
— пределы;
двусторонний;
левый;
правый.
9.
Работа с MathCad
Интегрирование
Интегрирование в MathCAD реализовано в виде
вычислительного оператора. Допускается
вычислять интегралы от скалярных функций в
пределах интегрирования, которые также должны
быть скалярами.
Чтобы вычислить определенный интеграл, следует ввести оператор
интегрирования, и напечатать его обычную математическую форму в документе.
Символ интеграла включает несколько местозаполнителей, в которые нужно
ввести нижний и верхний интервалы интегрирования, подынтегральную функцию и
переменную интегрирования.
Чтобы получить результат интегрирования, следует ввести знак равенства или
символьного равенства. В первом случае интегрирование будет проведено
численным методом, во втором — в случае успеха, будет найдено точное значение
интеграла с помощью символьного процессора MathCAD.
10.
Работа с MathCad
Дифференцирование
С помощью MathCAD можно вычислять производные
скалярных функций любого количества аргументов, от
0-го до 5-го порядка включительно.
Чтобы вычислить производную, следует ввести оператор дифференцирования, и в
появившихся местозаполнителях ввести функцию, зависящую от аргумента х, т. е. f
(х), и имя самого аргумента х. В остальном операции аналогичны интегрированию
MathCAD позволяет численно определять производные высших порядков, от 0-го
до 5-го включительно. Чтобы вычислить производную функции f(х) N-го порядка в
точке х, нужно проделать те же самые действия, что и при взятии первой
производной, за тем исключением, что вместо оператора производной необходимо
применить оператор N-й производной. Чтобы вычислить производную порядка
выше 5-го, следует последовательно применить несколько раз оператор N-й
производной.
Производные по разным аргументам называются частными.
11.
Работа с MathCad
Функции работы с комплексными числами
Re(z) — действительная часть комплексного числа z;
im(z) — мнимая часть комплексного числа z;
arg(z) — аргумент комплексного числа z;
csgn(z) — функция комплексного знака числа (возвращает либо 0, еслиz=0;
либо 1, если Re(z)>0, или если Re(z)=0 и Im(z)>0; либо -1 — в остальных случаях);
signum(z) — возвращает 1, если z=0, и z/|z| — в остальных случаях;
z — действительное, мнимое или комплексное число.
Примеры комплексных чисел:
i
1
Степень числа.
Zbc 8 6i
120
Ubc 380 e
180
i
12.
Работа с MathCad
Логарифмы и экспонента
exp(z) — значение е (основание натурального логарифма) в степени z;
ln(z) — натуральный логарифм;
log(z) -десятичный логарифм;
log(z,b) — логарифм z по основанию b.
Тригонометрические функции
acos(z) -арккосинус;
acot(z) -котангенс;
acsc(z) — арккосеканс;
angle (х, у) — угол между точкой (х,у) и осью ох;
asec(z) -арксеканс;
asin(z) — арксинус;
atan(z) -арктангенс;
atan2(x,y) — угол, отсчитываемый от оси ох до точки (х,у);
cos(z) — косинус;
cot(z) -котангенс;
csc(z) — косеканс;
sec(z) — секанс;
sin(z) — синус;
tan(z) — тангенс;
z — безразмерный скаляр.
13.
Работа с MathCad
Функции сокращения и округления
ceil(x) — наименьшее целое, не меньшее х;
floor (х) — наибольшее целое число, меньшее или равное х;
round (х,n) — при n>0 возвращает округленное значение х с точностью до n
знаков после десятичной точки, при n слева от десятичной точки, при n=о — округленное до ближайшего целого
значения х;
trunc(x) — целая часть числа;
х — действительный скаляр или целое число.
Функции преобразования координат (Vector and Matrix)
xy2pol (х,у) — преобразование прямоугольных координат в полярные;
роl2ху(r,q) — преобразование полярных координат в прямоугольные;
angle (х, у) — угол между точкой (х,у) и осью ох;
xyz2cyl(x,y,z) — преобразование прямоугольных координат в цилиндрические;
cyl2xyz(r,q,f) — преобразование цилиндрических координат в прямоугольные;
xyz2sph(x,y,z) — преобразование прямоугольных координат в сферические;
sph2xyz (r,q,f) — преобразование сферических координат в прямоугольные;
— х, у — прямоугольные координаты на плоскости;
— х, у, z — прямоугольные координаты в пространстве;
— r, q — полярные координаты на плоскости;
— r, q, f — цилиндрические координаты;
— r, q, f — сферические координаты.
14.
Работа с MathCad
Комментарий к лабораторной работе №4
Степень числа.
1. Фазные напряжения:
120
Ubc 380 e
i
180
ЛЮБОЕ ВЫРАЖЕНИЕ
ОБЯЗАТЕЛЬНО ИМЕЕТ ЛЕВУЮ
ЧАСТЬ, ЗНАК РАВЕНСТВА, И
ПРАВУЮ ЧАСТЬ .
2. Сопряженные токи:
Iab 30.4 22.8i
Iab 30.4 22.8i
Iab 30.4 22.8i
Iab 30.4 22.8i
Если выражение состоит из двух
чисел, то второе ОБЯЗАТЕЛЬНО
МНИМОЕ.
Фазный ток
Сопряженный ток
Знак мнимой части
меняется на
противоположный
15.
Работа с MathCad
Комментарий к лабораторной работе №4
Или можно так:
i
1
Iab 30.4 22.8i
Фазный ток
Iab Re( Iab ) Im( Iab ) i
Сопряженный ток
Iab 30.4 22.8i
3. Мощности:
Pbc Re( Sbc)
Qbc Im( Sbc)
активная мощность ветви
реактивная мощность ветви (если отрицательна, то
нагрузка имеет емкостный характер, и положительна,
если индуктивный)
16.
Работа с MathCad
Символьные вычисления в MathCAD
Системы компьютерной алгебры снабжаются специальным процессором для
выполнения аналитических (символьных) вычислений. Его основой является ядро,
хранящее всю совокупность формул и формульных преобразований, с помощью
которых производятся аналитические вычисления. Чем больше этих формул в
ядре, тем надежней работа символьного процессора и тем вероятнее, что
поставленная задача будет решена, разумеется, если такое решение существует в
принципе (что бывает далеко не всегда).
Символьные вычисления в MathCAD
могут быть реализованы тремя
способами:
C использование команд подменю позиции
Symbolics (Символика) главного меню.
С использованием команд панели
Symbolic, включаемой кнопкой на
математической панели инструментов.
С использованием команды Optimization
позиции главного меню Math
17.
Работа с MathCad
Возможности символьного процессора MathCAD
Операции, относящиеся к работе символьного процессора, содержатся в подменю
позиции Symbolics (Символика) главного меню.
Чтобы символьные операции выполнялись, процессору необходимо указать, над
каким выражением эти операции должны производиться, т. е. надо выделить
выражение. Для ряда операций следует не только указать выражение, к которому
они относятся, но и наметить переменную, относительно которой выполняется та
или иная символьная операция.
Особенности при работе с командами меню Symbolics
Для символьных вычислений выражения необходимо указывать явно.
Например, недопустимо вводить некоторую функцию пользователя F(x) и пытаться
найти ее производные или интеграл.
Иногда результат вычислений содержит встроенные в систему специальные мат.
функции; в этом случае результат помещается в буфер обмена.
При дальнейшем использовании результатов символьных вычислений
необходимо с помощью операций Copy и Past присвоить этот результат некоторой
переменной или функции.
Если операция невыполнима — система выводит сообщение об ошибке или
просто повторяет выделенное выражение (без изменений)
Визуализация процесса вычислений не очень наглядна (сразу выводится ответ).
18.
Работа с MathCad
Команды панели Symbolic (символы)
Команда Функция
Пример
Символьное
вычисление
Символьное
вычисление с
ключевым
словом
assume — вводное слово для приведенных
далее определений; real — для var=real
означает вещественное значение var;
Дополнительные
RealRange — для var=RealRange(a,b)
Modifier
модификаторы
означает принадлежность вещественной var к
интервалу [а,b]; trig — задает направление
тригонометрических преобразований.
float
complex
Численное
вычисление
Комплексное
вычисление
19.
Работа с MathCad
Команды панели Symbolic (символы)
Команда Функция
assume
solve
Символьное
вычисление с
некоторыми
предположениями
Решение
уравнения
(системы
уравнений)
относительно
переменной
(переменных)
simplify
Упрощение
выражений
substitute
Замена
переменной
factor
Разложение на
множители
Пример
20.
Работа с MathCad
Команды панели Symbolic (символы)
Команда Функция
expand
Перемножение
степеней и
произведений
coeffs
Определение
коэффициентов
полинома
collect
Группировка
слагаемых по
степеням
переменной
series
Разложение в ряд
Тейлора или
Лорана
parfac
Разложение на
элементарные
дроби
fourier
Преобразование
Фурье
Обратное
invfourier преобразование
Фурье
Пример
21.
Работа с MathCad
Команды панели Symbolic (символы)
Команда Функция
lарlасе
Преобразование
Лапласа
Обратное
invlaplace преобразование
Лапласа
ztrans
invztrans
Z-преобразование
Обратное Zпреобразование
MT
Транспонирование
матрицы
M-1
Нахождение
обратной матрицы
|M|
Нахождение
определителя
матрицы
Пример
22.
Работа с MathCad
Символьные операции с выделенными выражениями
Evaluate (Вычислить)
преобразовать выражение с выбором вида преобразований из
подменю
Simplify (Упростить)
упростить выделенное выражение с выполнением таких
операций, как сокращение подобных слагаемых, приведение
к общему знаменателю, использование основных
тригонометрических тождеств и т. д.
Expand (Разложить по
степеням)
раскрыть выражение [например, для (Х+ Y) • (Х- Y) получаем X2У2]
Factor (Разложить на
множители)
разложить число или выражение на множители [например,
Х2- У2 даст (Х+ Y) • (Х- Y)]
Collect (Разложить по
подвыражению)
собрать слагаемые, подобные выделенному выражению, которое
может быть отдельной переменной или функцией со своим
аргументом (результатом будет выражение, полиномиальное
относительно выбранного выражения)
Polynomial Coefficients
(Полиномиальные
коэффициенты)
найти коэффициенты полинома по заданной переменной,
приближающего выражение, в котором эта переменная
использована
23.
Работа с MathCad
Evaluate (Вычислить).
Эта операция содержит подменю со следующими командами:
Evaluate Symbolically [Shift+F9] (Вычислить в символах) — выполнить
символьное вычисление выражения;
Floating Point Evaluation. (С плавающей точкой) — выполнить
арифметические операции в выражении с результатом в форме числа с
плавающей точкой;
Complex Evaluation (В комплексном виде) — выполнить преобразование с
представлением в комплексном виде.
Пример использования команды Evaluate Symbolically
Слева показаны исходные выражения,
подвергаемые символьным преобразованиям, а
справа — результат этих преобразований.
24.
Работа с MathCad
Simplify(Упростить)
Эта операция позволяет упрощать математические выражения, содержащие
алгебраические и тригонометрические функции, а также выражения со степенными
многочленами (полиномами).
Упрощение означает замену более сложных фрагментов выражений на более
простые. Приоритет тут отдается простоте функций. К примеру, функция tan(x)
считается более сложной, чем функции sin(x) и cos(x).
Пример использования команды Simplify
Слева показаны исходные выражения,
подвергаемые символьным
преобразованиям, а справа — результат
этих преобразований.
Эта команда открывает широкие
возможности для упрощения сложных и
плохо упорядоченных алгебраических
выражений.
25.
Работа с MathCad
Expand (Разложить по степеням)
Действие операции Expand (Разложить по степеням) в известном смысле
противоположно действию операции Simplify. Подвергаемое преобразованию
выражение расширяется с использованием известных (и введенных в символьное
ядро) соотношений, например алгебраических разложений многочленов,
произведений углов и т. д. Разумеется, расширение происходит только в том
случае, когда его результат однозначно возможен. Иначе нельзя считать, что
действие этой операции противоположно действию операции Simplify.
Пример использования команды Expand
Слева показаны
исходные выражения,
подвергаемые
символьным
преобразованиям, а
справа — результат этих
преобразований.
При преобразовании выражений операция Expand Expression старается
более простые функции представить через более сложные, свести
алгебраические выражения, представленные в сжатом виде, к выражениям в
развернутом виде и т. д.
26.
Работа с MathCad
Factor (Разложить на множители)
Операция Factor Expression (Разложить на множители) используется для
факторизации — разложения выражений или чисел на простые множители. Она
способствует выявлению математической сущности выражений; к примеру,
наглядно выявляет представление полинома через его действительные корни, а в
том случае, когда разложение части полинома содержит комплексно-сопряженные
корни, порождающее их выражение представляется квадратичным трехчленом.
Пример использования команды Factor
Слева показаны
исходные выражения,
подвергаемые
символьным
преобразованиям, а
справа — результат этих
преобразований.
В большинстве случаев (но не всегда) операция факторизации ведет к
упрощению выражений. Термин факторизация не является общепризнанным
в отечественной математической литературе, но мы его оставляем в связи с
созвучностью с англоязычным именем этой операции.
27.
Работа с MathCad
Collect (Разложить по подвыражению)
Операция Collect (Разложить по подвыражению) обеспечивает замену
указанного выражения выражением, скомплектованным по базису указанной
переменной, если такое представление возможно. В противном случае появляется
окно с сообщением о невозможности комплектования по указанному базису.
Пример использования команды Collect
Слева показаны
исходные выражения,
подвергаемые
символьным
преобразованиям, а
справа — результат этих
преобразований.
Эта команда особенно удобна, когда заданное выражение есть функция ряда
переменных и нужно представить его в виде функции заданной переменной
имеющей вид степенного многочлена. При этом другие переменные входят в
сомножители указанной переменной, представленной в порядке уменьшения
ее степени.
28.
Работа с MathCad
Polynomial Coefficients( Полиномиальные коэффициенты)
Операция Polynomial Coefficients(Полиномиальные коэффициенты) служит для
вычисления коэффициентов полинома.
Пример использования команды Polynomial Coefficients
Слева показаны
исходные выражения,
подвергаемые
символьным
преобразованиям, а
справа — результат этих
преобразований.
Операция применяется, если заданное выражение – полином (степенной
многочлен) или может быть представлено таковым относительно выделенной
переменной. Результатом операции является вектор с коэффициентами
полинома. Операция полезна при решении задач полиномиальной
аппроксимации и регрессии.
29.
Работа с MathCad
Комментарий к лабораторной работе №4 (повторно)
Сопряженные токи:
Если выражение состоит из двух
Iab 30.4 22.8i
чисел, то второе
Iab 30.4 22.8i
ОБЯЗАТЕЛЬНО МНИМОЕ.
Iab 30.4 22.8i
Iab 30.4 22.8i
i
Фазный ток
Сопряженный ток
1
Iab 30.4 22.8i
Iab Re( Iab ) Im( Iab ) i
Знак мнимой части
меняется на
противоположный
Фазный ток
Сопряженный ток
Iab 30.4 22.8i
Iab 30.4 22.8i
Iab 30.4 22.8i
Другой способ ввода сопряженных токов:
После ввода переменной нажать Shift+” (русская Э)
Над числом появится горизонтальная черта.
Это и есть сопряженное число
30.
Работа с MathCad
Символьные операции с выделенными переменными
Solve
(Решить относительно
переменной)
найти значения выделенной переменной, при которых
содержащее ее выражение становится равным нулю
Substitute
(Заменить переменную)
заменить указанную переменную содержимым буфера
обмена;
Differentiate
(Дифференцировать
переменной)
дифференцировать все выражение, содержащее
выделенную переменную, по отношению по к этой
переменной (остальные переменные рассматриваются
как константы);
Integrate
(Интегрировать по
переменной)
интегрировать все выражение, содержащее выделенную
переменную, по этой переменной;
Expand to Series.
(Разложить в ряд)
найти несколько членов разложения выражения в ряд
Тейлора относительно выделенной переменной;
Convert to Partial Fraction
(Разложить на элементарные
дроби)
разложить на элементарные дроби выражение, которое
рассматривается как рациональная дробь относительно
выделенной переменной.
31.
Работа с MathCad
Substitute (Заменить переменную)
Операция Substitute возвращает новое выражение, полученное путем
подстановки на место указанной переменной некоторого другого выражения.
Последнее должно быть подготовлено и скопировано (операциями Cutили Copy)в
буфер обмена.
Пример использования команды Substitute
Подстановки и замены переменных довольно часто встречаются в
математических расчетах, что делает эту операцию весьма полезной. Кроме
того, она дает возможность перейти от символьного представления результата
к числовому.
32.
Работа с MathCad
Differentiate(Дифференцировать переменной)
Операция Differentiate (Дифференцировать по переменной) возвращает
символьное значение производной выражения по той переменной, которая указана
курсором. Для вычисления производных высшего порядка (свыше 1) нужно
повторить вычисление необходимое число раз.
Integrate (Интегрировать по переменной)
Операция Integrate (Интегрировать по переменной) возвращает символьное
значение неопределенного интеграла по указанной курсором ввода
переменной. Выражение, в состав которого входит переменная, является
подынтегральной функцией.
33.
Работа с MathCad
Expand to Series. (Разложить в ряд)
Операция Expand to Series. (Разложить в ряд) возвращает разложение в ряд
Тейлора выражения относительно выделенной переменной с заданным по запросу
числом членов ряда п (число определяется по степеням ряда). По умолчанию
задано n=6.
В разложении указывается
остаточная погрешность.
Convert to Partial Fraction (Разложить на элементарные дроби)
Операция Convert to Partial Fraction(Разложить на элементарные дроби)
возвращает символьное разложение выражения, представленное относительно
заданной переменной в виде суммы правильных целых дробей.
Применение этой операции часто
делает результат длиннее
исходного выражения. Однако он
более нагляден и содействует
выявлению математической
сущности исходного выражения.
34.
Работа с MathCad
-14,15,16.Операции преобразования
Fourier Transform (Преобразование Фурье)— выполнить прямое
преобразование Фурье относительно выделенной переменной;
Inverse Fourier Transform (Обратное преобразование Фурье) — выполнить
обратное преобразование Фурье относительно выделенной переменной;
Laplace Transform (Преобразование Лапласа)— выполнить прямое
преобразование Лапласа относительно выделенной переменной (результат —
функция от переменной s),
Inverse Laplace Transform (Обратное преобразование Лапласа) —
выполнить обратное преобразование Лапласа относительно выделенной
переменной (результат — функция от переменной t);
Z Transform (Z-преобразование) — выполнить прямое Z-преобразование
выражения относительно выделенной переменной (результат — функция от
переменной z);
Inverse Z Transform (Обратное Z-преобразование) — выполнить обратное Zпреобразование относительно выделенной переменной (результат — функция от
переменной n).
35.
Работа с MathCad
Оптимизация
Оптимизация вычислений достигается заменой сложной функции или
математиского выражения их аналитическим представлением (если оно, конечно,
есть). Для включения процесса оптимизации необходимо выделить выражение,
которое хотелось бы оптимизоровать, и выполнить команду Optimize позиции
главного меню Math.
Признаком оптимизации выражения
является появление после него красной
звездочки. Кроме того, щелкнув правой
кнопкой мыши и выбрав из контекстного
меню команду Show Popup, можно
наблюдать появление окна с
оптимизированным выражением.
Особый выигрыш оптимизация может дать при многократном вычислении
сложных функций, содержащих интегралы
36.
Работа с MathCad
17. Программирование в MathCAD
Для расширения возможностей Mathcad в системе предусмотрена возможность
написания небольших программ, позволяющих решать те задачи, которые не могут
быть реализованы стандартными средствами. Обычно прибегать к
программированию приходится в тех случаях, когда стандартные средства либо не
могут решить задачу, либо неэффективны.
Для написания программ используется панель инструментов
MathCAD-программы с точки зрения
программиста представляют собой
подпрограммы-функции, которые могут
возвращать в качестве результата
число, вектор или матрицу. Функции
могут вызывать сами себя (рекурсивно
определенные функции) или другие
подпрограммы-функции, определенные
выше в том же MathCAD-документе.
Эти подпрограммы-функции составляются так же, как и определения функций.
37.
Работа с MathCad
Программирование в MathCAD
Команда Функция
Add Line
Добавляет новую строку под/над (зависит от
выделения) текущей строкой.
Присваивание значения локальной
переменной.
if
Условный оператор (оператор ветвления)if;
условие должно стоять после if, а оператор,
который исполняется, если выполнено
заданное условие,- перед if.
Обозначает оператор, который должен быть
otherwise исполнен, если условие оператора if не
выполняется.
for
Цикл for; за ключевым словом for следует
переменная-счетчик, а после символа
принадлежности вводится промедуток
изменения этой переменной.
Пример
38.
Работа с MathCad
Программирование в MathCAD (продолжение)
Команда Функция
while
Цикл while; внутренние операторы цикла
будут исполняться до тех пор, пока будет
истинным условие, следующее за
ключевым словом while.
break
Служит для преждевременного завершения
цикла, чтобы, например, избежать
зацикливания или слишком
продолжительных вычислений.
Служит для преждевременного завершения
continue текущей итерации цикла; сам цикл при
этом продолжается.
retutn
Преждевременное завершение программы;
указанное в ячейке значение будет
возвращено.
Если при вычислении выражения expr2
on error возникла ошибка, вычисляется выражение
expr1.
Пример
39.
Работа с MathCad
Примеры программ
maximum( v)
k 0
max v
0
Вычисление факториала
при помощи цикла for вычисляется произведение
n!=1*2*3. *n. Вычисленное последним значение
pвозвращается автоматически.
for i 1 length ( v) 1
maximum( v)
Определение
максимальной
k if v0i max вектора и её позиции.
max
v v
max
0
i
for i 1 length ( v) 1
координаты
k i
if v max
k i
max
v
max
i
k i
k
max
1
v 5
8
1
2
maximum( v)
8
40.
Работа с MathCad
Примеры программ
Выявление всех нулей функции
на заданном интервале.
При этом производится разбиение
интервала на n равных
подинтервалов и ищутся те из них,
на которых функция меняет знак.
При обнаружении такого
подинтервала вызывается функция,
реализующая метод касательных
Ньютона, с начальным значением,
находящимся в середине
подинтервала.
41.
Работа с MathCad
-№17.Примеры программ
По введенным значениям коэффициентов А, В, С определить корни
2
квадратного уравнения A cos x B cos x C 0
42.
Работа с MathCad
Обработка ошибок
Система MathCAD предоставляет пользователю некоторый контроль
над ошибками, которые могут возникнуть при вычислении выражений
или при выполнении программ. Для этой цели служит оператор
В поле ввода справа следует ввести выражение или программу, которые
необходимо вычислить (известно, что это выражение может содержать ошибку при
определенных значениях входных параметров). В поле ввода слева следует ввести
выражение, которое будет выполнено вместо правого выражения, если при
выполнении последнего возникнет ошибка.
Пример: Если аргументу
функции присвоено нулевое
значение, то в программе
возникает ошибка – деление
на нуль. Но за счет оператора
on error сообщение не
выводится, а функции в этой
точке присваивается
значение, указанное слева от
оператора on error – значение
бесконечности (10307)
43.
Работа с MathCad
№9.-Построение и форматирование графиков
Для работы с графиками используется панель инструментов Graph
Отображение точек
в пространстве
Двумерный
(декартовый
график)
Масштаб
декартового
графика
Трассировка
декартового
графика
Векторное
поле
Гистограмма
Полярный
график
Линии равного
уровня
Поверхность
(3D график)
44.
Работа с MathCad
Двумерные графики
При построении графика функция представляется в виде набора
точек на плоскости. Т.е. для построения графика перебирается
определенное количество значений аргумента, и для каждого из них
вычисляется значение функции.
При упрощенном способе
построения, когда диапазон
аргумента задается автоматически,
по оси абсцисс выбирается диапазон
[-10, 10], а количество точек равно
100. Для того, чтобы иметь
возможность при построении
графика управлять количеством
точек, аргумент надо задать как
ранжированную переменную. При
этом количество точек можно менять
либо через шаг ранжированной
переменной, либо непосредственно
задавать количество точек N.
45.
Работа с MathCad
Двумерные графики
46.
Работа с MathCad
Двумерные графики
-№9.Изображение нескольких функций на одном графике.
Для этого нужно ввести их в поле ввода функции через
запятую (при этом каждая из них может зависеть от своего
аргумента). Если необходимо, можно также через запятую
ввести аргументы каждой функции в поле ввода аргументов.
Максимально можно
изобразить на одном
графике 16 различных
функций. Функции,
построенные на одном
графике, изображаются
линиями различного цвета
и типа. Цвета и типы линий
можно изменить.
47.
Работа с MathCad
№10.-Для изменения
масштаба графика нужно
установить курсор на поле
графика, нажать кнопку
«Масштаб» (или вызвать
контекстное меню, выбрать
команду Zoom), появится
диалоговое окно; после чего
на поле графика выбрать
область, которую надо
увеличить, а в диалоговом
окне выбрать кнопку Zoom.
Чтобы увеличить масштаб
всего графика, надо
пользоваться черными
квадратиками,
расположенными справа и
внизу по границе графика.
Двумерные графики. Масштаб
48.
Работа с MathCad Двумерные графики. Трассировка
Трассировка позволяет очень
точно изучить строение графика,
определяя значение аргумента и функции
в любой точке. Для того, чтобы включить
режим трассировки, нужно установить
курсор на поле графика, нажать кнопку
«Трассировка» (или правую кнопку мыши
и выбрать в контекстном меню пункт
Trace). В результате появится окно
трассировки, а в окне графика — две
пересекающиеся пунктирные линии.
Перемещая указатель по графику, тем
самым передвигаем точку пересечения
линий трассировки. При этом координаты
точки указываются с высокой точностью в
окне трассировки в полях X-Value иY-Value.
Нажатие кнопки Copy X или Copy Y
копирует числа в буфер обмена. В
дальнейшем его можно вставить в любое
место документа или в маркер.
49.
Работа с MathCad
Полярные графики
В полярной системе
координат каждая точка
задается двумя
координатами: радиусвектором и полярным углом.
При изображении графика в
полярной системе координат
функция обычно задает
зависимость радиус-вектора
от угла. Если аргумент не
был описан ранее как
ранжированная переменная,
то выбирается стандартный
диапазон изменения угла — 2 .
Для полярного графика
можно изменять границы только радиус-вектора. Поля для изменения этих
границ расположены справа от графика. Здесь проявляется особенность
полярных графиков в MatCAD – возможность установки для нижней
границы радиус-вектора значений, отличных от нуля, т.е. можно получить
график, для которого в начале координат радиус будет равняться,
например, пяти.
50.
Работа с MathCad
Двумерные графики. Форматирование
Вызов диалогового окна для
форматирования графика осуществляется
двойным щелчком мыши по полю графика.
Включить 2ю ось Y
Логарифмич. масштаб
Сетка
Нумерация
Автомасштаб
Маркеры
Автосетка
Число линий сетки
Стиль осей
Огранич. область
С пересечением
Нет
Равные масштабы
Вкладка «Оси X-Y»
51.
Работа с MathCad
Двумерные графики. Форматирование
Вкладка «Линии графика»
Скрыть
аргументы
Скрыть
легенду
Имя
легенды
Кол-во мар
маркеров кер
Верх-лево Верх право
Низ-лево Низ- право
Внизу
Лин Толщ
ия
ина Цвет
52.
Работа с MathCad
Двумерные графики. Форматирование
Вкладка «Формат числа»
Общий
Десятичный
Научный
Инженерный
Дробный
Показывать
конечные нули
Число частных
долей
Экспоненциальный
порог
Показывать
экспоненту в
инженерном
формате
53.
Работа с MathCad
Двумерные графики. Форматирование
Вкладка «Метки осей»
Имя графика
Сверху
Снизу
Показывать
Подписи осей
54.
Работа с MathCad
Двумерные графики. Форматирование
-№10.Вкладка «По умолчанию»
Изменить
настройки по
умолчанию для
данного графика
Использовать
настройки данной
схемы по
умолчанию для
всего документа
55.
Работа с MathCad
Трехмерные графики
№11.После выбора этого типа графика
появится шаблон с тремя
координатными осями и
местозаполнителем. Там следует
ввести либо имя z функции двух
переменных z(x,y) для быстрого
построения трехмерного графика,
либо имя матричной переменной Z,
которая задает распределение данных
ZX,Y на плоскости XY. Для графиков,
основой которых служат матрицы,
шкалу плоскости XY приходится
задавать вручную. MathCAD рисует
поверхность, точки в пространстве или
линии уровня, основываясь на
двумерной структуре этой матрицы.
Построенный график можно повернуть
под любым углом или
отмасштабировать с помощью мыши.
56.
Работа с MathCad
z( x y) sin( x) e
Трехмерные графики
y
Поверхность (3D график)
Линии равного уровня
57.
Работа с MathCad
z( x y) sin( x) e
Трехмерные графики
y
Отображение точек в пространстве
Гистограмма
58.
Работа с MathCad
-№11.Трехмерные графики
59.
Работа с MathCad
№12.-Вкладка «Главная»
Трехмерные графики
Стиль осей:
— в виде куба
— угловой
— нет
Повороты по осям
Масштаб
Тип 3D графика
Равные масштабы
по осям
Показать границу
Показать область
построения
60.
Работа с MathCad
Трехмерные графики
Вкладка «Оси»
Сетка
Подписи осей
Маркеры
Автосетка
Число линий сетки
Толщина линии
Показывать
цифры на осях
Цвет оси и
толщина
Автомасштаб
Минимум и
максимум
61.
Работа с MathCad
Трехмерные графики
Вкладка «Построение»
Заливка
Сплошная
По контуру
Нет
Области
заполняются
наполовину
Плавный
переход
Палитра или
один цвет
Линии
графика
Сетка
Контуры
Нет
Маркеры
Скрыть
Толщина
Тип символа
и размер
62.
Работа с MathCad
Трехмерные графики
Вкладка «Подсветка»
Включить
подсветку
Схема
подсветки
Рассеянный
свет
Отраженный
свет
Вкл/Выкл
Оси
63.
Работа с MathCad
Вкладка «Подпись»
Имя графика
Сверху
Снизу
Скрыть
Трехмерные графики
64.
Работа с MathCad
Вкладка «Фон»
Заливка фона
Линии
Маркеры
Цвет линии
Толщина линии
Трехмерные графики
Цвет фона
Граница
65.
Работа с MathCad
-№12.Трехмерные графики
Вкладка «Специальные настройки (для линий равного уровня и гистограмм)»
Линии
уровня
Тип гистограммы
трехмерная,
обычная,
с накоплением
Заливка
Рисовать
линии
Векторное поле
Автосетка
Нумеровать
линии
Число линий
Выбор оси
для построения графика
Расстояние
между столб.
Отображение точек в
пространстве
(количество по X и по Y)
Стиль
линий
Порядок построения
векторов: по строкам,
по координатам
66.
Работа с MathCad
Вкладка «Быстрое построение»
Начальное
значение
Конечное
значение
Кол-во
элементов
сетки
Двумерные графики
Система координат
прямоугольная, сферическая, цилиндрическая
67.
Обработка экспериментальных данных
Когда требуется провести обработку экспериментальных данных,
то они, чаще всего, представляются в виде массива, состоящего из пар
чисел (xi,yi). Поэтому возникает задача аппроксимации дискретной
зависимости y(xi) непрерывной функцией f(х). Функция f(х), в зависимости
от специфики задачи, может отвечать различным требованиям:
— f (х) должна проходить через точки (xi,yi), т. е. f (xi)= yi i=1. n. В
этом случае говорят об интерполяции данных функцией f(х) во
внутренних точках между xi или экстраполяции за пределами интервала,
содержащего все xi.
— f (х) должна некоторым образом (например, в виде определенной
аналитической зависимости) приближать y(xi), не обязательно проходя
через точки (xi,yi). Такова постановка задачи регрессии, которую во
многих случаях также можно назвать сглаживанием данных;
— f(x) должна приближать экспериментальную зависимость y(xi),
учитывая, к тому же, что данные (xi,yi) получены с некоторой
погрешностью, выражающей шумовую компоненту измерений. При этом
функция f(х), с помощью того или иного алгоритма, уменьшает
погрешность, присутствующую в данных (xi,yi). Такого типа задачи
называют задачами фильтрации. Сглаживание — частный случай
фильтрации.
68.
Обработка экспериментальных данных
Таким образом, Интерполяцией называют заполнение
отрезками кривых промежутков между заданными точками по тому
или иному закону. Для проведения интерполяции в первую очередь
должна быть задана экспериментальная зависимость y(x) в виде
набора точек на плоскости.
Интерполирующая функция – это функция F(x), которая
принадлежит известному классу и принимает в узлах интерполяции
те же значения, что и искомая y(x).
Для проведения интерполяции необходимо задать два
одномерных массива (вектора) – x и y, содержащие соответственно
значения координат x и y каждой точки. При этом важно, чтобы
значения в векторе x были заданы в порядке возрастания. Эти
значения также называют узлами интерполяции.
69.
Обработка экспериментальных данных
Для построения интерполяции и экстраполяции в MathCAD
имеются несколько встроенных функций, позволяющих «соединить»
точки выборки данных (xi,yi) кривой разной степени гладкости. В
точках xi значения интерполяционной функции должны совпадать с
исходными данными, т. е. F(xi)=y(xi)
Линейная интерполяция
Простейшим вариантом интерполяции является линейная
интерполяция. Она заключается в простом соединении точек
между собой отрезками прямых.
Для реализации такой интерполяции в MathCad существует
встроенная функция linterp(vx,vy,x) , где vx, vy – уже известные
векторы, содержащие координаты последовательности точек, x –
координата точки, в которой нужно вычислить значение
интерполирующей функции.
Элементы вектора х должны быть определены в порядке
возрастания, т. е. Х1
70.
Линейная интерполяция
Интерполирующая функция F(х) состоит из отрезков
прямых, соединяющих точки
71.
Кубическая сплайн — интерполяция
В большинстве практических приложений желательно
соединить экспериментальные точки не ломаной линией, а гладкой
кривой. Лучше всего для этих целей подходит интерполяция
кубическими сплайнами, т. е. отрезками кубических парабол.
interp(s,x,y,t) — функция, аппроксимирующая данные
векторов х и у кубическими сплайнами;
s — вектор вторых производных, созданный одной из
сопутствующих функций cspline, pspline или lspline;
х — вектор действительных данных аргумента, элементы
которого расположены в порядке возрастания;
у — вектор действительных данных значений того же
размера;
t — значение аргумента, при котором вычисляется
интерполирующая функция
Перед применением функции interp необходимо
предварительно определить первый из ее аргументов — векторную
переменную s. Делается это при помощи одной из трех встроенных
функций тех же аргументов (х,у).
72.
Кубическая сплайн — интерполяция
Функции для определения векторной переменной s
— lspline(x,y) — вектор значений коэффициентов линейного
сплайна;
— pspline(x,y) — вектор значений коэффициентов
квадратичного сплайна;
— cspline(x,y) — вектор значений коэффициентов кубического
сплайна;
х,у — векторы исходных данных.
Выбор конкретной функции сплайновых коэффициентов
влияет на интерполяцию вблизи конечных точек интервала.
Смысл сплайн-интерполяции заключается в том, что в
промежутках между точками осуществляется аппроксимация в виде
зависимости F(t) =at3+bt2+ct+d. Коэффициенты a,b,c,d
рассчитываются независимо для каждого промежутка, исходя из
значений yi в соседних точках. Этот процесс скрыт от пользователя,
поскольку смысл задачи интерполяции состоит в выдаче значения
F(t) в любой точке t.
73.
Кубическая сплайн — интерполяция
Для сравнения синим цветом показана линейная интерполяция
для тех же исходных данных.
74.
Полиномиальная сплайн — интерполяция
Более сложный тип интерполяции — так называемая
интерполяция В-сплайнами. В отличие от обычной сплайнинтерполяции, сшивка элементарных В-сплайнов производится
не в точках xi, а в других точках u, координаты которых
предлагается ввести пользователю. Сплайны могут быть
полиномами 1, 2 или 3 степени (линейные, квадратичные или
кубические). Применяется интерполяция В-сплайнами точно
так же, как и обычная сплайн-интерполяция, различие состоит
только в определении вспомогательной функции
коэффициентов сплайна.
Размерность вектора u должна быть на 1, 2 или 3
меньше размерности векторов х и у. Первый элемент вектора u
должен быть меньше или равен первому элементу вектора х, а
последний элемент u — больше или равен последнему
элементу х.
75.
Полиномиальная сплайн — интерполяция
Функции для определения полиномиальной
интерполяции:
— interp(s,x,y,t) — функция, аппроксимирующая данные
векторов х и ус помощью В-сплайнов;
— bspline(x,y,u,n) — вектор значений коэффициентов Всплайна;
s — вектор вторых производных, созданный функцией
bspline;
х — вектор действительных данных аргумента, элементы
которого расположены в порядке возрастания;
у — вектор действительных данных значений того же
размера;
t — значение аргумента, при котором вычисляется
интерполирующая функция;
u — вектор значений аргумента, в которых производится
сшивка В-сплайнов;
n — порядок полиномов сплайновой интерполяции (1, 2 или
3).
76.
Полиномиальная сплайн — интерполяция
77.
Двумерная сплайн-интерполяция
Двумерная сплайн-интерполяция приводит к построению
поверхности z(x,y), проходящей через массив точек, описывающий
сетку на координат ной плоскости (х,у). Поверхность создается
участками двумерных кубических сплайнов, являющихся функциями
(х,у) и имеющих непрерывные первые и вторые производные по
обеим координатам.
Двумерная интерполяция строится с помощью тех же
встроенных функций, что и одномерная, но имеет в качестве
аргументов не векторы, а матрицы.
interp(s,x,z,v) — скалярная функция, аппроксимирующая данные
выборки двумерного поля по координатам х и у кубическими
сплайнами;
s — вектор вторых производных, созданный одной из
сопутствующих функции cspline, pspline или Ispline
х — матрица размерности Nx2, определяющая диагональ сетки
значений аргумента (элементы обоих столбцов соответствуют меткам
х и у и расположены в порядке возрастания);
z — матрица действительных данных размерности NXN;
v — вектор из двух элементов, содержащий значения
аргументов х и у, для которых вычисляется интерполяция.
78.
Двумерная сплайн-интерполяция
79.
Двумерная сплайн-интерполяция
Исходное поле данных
80.
Двумерная сплайн-интерполяция
Результат интерполяции
81.
Экстраполяция
В MathCAD имеется развитый инструмент
экстраполяции, который учитывает распределение данных
вдоль всего интервала. В функцию predict встроен линейный
алгоритм предсказания поведения функции, основанный на
анализе, в том числе осцилляции.
Функция предсказания может быть полезна при
экстраполяции данных на небольшие расстояния. Вдали от
исходных данных результат часто бывает
неудовлетворительным. Кроме того, функция predict хорошо
работает в задачах анализа подробных данных с четко
прослеживающейся закономерностью.
82.
Экстраполяция
Функция для определения экстраполяции:
predict(y,m,n) — функция предсказания вектора,
экстраполирующего выборку данных;
у — вектор действительных значений, взятых через
равные промежутки значений аргумента;
m — количество последовательных элементов вектора у,
согласно которым строится экстраполяция;
n — количество элементов вектора предсказаний.
Значений аргумента для данных не требуется, поскольку
по определению функция действует на данные, идущие друг за
другом с равномерным шагом.
Результат функции predict вставляется «в хвост»
исходных данных.
83.
Экстраполяция
84.
Экстраполяция
Результат экстраполяции при малом количестве данных
85.
Регрессия
Задачи математической регрессии имеют смысл
приближения выборки данных (xi,yi) некоторой функцией f(x),
определенным образом минимизирующей совокупность ошибок f
|(xi)-Yi|. Регрессия сводится к подбору неизвестных коэффициентов,
определяющих аналитическую зависимость f(х).
Большинство задач регрессии являются частным случаем
более общей проблемы сглаживания данных.
Как правило, регрессия очень эффективна, когда заранее
известен (или, по крайней мере, хорошо угадывается) закон
распределения данных (xi,yi).
Линейная регрессия
Самый простой и наиболее часто используемый вид
регрессии — линейная. Приближение данных (xi,yi) осуществляется
линейной функцией у(х) = b + ах. На координатной плоскости (х,у)
линейная функция, как известно, представляется прямой линией.
Еще линейную регрессию часто называют методом наименьших
квадратов, поскольку коэффициенты а и b вычисляются из
условия минимизации суммы квадратов ошибок.
86.
Регрессия
Для расчета линейной регрессии в MathCAD имеются два
дублирующих друг друга способа. Результат обоих листингов
получается одинаковым.
Запись функций регрессии:
line (х,у) — вектор из двух элементов (b,а) коэффициентов
линейной регрессии b+ах;
intercept (х, у) — коэффициент b линейной регрессии;
slope (х, у) — коэффициент а линейной регрессии;
х — вектор действительных данных аргумента;
у — вектор действительных данных того же размера.
Есть и альтернативный алгоритм, реализующий не
минимизацию суммы квадратов ошибок, а медианную линейную
регрессию для расчета коэффициентов а и b:
medfit(x,y) — вектор из двух элементов (b,а) коэффициентов
линейной медианной регрессии b+ах;
х, у — векторы действительных данных одинакового
размера.
87.
Регрессия
Первый способ:
Второй способ:
88.
Регрессия
Медианная линейная регрессия :
Результат регрессии (кружки – исходные данные, черная
линия – первый или второй способы, зеленая линия – медианная
регрессия)
89.
Полиномиальная регрессия
Полиномиальная регрессия означает приближение данных
(xi,yi) полиномом k-й степени F(x)=a+bx+cx2+dx3+.. .+hxk. При k=1
полином является прямой линией, при k=2 — параболой, при k=3 кубической параболой и т. д. Как правило, k Для построения регрессии полиномом k-й степени
необходимо наличие покрайней мере (k+l) точек данных.
В MathCAD полиномиальная регрессия осуществляется
комбинацией встроенной функции regress и полиномиальной
интерполяции.
regress (х, у, k) — вектор коэффициентов для построения
полиномиальной регрессии данных;
interp(s,x,y,t) — результат полиномиальной регрессии;
s=regress(х,у,k);
х — вектор действительных данных аргумента, элементы
которого расположены в порядке возрастания;
у — вектор действительных данных значений того же размера;
k — степень полинома регрессии (целое число);
t — значение аргумента полинома регрессии.
После функции regress необходимо использовать interp.
90.
Полиномиальная регрессия
91.
Регрессия отрезками полиномов
Помимо приближения массива данных одним полиномом
имеется возможность осуществить регрессию сшивкой отрезков
(точнее говоря, участков, т. к. они имеют криволинейную форму)
нескольких полиномов. Для этого имеется встроенная функция
loess, применение которой аналогично функции regress.
s=loess(x,y,span) — вектор коэффициентов для построения
регрессии данных отрезками полиномов;
х — вектор действительных данных аргумента, элементы
которого расположены в порядке возрастания;
у — вектор действительных данных значений того же
размера;
span — параметр, определяющий размер отрезков полиномов
(положительное число, хорошие результаты дает значение порядка
span=0.75).
Параметр span задает степень сглаженности данных. При
больших значениях span регрессия практически не отличается от
регрессии одним полиномом (например, span=2 дает почти тот же
результат, что и приближение точек параболой).
92.
Регрессия отрезками полиномов
93.
Регрессия специального вида
В MathCAD встроено еще несколько видов регрессии. Для
них, помимо массива данных, требуется задать некоторые
начальные значения коэффициентов а, b, с. Использовать нужно
тот вид регрессии, который хорошо описывает массив исходных
данных. Когда тип регрессии плохо отражает последовательность
данных, то ее результат часто бывает неудовлетворительным и
даже сильно различающимся в зависимости от выбора начальных
значений.
Каждая из функций выдает вектор параметров а, b, с:
expfit (x,y,g) — регрессия экспонентой f(x)=a ebx+c;
igsfit(x,y,g) — регрессия логистической функцией f(х)=а/(1+ b есх);
sinfit (x,y,g) — регрессия синусоидной f(x) =a sin(x+b)+c
pwfit(x,y,g) — регрессия степенной функцией f(x)=a xb+c;
logfit (x,y,g)-регрессия логарифмической функцией
f(x)=a ln(x+b)+c;
infit(x,y) — регрессия логарифмической функцией f(x)=a ln(x)+b;
x — вектор действительных данных аргумента;
у — вектор действительных значений того же размера;
g — вектор из элементов, задающий значения а,b,с.
94.
Экспоненциальная регрессия
95.
Сглаживание и фильтрация
При анализе данных часто возникает задача их фильтрации,
заключающаяся в устранении одной из составляющих зависимости
y(xi). Наиболее часто целью фильтрации является подавление
быстрых вариаций y(xt), которые чаще всего обусловлены шумом. В
результате из быстро осциллирующей зависимости y(xi) получается
другая, сглаженная зависимость, в которой доминирует более
низкочастотная составляющая.
Наиболее простыми и эффективными рецептами
сглаживания (smoothing) можно считать регрессию различного
вида. Однако, регрессия часто уничтожает информативную
составляющую данных, оставляя лишь наперед заданную
пользователем зависимость.
Часто рассматривают противоположную задачу фильтрации
– устранение медленно меняющихся вариаций в целях
исследования высокочастотной составляющей. В этом случае
говорят о задаче устранения тренда. Иногда интерес представляют
смешанные задачи выделения среднемасштабных вариаций путем
подавления как быстрых, так и более вариаций. Одна из возможностей решения связана с применением полосовой фильтрации.
96.
Сглаживание и фильтрация
Встроенные функции для сглаживания
В MathCAD имеется несколько встроенных функций,
реализующих различные алгоритмы сглаживания данных.
— medsmooth(y,b) — сглаживание алгоритмом «бегущих
медиан»;
— ksmooth(x,y,b) — сглаживание на основе функции Гаусса;
— supsmooth(x,y) — локальное сглаживание адаптивным
алгоритмом, основанное на анализе ближайших соседей каждой
пары данных;
х — вектор действительных данных аргумента (для supsmooth
его элементы должны быть расположены в порядке возрастания);
у — вектор действительных значений того же размера, что и х;
b — ширина окна сглаживания.
Все функции имеют в качестве аргумента векторы,
составленные из массива данных, и выдают в качестве результата
вектор сглаженных данных того же размера. Функция medsmooth
предполагает, что данные расположены равномерно.
97.
Сглаживание и фильтрация
сглаживание
алгоритмом
«бегущих
медиан»
сглаживание
на основе
функции
Гаусса
98.
Устранение тренда
Еще одна типичная задача возникает, когда интерес
исследований заключается не в анализе медленных (или
низкочастотных) вариаций сигнала у(х) (для чего применяется
сглаживание данных), а в анализе быстрых его изменений. Часто
бывает, что быстрые (или высокочастотные) вариации
накладываются определенным образом на медленные, которые
обычно называют трендом. Часто тренд имеет заранее
предсказуемый вид, например линейный. Чтобы устранить
тренд, можно использовать следующую последовательность
действий:
1. Вычислить регрессию f(x), например линейную, исходя
из априорной информации о тренде.
2. Вычесть из данных у(х) тренд f (х).
Этот метод может быть применен для выделения
высокочастотного управляющего сигнала, передаваемого по
низкочастотным силовым цепям (технология PLC).
Система Mathcad
В последнее время широкое распространение получили пакеты математических программ (или математические системы), которые можно использовать для различных вычислений и вычерчивания графиков (Mathematica, Derive, Statistica, MathCAD, MathLAB и др.). В этих системах процесс вычислений сильно автоматизирован, что позволяет экономить время и больше внимания уделять физическому смыслу получаемого результата. Выбор системы зависит от характера решаемых задач, от вкуса, от практики.
Система MathCAD -разработка фирмы MathSoft. Примерно каждый год появляется новая версия этой системы. В настоящий момент известна версия Mathcad 12.
Назначение системы: MathCAD — это интегрированная система программирования, ориентированная на проведение математических и инженерно-технических расчетов. MathCAD содержит текстовый редактор, вычислитель, символьный процессор и графический процессор.
Вид окна системы MathCAD аналогичен окнам приложений ОС семейства Windows (Word, Exel и др.).
1 . Интерфейс пользователя в системе MathCAD . Интерфейс пользователя состоит из:
- строки заголовка
- строки главного меню
- из строки состояния
- из панелей Standard, Formatting, Math, Controls, Recources:
- имена не должны начинаться с цифры, символа подчеркивания, штриха или процента;
- символ бесконечности может быть только первым в имени;
- все буквы в имени должны иметь один стиль и шрифт;
- имена не могут совпадать с именами встроенных функций, констант и размерностей, например, sin или TOL. Тем не менее, допускается их переопределение, но тогда одноименная встроенная функция не будет использоваться по первоначальному назначению;
- MathCAD не различает имен переменных и функций: если сначала определить функцию f(x), а потом переменную f, то в оставшейся части документа будет утерян доступ к функции f(x);
- в некоторых случаях желательно использовать имена переменных и функций, содержащие символы операторов MathCAD или другие символы, которые нельзя вставлять в имена непосредственно, для этого надо набрать комбинацию клавиш Ctrl/Shift/J, которая позволит вставить пару квадратных скобок с местозаполнителем внутри . Имя, составленное из любых символов и заключенное в эти квадратные скобки, MathCAD будет воспринимать корректно .
- Операторы, обозначающие арифметические действия, называются арифметическими и вводятся с палитры .
- Операторы, которые вставляются с палитры (Вычисления), называются вычислительными операторами (дифференцирование, интегрирование, суммирование, вычисление произведения, пределы).
- Логические операторы – вводятся с палитры .
- Матричные операторы – предназначены для совершения различных действий над векторами и матрицами, вводятся с палитры .
- Операторы выражения – сгруппированы на панели (Evaluation – Выражения) (оператор численного вывода , оператор локального присваивания , оператор глобального присваивания , оператор символьного вывода).
- Операторы пользователя. Запросы взыскательного пользователя могут не исчерпываться набором встроенных операторов MathCAD. Для вставки в документы заранее созданных операторов пользователя применяется панель . Оператор пользователя может иметь абсолютно любое имя. Присваивать оператору некоторое действие следует точно так же, как функции пользователя. Создание бинарного оператора выглядит
- Назначение системы MathCAD. Какие еще пакеты математических программ вы знаете?
- Интерфейс пользователя в системе MathCAD.
- Документ в системе MathCAD(заголовок, расширение при сохранении на диск, типы и расположение блоков, точка привязки блока, размеры блоков, сквозная передача данных в документе).
- Объясните, что такое входной язык системы MathCAD и язык реализации системы MathCAD?
- Перечислите основные объекты входного языка системы MathCAD. Расскажите об алфавите языка и о встроенных и пользовательских функциях системы MathCAD. Что такое определение функции и обращение к функции?
- Константы и переменные в системе MathCAD? Как задаются типы данных в MathCAD? Что такое глобальное и локальное присваивание переменных в документе MathCAD? Как вставляется мнимая единица для комплексных чисел? Что такое ранжированная переменная и как она задается?
- Как задаются массивы в MathCADе? Как можно добавлять строки и столбцы в готовые матрицы? Как удаляются строки и столбцы из матриц?
- Перечислите операторы входного языка системы MathCAD?
- Как осуществляется вывод результатов в системе MathCAD? Как можно настроить формат вывода результатов? Как осуществляется управление процессом вычислений в системе MathCAD?
- Как работать с единицами измерений физических величин в системе MathCAD?
- Подробно охарактеризуйте текстовые, графические и математические блоки.
- Графики в декартовой системе координат .
- Surface Plot (График поверхности) – график в виде трехмерной поверхности;
- Contour Plot – (Контурный график или линии уровня) – также график поверхности, но спроектированный на одну из координатных плоскостей, а изменение функции по оставшейся оси изображается в виде линии уровня;
- Scatter Plot – отображение набора точек в трехмерном пространстве;
- Vector Field Plot – изображение двухмерного векторного поля;
- Bar Plot – трехмерная гистограмма;
- Patch Plot — также гистограмма, но отображающая только верхние грани столбиков.
- во вкладке установить переключатель и ;
- во вкладке в группе установлен переключатель (это приведет к тому, что положение осей перестанет быть жестким, теперь они будут располагаться по периметру куба, ограничивающего график, и всегда на его передних гранях);
- во вкладке на каждой из вкладок в группе установить флажок (отобразить линии), это приведет к отображению линий сетки, активизируя поле можно установить необходимый цвет линий сетки;
- во вкладке включить флажок , из раскрывающегося списка выбрать схему освещения ;
- на не отформатированном графике линии на графике изображены в виде так называемого каркаса (вкладка ), это очень загромождает график. Лучше линии отобразить в виде линий уровня по оси z. Для этого во вкладке в группе (параметры линий уровня) выбрать из раскрывающегося списка — линии уровня по z, далее в этой же группе следует установить флажок (отобразить линии); если плотность линий уровня оказалась слишком маленткой или слишком большой, то надо сбросить флажок и в поле ввода ввести необходимое число, в нашем случае это число 19.
- Каким образом представляется функция при построении графика? График в декартовой системе координат: создание, задание аргумента по умолчанию, в виде ранжированной переменной, изображение нескольких функций на одном графике, работа с командами «масштаб» и «трассировка».
- Построение графика в полярной системе координат и графика параметрически заданной функции.
- Форматирование 2-х мерных графиков. Размещение надписей на поле графика.
- Перечислите графики функций двух переменных, которые может строить MathCAD. Объясните, как строятся график поверхности? Каким образом на трехмерном графике можно изменить масштаб изображения, угол поворота? И как можно задать «живую» картинку?
- Расскажите о контурных и векторных графиках в MathCAD. Объясните их.
- Как строятся в MathCAD графики параметрически заданной поверхности и параметрически заданной кривой?
- Расскажите о форматировании 3-хмерных графиков.
- Что такое анимация и как она создается в системе MathCAD?
- Как осуществляется ввод/вывод во внешние файлы в системе MathCAD?
- — скалярное и векторное произведение векторов. Скалярное произведение векторов определяется как скаляр, равный сумме попарных произведений соответствующих элементов (идентичен обычному оператору умножения). Векторы должны иметь одинаковый размер. Для обозначения скалярного произведения используется символ «точка». Векторное произведение двух векторов u и v с углом между ними равно вектору с модулем , направленным перпендикулярно плоскости векторов u и v. Векторное произведение векторов применимо только для трехкомпонентных векторов. Обозначают векторное произведение символом х, который можно ввести нажатием кнопки на панели Matrix/
- — сумма элементов вектора.
- функции определения (генерации) матриц и операции с блоками матриц;
- функции вычисления различных числовых характеристик матриц;
- функции, реализующие численные алгоритмы решения задач линейной алгебры.
- matrix(m, n, f) – создает и заполняет матрицу размерности m x n, элемент которой, расположенный в i-ой строке и j-ом столбце равен значению f(i, j) функции f(x, y);
- diag(v) – создает диагональную матрицу, элементы главной диагонали которой хранятся в векторе v;
- identity(n) – создает единичную матрицу порядка n;
- augment(A, B) –объединяет матрицы A и B; матрица B располагается справа от матрицы A, при этом матрицы должны иметь одинаковое число строк;
- stack(A, B) – объединяет матрицы A и B, матрица В располагается внизу под матрицей А, при этом матрицы должны иметь одинаковое число столбцов;
- submatrix(A, ir, jr, ic, jc) – формирует матрицу, которая является блоком матрицы А, расположенным в строках с ir по jr и в столбцах с ic по jc, причем ir jr, ic jc.
- last(v) – вычисляет номер последнего элемента вектора V;
- length(v) – вычисляет количество элементов вектора V;
- min(v), max(v) – вычисляет минимальное и максимальное значения вектора V;
- Re(v) – создает вектор из реальных частей комплексных элементов вектора V;
- Im(v) — создает вектор из мнимых частей комплексных элементов вектора V;
- sort(V) – сортировка элементов вектора V по возрастанию;
- reverse (sort(v)) – сортировка элементов вектора V по убыванию;
- csort (A,n) – сортировка элементов n – го столбца матрицы А по возрастанию (перестановкой строк);
- rsort (A,n) – сортировка элементов n – ой строки матрица А по возрастанию (перестановкой столбцов);
- rows(A) – вычисляет число строк в матрице А;
- cols(A) – вычисляет число столбцов в матрице А;
- max(A), min(A) – определяет максимальное и минимальное значения матрицы А;
- tr(A) – вычисляет след квадратной матрицы А (след матрицы равен сумме ее диагональных элементов по главной диагонали);
- mean(A) – среднее значение элементов матрица А.
- rref(A) – приведение матрицы к ступенчатому виду с единичным базисным минором (выполняются элементарные операции со строками матрицы: перестановка строк, умножение строки на число, сложение строк);
- rank(A) – вычисляет ранг матрицы А (количество линейно-независимых строк или это число ненулевых строк ступенчатой матрицы rref(A));
- eigenvals(A) – вычисление собственных значений квадратной матрицы А;
- eigenvecs (A) – вычисление собственных векторов квадратной матрицы А, значением функции является матрица, столбцы которой есть собственные векторы матрицы А, причем порядок следования векторов отвечает порядку следования собственных значений, вычисленных с помощью функции eigenvals(A);
- eigenvec(A,e) – вычисление собственного вектора матрицы А, отвечающего собственному значению e;
- normi(A) – max – норма, или — норма (infinity norm). в линейной алгебре используются различные матричные нормы, которые ставят в соответствие матрице некоторую скалярную числовую характеристику;
- lsolve (A,b) – решение системы линейных алгебраических уравнений вида .
- метод обратной матрицы, он вам уже известен;
- метод исключений Гаусса;
- метод Крамера.
- Поясните работу команд панели Matrix – скалярное и векторное произведение, детерминант матрицы, сумма элементов вектора, операция векторизации.
- Перечислите три основные группы матричных функций. Расскажите о матричных функциях, возвращающих числовые характеристики. Приведите примеры.
- Матричные функции, реализующие генерацию матриц и операции работы с блоками матриц.
- Перечислите матричные функции, реализующие численные алгоритмы решения задач линейной алгебры. Объясните, как работают функции rref и rank.
- Какие функции вычисляют собственные вектора и собственные числа квадратной матрицы?
- Решение в системе MathCAD неоднородных систем линейных уравнений, когда определитель матрицы не равен нулю. Три способа.
- Как осуществляется в системе MathCAD решение неоднородных систем линейных уравнений, когда определитель равен нулю и при условии, что ранг матрицы системы равен рангу расширенной матрицы системы?
- Как осуществляется в системе MathCAD решение однородных систем линейных уравнений, когда определитель матрицы равен нулю (т.е. ранг матрицы должен быть меньше порядка матрицы)?
- с помощью команд меню;
- с помощью оператора символьного вывода , ключевых слов символьного процессора и обычных формул. Оператор символьного вывода можно ввести несколькими способами: с помощью клавиш Ctr+ , с панелей или
- Simplify (Упростить)
- Transpose (транспонирование)
- Invert (Обратная матрица)
- Determinant (Определитель)
- Вставить шаблон из панели Calculus, заполнить его и применить команду из меню
- Вставить шаблон из панели Calculus, заполнить его и применить команду символьного вывода или ключевое слово simplify c панели Symbolics (кардинальская шапка);
- Набрать выражение для функции, выделить переменную, по которой необходимо провести операцию дифференцирования и дать команду из меню
- Что такое символьные вычисления? Какие способы символьных вычислений имеются в системе MathCAD? В чем преимущество вычислений с помощью оператора символьного равенства перед вычислениями с помощью меню Symbolic?
- Какой оператор осуществляет численные вычисления? И какой – символьные вычисления?
- Какие алгебраические символьные вычисления может делать система MathCAD? Можно ли вычислить сумму или произведение ряда с помощью оператора численного вычисления, если верхний предел равен ?
- Какие матричные операции можно осуществить символьно?
- Какие операторы предусмотрены для вычисления пределов в MathCADе? Можно ли вычислить предел численно?
- Как осуществляется вычисление предела последовательности? Функции в точке, когда функция непрерывна, и в точках разрыва? Как можно обойти на графике особые точки функции (типа 0/0)?
- Назовите три способа символьного дифференцирования. Приведите пример. Как можно определить производную в точке? Влияют ли константы TOL и CTOL на точность численного дифференцирования? Как можно определить производную вблизи точки разрыва?
- Как вычисляются в MathCADе производные высших порядков и частные производные? Производные только каких порядков можно вычислить численно и почему?
- Что такое численное интегрирование в MathCADе и как оно осуществляется? С помощью какой встроенной переменной можно контролировать точность численного интегрирования? От чего еще зависит точность численного интегрирования?
- Назовите три способа символьного вычисления неопределенного интеграла в системе MathCAD. Приведите пример. Как осуществляется вычисление определенного интеграла с помощью оператора символьного равенства?
- Как вычисляются интегралы с параметром, расходящиеся интегралы, кратные интегралы?
- Как можно с помощью символьного процессора рассчитать численное значение выражения (вещественное или комплексное)?
- Как создаются последовательности символьных команд? Приведите примеры.
- Как решаются в MathCADе уравнения, неравенства и системы уравнений в символьной форме?
- задачи Коши , для которых определены начальные условия на искомые функции, т.е. заданы значения этих функций в начальной точке интервала интегрирования уравнения;
- краевые задачи , для которых заданы определенные соотношения сразу на обеих границах интервала.
- ключевое слово given;
- ОДУ и начальные условия, записанные с помощью логического равенства;
- встроенная функция Odesolve(x, b) относительно независимой переменной x на интервале [a, b]; b – верхняя граница отрезка интегрирования. Допустимо и даже предпочтительнее задание функции Odesolve(a, b, step) с тремя параметрами, где step – внутренний параметр численного метода, определяющий количество шагов; чем больше step, тем с лучшей точностью будет получен результат, но тем больше времени будет затрачено на его поиск.
- rkfixed – метод Рунге-Кутта с фиксированным шагом интегрирования. Самый простой и быстрый метод, но далеко не всегда самый точный. Полностью аналогичен использованию функции Odesolve с выбранным в контекстном меню методом Fixed.
- Rkadapt – метод Рунге-Кутта с переменным шагом интегрирования. Величина шага адаптируется к скорости изменения функции решения. Данный метод позволяет эффективно находить решения уравнений, в случае если оно содержит как плавные, так и быстро меняющиеся участки. Там, где решение меняется слабо, шаги выбираются более редкими, а в областях его сильных изменений – частыми. В результате для достижения одинаковой точности требуется меньшее число шагов, чем для rkfixed. Полностью аналогичен использованию функции Odesolve с выбранным в контекстном меню методом Adaptive.
- Bulstoer – метод Булирша – Штера. Этот метод более эффективен, чем метод Рунге-Кутта, в случае если решение является плавной функцией.
- y – вектор начальных значений неизвестных функций, входящих в систему. В случае одного уравнения и одной неизвестной функции – это просто число.
- а – начало отрезка, на котором ищется решение системы (отрезка интегрирования). Именно в этой точке значения неизвестных функций принимаются равными элементам вектора y.
- b – конец отрезка интегрирования.
- n – количество частей, на которые разбивается отрезок [a, b] при решении системы. Чем больше это число, тем точнее получается решение, но расчет занимает больше времени.
- F(x,y) – векторная функция, элементы которой содержат правые части уравнений системы в нормальной форме (когда левые части – первые производные от соответствующих функций, а в правых частях производные отсутствуют). Аргументами этой функции являются вектор y, элементы которого соответствуют различным неизвестным функциям системы, и скалярный аргумент x , соответствующий независимой переменной в системе. В случае одного уравнения функция F может быть скалярной функцией, зависящей от двух скалярных переменных x и y.
- Radau – метод Radaus для жестких систем. Полностью аналогичен использованию функции odesolve с выбранным в контекстном меню методом Stiff.
- Stiffb – метод Булирша-Штера, адаптированный для жестких систем.
- Stiffr – метод Розенброка.
- Задайте вектор v с количеством элементов равным количеству недостающих начальных условий. Значения элементов этого вектора – это начальные приближения, исходя из которых будет происходить поиск недостающих начальных условий. На данном этапе не конкретизируется, какой из элементов вектора будет соответствовать начальному значению той или иной неизвестной функции в задаче.
- Задайте функцию F(x,y). Эта функция уже описывалась выше. Она представляет собой вектор, каждый элемент которого – это правая часть одного из уравнений системы.
- Задайте еще одну векторную функцию load(x,v). Это функция от скалярного аргумента x и вектора v, который имеет столько же компонент, сколько недостающих начальных условий в системе. Сам вектор load должен содержать такое же количество элементов, как и вектор F, т.е. столько, сколько должно быть начальных условий в задаче. Если начальное значение какой-либо из функций известно, то соответствующий элемент вектора load должен содержать это значение. Для функций, начальное значение которых неизвестно, соответствующий элемент вектора load должен содержать один из элементов вектора v.
- Следует задать еще одну некоторую функцию score(x,y). Аргументы этой функции – скаляр x и вектор y, который имеет столько элементов, сколько уравнений в системе. Количество компонент вектора score должно равняться количеству граничных условий, заданных в конечной точке отрезка интегрирования. На самом деле каждая компонента этого вектора задает одно из граничных условий в конечной точке. Например, если в задаче есть граничной условие y i (b)=c, то один из элементов вектора score должен быть функцией, которая обращается в нуль при значениях x=b и y(b)=c. Конкретный вид этой функции не играет особой роли, поэтому проще всего задавать ее в таком виде: score k (x,y):=y i -c. Таким же образом должны быть заданы все элементы вектора score для всех конечных условий задачи.
- Теперь все введенные величины нужно использовать как аргументы в функции sbval. Использование этой функции выглядит следующим образом: Y:=sbval(v,a,b,F,load,score). Аргументы a и b – это начало и конец отрезка интегрирования.
- Результатом функции sbval будет вектор, содержащий недостающие начальные значения. Их последовательность задается той последовательностью, в которой были использованы компоненты вектора v в функции load.
- Постройте вектор начальных значений, используя известные начальные значения, а также элементы вектора Y, там где значения были неизвестны.
- Теперь можно решить полученную задачу как задачу Коши, с помощью, например, функции Rkadapt.
- параболические – содержащие первую производную по одной переменной и вторую – по другой, причем все эти производные входят в уравнение с одинаковым знаком;
- гиперболические – содержащие первую производную по одной переменной и вторую – по другой, входящие в уравнения с разными знаками;
- эллиптические – содержащие только вторые производные, причем одного знака.
- Ключевое слово given
- Уравнение, которое нужно решить. Уравнение должно иметь такой вид: . Для ввода производных в данном случае нельзя пользоваться обычным оператором производной, а нужно пользоваться нижним индексом, как это обычно делается в литературе для записи уравнений в частных производных. При этом нижний индекс набирается не как числовой, а как буквенный (точка).
- Граничные условия для функции u(x,t). Если уравнение второго порядка по x, то граничных условий должно быть два. Можно использовать как граничные условия Дирихле (u(x 0 ,t) = w(t)), так и граничные условия Неймана (u x (x 0 ,t) = w(t)) или их комбинацию, как в вышеприведенном примере.
- Начальное значение для неизвестной функции – u(x,0).
- функция pdsolve(u,x,xrange,t,trange,xpts,tpts). Ее аргументы имеют следующее назначение
- u – имя функции, относительно которой решается уравнение. Для системы уравнений здесь должен быть вектор имен функций (как в odesolve).
- X- имя пространственной переменной.
- Xrange – двухкомпонентный вектор, задающий начало и конец интервала изменения пространственной переменной.
- T – имя временной переменной. Основная разница между пространственной и временной переменными в данном случае – это то, что все уравнения могут содержать только первые производные по временной переменной.
- Trange – еще один двухкомпонентный вектор. Этот вектор задает начало и конец временного интервала, на котором решается задача.
- Xpts, tpts – количество точек, разбивающих для интегрирования пространственный и временной интервалы соответственно. Эти два параметра можно не указывать, тогда количество точек будет выбрано автоматически из соображений достаточной точности. Рекомендуется задавать эти параметры во всех задачах, кроме простых, поскольку во многих случаях высокая точность вычислений теряет смысл из-за погрешности, вносимой самим методом.
- Какие дифференциальные уравнения называются ОДУ первого порядка? Высшего порядка? Что такое нормальная форма ОДУ первого и высшего порядка? К чему сводятся ОДУ высшего порядка при решении?
- Можно ли решить дифференциальные уравнения в MathCADе символьно?
- Как решаются ОДУ с помощью вычислительного блока Given/Odesolve? Какой метод решения реализует функция Odesolve? Как можно изменить метод решения для этой функции?
- Как решаются ОДУ с помощью встроенной функции rkfixed? Чем функция rkfixed отличается от функции Rkadapt?
- Как осуществляется решение системы ОДУ с помощью вычислительного блока Given/Odesolve? Приведите примеры.
- Как осуществляется решение системы ОДУ с помощью функции rkfixed? Приведите примеры.
- Какая панель служит для вставки программного кода в документ MathCAD? Можно ли операторы программирования набрать с клавиатуры?
- С какой команды начинается создание программного блока? Как с ее помощью можно создавать разветвленный программный блок?
- Что такое определение программного блока? Обращение к программному блоку?
- Что такое глобальные и локальные переменные для программного блока? Что может содержать последняя строка программного блока?
- Как работает оператор if в программном блоке? Приведите пример.
- Создание цикла с параметром в программном блоке. Приведите пример.
- Создание цикла while в программном блоке. Приведите пример.
- Для чего служат операторы break, continue в программном блоке? Приведите примеры.
- Как работает оператор return в программном блоке? Приведите пример.
- Как осуществляется обработка ошибок в программном блоке? Приведите пример.
- решение нелинейных (алгебраических и трансцендентных) уравнений;
- вычисление определенных интегралов;
- решение обыкновенных дифференциальных уравнений;
- решение дифференциальных уравнений в частных производных;
- решение задач оптимизации;
- обработка массивов числовых данных.
- lspline(vx,vy) – в начальной и конечной точках накладывается условие линейности, т.е. вторая производная от функции равна нулю. Первая буква в названии функции – l , означает linear (линейный).
- pspline(vx,vy) – на первом и последнем интервале кривая является параболой, т.е. полиномиальный коэффициент при x 3 равен нулю. Буква p означает parabolic (параболический).
- cspline(vx,vy) – полиномиальные коэффициенты при x 3 на первых двух интервалах равны между собой точно так же, как на последних двух интервалах. Буква c означает cubic (кубический).
- expfit(vx,vy,vg) – регрессия экспоненциальной функцией y = a*e b * x +c.
- sinfit(vx,vy,vg) – регрессия синусоидальной функцией y = a*sin(x+b)+c.
- pwrfit(vx,vy,vg) — регрессия степенной функцией e = a*x b +c.
- medsmooth(vy,n) – реализует алгоритм «бегущих» медиан. Параметр n определяет ширину «окна» сглаживания, т.е. количество точек, которые используются при вычислении сглаженного значения в каждой точке. Параметр n должен быть целым нечетным числом. Данный алгоритм лучше всего подходит для сглаживания наборов точек, в которых лишь некоторые точки резко выбиваются из общей гладкой последовательности (см.рис.13).
- ksmooth(vx,vy,b) – алгоритм Гауссового ядра. В данном алгоритме сглаженное значение в каждой точке вычисляется как весовое среднее от всего набора данных с ядром в виде функции Гаусса. Параметр b — это параметр ширины функции ядра. Данный метод наилучшим образом подходит для фильтрации зашумленного сигнала (см.рис.14).
- supsmooth(vx,vy) – в данном алгоритме значение в каждой точке заменятся на значение регрессионной прямой, построенной с использованием некоторого количества близлежащих точек, причем данное количество выбирается по-разному для каждой точки с помощью адаптивного алгоритма.
- В том случае, если набор данных v состоит из 2 m элементов, а также все числа в наборе данных действительны, то для проведения Фурье-преобразования следует пользоваться функциями fft(v) или FFT(v). Обе эти функции выполняют Фурье-преобразование, а различие между ними заключается лишь в нормировке результата. Результатом функций fft и FFT будет массив из 2 m -1 +1 комплексных чисел.
- Если какое-либо из условий, перечисленных выше, не выполняется, т.е. массив содержит комплексные числа или не может быть расширен до размерности 2 m , то следует пользоваться функциями cfft(v) и CFFT(v). Результатом функций cfft и CFFT будет массив комплексных чисел той же размерности, что и исходный.
Похожие страницы:
Система Mathcad. Основні математичні операції
Лекция >> Математика
Лекція №9. Система Mathcad. Основні математичні операції План . 1. Алгебричні обчислення. Кожен оператор в Mathcad означає деяку математичну дію у вигляді символу . Розглянемо більш детально дію операторів MathCad. Арифметичні оператори Оператори, які .
Система Mathcad. Побудова графіків
Лекция >> Математика
Лекція №10. Система Mathcad. Побудова графіків План Використання . функцій та побудова їх графіків засобами MathCad. Побудова найпростіших діаграм. 1. . Розглянемо розв’язування цієї задачі засобами MathCad на прикладі. Приклад 1. Виконати табулювання .
Система Mathcad. Розв’язування задач оптимізації
Лекция >> Математика
Лекція 12. Система Mathcad. Розв’язування задач оптимізації . розв’язування транспортної задачі в середовищі Mathcad. 1. Пошук екстремуму функції Задачі пошуку . знаходження локального та глобального екстремуму. В Mathcad за допомогою вбудованих функцій розв .
Сучасні системи математичної обробки інформації. Система Mathcad. Програмування в середовищі Mathcad
Лекция >> Информатика, программирование
. інформації. Система Mathcad. Програмування в середовищі Mathcad 7.1. Сучасні системи математичної обробки інформації. Система Mathcad З появою . вікна про версію системи Mathcad та її розробників; Register Mathcad (Зарегистрировать Mathcad) – реєстрац .
Основні процедури системи Mathcad
Реферат >> Астрономия
. на тему: Основні процедури системи Mathcad Математичний вираз у Mathcad‘і є дійсно чудовим об . ками у робочих аркушах Mathcad‘а і т. і. Робота з областями Mathcad‘а Кожне рівняння, . оточений синім прямокутником. У Mathcad‘і цей квадрат зветься міткою- .
