Перейти к содержимому

Как задать кусочную функцию в mathcad

  • автор:

Как задать кусочную функцию в mathcad

Графики > Графики XY > Функции распечатки > Пример. Построение графиков неравенств и кусочных функций

Пример. Построение графиков неравенств и кусочных функций
Используйте графики для визуального представления неравенств и кусочных функций.
Неравенства

1. Введите на пустом графике неравенство в выражение оси y и соответствующую независимую переменную в выражение оси x.

Щелкните для копирования этого выражения

Поскольку неравенство является логическим выражением, PTC Mathcad строит график истинных значений r (>2.5) и ложных значений r (<2.5). Неравенство равно 1, когда оно истинно, и равно 0, когда ложно.

2. Используйте оператор И для добавления второго неравенства к первому.

Щелкните для копирования этого выражения

Кусочные функции

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

1. Задайте функцию и постройте ее график в определенном диапазоне.

Щелкните для копирования этого выражения

Щелкните для копирования этого выражения

Щелкните для копирования этого выражения

2. Задайте кусочную функцию, равную f(x) , только когда f(x) > 0 , и постройте ее график.

Щелкните для копирования этого выражения

Щелкните для копирования этого выражения

3. Используйте оператор И для задания диапазона x , в котором строится график функции f(x) . Для других значений x постройте график отрицательной величины функции f .

Как задать кусочную функцию в mathcad

Щелкните для копирования этого выражения

2. Используйте функцию sign , чтобы увидеть, являются ли разные значения, возвращенные функцией f , положительными, отрицательными или равными 0.

Щелкните для копирования этого выражения

Щелкните для копирования этого выражения

Щелкните для копирования этого выражения

3. Используйте дельта-функцию Кронекера ( δ ), чтобы увидеть, возвращает ли функция одно и то же значение для двух результатов.

Щелкните для копирования этого выражения

Щелкните для копирования этого выражения

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

Щелкните для копирования этого выражения

Щелкните для копирования этого выражения

Щелкните для копирования этого выражения

Использование антисимметричной тензорной функции (ε)
1. Используйте антисимметричную тензорную функцию ( ε ).

Щелкните для копирования этого выражения

Щелкните для копирования этого выражения

Если аргументы функции являются четной перестановкой (0,1,2), функция возвращает 1. Для нечетных перестановок функция возвращает -1.

Как задать кусочную функцию в mathcad

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

Реализуем данный расчёт в MathCAD, задав абсциссы и ординаты известных точек векторами X и Y соответственно. Предположим при этом, что одинаковых значений среди Xi нет, и они уже упорядочены по возрастанию. Если это не так, добавьте решение из этой записи блога.

Подпрограмма PieceLinear по заданным векторам значений X и Y вычисляет значение кусочно-линейной функции в точке x малое. Учитывается, что x может совпасть с одним из узлов или оказаться меньше (больше) диапазона известных значений X .

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

По этим данным можно, например, построить график, добавить на него исходные точки и убедиться, что всё «линеаризовано» верно.

Программирование в MathCAD.

Для написания программ служит панель математических инструментов Programming, которая может быть вызвана щелчком на соответствующей кнопке панели инструментов Math. После щелчка на любой кнопке панели инструментов Programming в программу вставляется тот или иной оператор.

Все операторы вставляются только щелчком на соответствующей кнопке и ни в коем случае не набираются с клавиатуры.

1. Создание программы.

Для того, чтобы превратить обычное однострочное выражение в многострочное (программу), достаточно щелкнуть на кнопке с надписью Add Line. Это приведет к тому, что в рабочей области документа появится вертикальная черта, а справа от нее 2 поля ввода, в которые можно ввести 2 строки программы. Если далее нужно будет добавить еще строки, то достаточно снова щелкнуть на кнопке Add Line.

Внутри программы можно использовать глобальные переменные, но лучше использовать локальные (доступ к которым можно осуществить только из самой программы). Для присваивания значения локальной переменной используется символ ←.

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

2. Условный оператор.

Для проверки условий в MathCAD служит оператор if. Этот оператор имеет 2 поля ввода (справа и слева от слова if). В правое поле ввода вводится условие, а в левое поле ввода вводится команда или последовательность команд, которые следует выполнить в случае истинности условия. Если невыполнение условия должно привести к выполнению какого-либо другого программного кода, можно в строке, следующей за оператором if, вставить оператор otherwise. В поле ввода слева от этого оператора необходимо ввести строку программы, которая будет выполняться только в том случае, если не выполнилось условие, заданное в операторе if.

Если в программе введено подряд несколько строк с оператором if, то выражение слева от otherwise ,будет выполнено только в том случае, если не выполняются условия, заданные во всех операторах if.

Рассмотрим, например, описание кусочно-заданной функции:

Оператор while имеет 2 поля ввода (справа и снизу).

· В поле ввода справа от слова while следует ввести условие, при истинности которого выполняется цикл..

· В поле ввода ниже слова while следует ввести тело цикла – одна или несколько строк программы (для введения нескольких строк используется оператор Add Line), выполнение которых нужно повторить несколько раз.

Рассмотрим использование цикла while для вычисления приближенного значения квадратного корня (методом касательных):

Оператор for имеет три поля ввода :

· В поле ввода между словом for и знаком , следует указать имя переменной-счетчика.

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

· В поле ввода под словом for следует ввести тело цикла.

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

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

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

6. Обработка ошибок.

Система MathCAD предоставляет пользователю возможность перенаправлять программу в случае возникновения ошибки (деление на 0, выход за пределы массива). Для этого существует оператор on error, который содержит 2 поля ввода (справа и слева):

— Справа вводится выражение, которое следует вычислить

— Слева вводится выражение, которое следует вычислить, если в правом выражении окажется ошибка.

Например, рекурсивная программа вычисления факториала выдает ошибку для вычисления факториала нецелых и отрицательных чисел. Изменим программу так, чтобы в таких случаях факториал был равен 0:

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

error (“[текст ошибки]”) if [условие]

7. Программы, составленные из нескольких операторов.

MathCAD имеет возможность написания различных программ, содержащих несколько операторов, при этом операторы могут быть вложены друг в друга, если в какой-то оператор вложено несколько операторов, то их нужно объединять вертикальной линией (Add Line).

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

Контрольные задания.

1. Построить график кусочно-заданной функции

2. Решить задачу, используя цикл while.

Варианты:

1. 8. Человек открыл счет в банке, вложив n руб. Через каждый месяц размер вклада увеличивается на p % от имеющейся суммы. Написать функцию, вычисляющую, какая сумма будет лежать у этого человека в банке через год.

2. 9. Человек открыл счет в банке, вложив n руб. Через каждый месяц размер вклада увеличивается на p% от имеющейся суммы. Написать функцию, определяющую, за какой месяц величина ежемесячного увеличения вклада превысит k руб.

3. 10. Человек открыл счет в банке, вложив n руб. Через каждый месяц размер вклада увеличивается на p % от имеющейся суммы. Написать функцию, вычисляющую, через, сколько месяцев размер вклада превысит k руб.

4. 11. Начав тренировки, лыжник в первый день пробежал n км. Каждый следующий день он увеличивал длину пробега на p% от пробега предыдущего дня. Написать функцию, вычисляющую, в какой день он пробежит больше k км.

5. 12. Начав тренировки, лыжник в первый день пробежал n км. Каждый следующий день он увеличивал длину пробега на p% от пробега предыдущего дня. Написать функцию, вычисляющую, в какой день суммарный пробег за все дни превысит k км.

6. 13. Один человек имеет n тыс.руб., он хочет купить машину за m тыс.руб., для этого кладет все свои деньги в банк под k% годовых, но в результате инфляции машина дорожает каждый год на p%. Написать функцию, вычисляющую, через сколько лет этот человек сможет купить машину?

7. 14. В некотором году (назовем его условно первым) на участке в n га средняя урожайность ячменя составила m центнеров с га. После этого каждый год площадь участка увеличивалась на p%, а средняя урожайность – на k%. Определить, в каком году общий урожай, собранный за все время, начиная с первого года, превысит s центнеров.

22. Построение графиков кусочно-непрерывных функций

Последовательность действий для построения графика кусочно-непрерывной функции такова:

Q с помощью программного фрагмента задать кусочно-непрерывную функцию (см. тему 4), например,

;

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

Q построить график заданной функции (см. краткие теоретические сведения темы 5);

Q двойным щелчком мыши по области графика открыть окно форматирования;

Q для нанесения вспомогательных линий щелчком мыши установить флажок переключателя Crid Lines для каждой оси;

Q для ввода названий осей и самого графика в окне форматирования выбрать закладку Labels, ввести заголовок графика в поле Title и установить флажок переключателя Show Title;

Q ввести названия осей в полях ввода панели Axis Labels;

Q для изменения толщины линии выбрать закладку Traces И задать толщину линии графика, используя список поля Weight :

;

Q закрыть окно форматирования графика нажатием кнопки ОК.

Пример 5.2 Построить график кусочно-непрерывной функции .

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

Похожие публикации:

  1. Как выставить интервал 1 5 в ворде
  2. Как сделать в ворде одинаковый интервал между строками
  3. Как загрузить гугл хром последнюю версию бесплатно
  4. Как скопировать таблицу на телефоне

Как задать кусочную функцию в mathcad

Создание двумерных графиков в MathCad, графики кусочно-непрерывных функций

Nunber of Grids (Число интервалов) — установка заданного числа масштабных линий.

Boxed (Рамка) — оси в виде прямоугольника;

Crossed (Репер) — оси в виде креста;

None (Ничего) — отсутствие осей;

При форматировании линий графика выбирается закладка Traces в окне форматирования, вид окна форматирования линий приведен ниже.

Legend Label (Имя кривой) — указание названий линий в легенде графика;

Symbol (Маркер) — установка символа отметки базовых точек графика;

Line (Линия) — установка типа линий;

Color (Цвет) — установка цвета линии и базовых точек;

Type (Тип) — тип графиков;

Weight (Толщина) — толщина линий.

Hide Argument — скрываются обозначения математических выражений по осям графика;

Hide Legend — скрываются обозначения имен кривых графика.

Обработка внешних файлов в Mathcad

Символьные вычисления в MathCad

Модуль 2. Численные методы

Определение численных методов. Классификация численных методов*

Численные методы решения уравнений*

Метод простой итерации

В основе метода заложено понятие сжимающего отображения. Определим терминологию:

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

Тогда основная теорема будет выглядеть так:

Теорема Банаха (принцип сжимающих отображений). Если — сжимающее отображение на , то:

— корень;

итерационная последовательность сходится к этому корню;

для очередного члена справедливо .

Поясним смысл параметра . Согласно теореме Лагранжа имеем:

Отсюда следует, что . Таким образом, для сходимости метода достаточно, чтобы

и так далее, пока

[править] Применительно к СЛАУ

Для неё итерационное вычисление будет выглядеть так:

Сходимость метода будет осуществлять

Следует отметить, что для оценки сходимости вычисляется не определитель матрицы, а норма матрицы. Поэтому в данном случае поставлены двойные вертикальные черты, а не одинарные.

[править] Алгоритм

Условие преобразуется к виду , где — сжимающая

Задаётся начальное приближение и точность

Вычисляется очередная итерация

Если , то и возврат к шагу 3.

Иначе и остановка.

Численные методы решения систем уравнений*

Решения матричных уравнений.

Матричные уравнения решаются при помощи обратных матриц. Уравнение решается следующим образом. Пусть матрица А — невырожденная (D ? 0), тогда существует обратная матрица А-1. Умножив на нее обе части матричного уравнения, имеем А-1(АХ) = А-1В. Используя сочетательный закон умножения, перепишем это равенство в виде

Поскольку А-1 А = Е и ЕХ = Х, находим:

Такимобразом, чтобы решить матричное уравнение, нужно:

1. Найти обратную матрицу А-1.

2. Найти произведение обратной матрицы А-1 на матрицу столбец свободных членов В, т. е А-1В.

Пользуясь определением равных матриц, записать ответ.

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

К численным методам решения систем линейных уравнений относят такие как:метод Гаусса, метод Крамера, итеративные методы. В методе Гаусса, например, работают над расширенной матрицей системы. А в методе Крамера — с определителями системы, образованными по специальному правилу.

Метод Крамера.

При решении систем линейных уравнений по методу Крамера последовательно выполняется следующий алгоритм:

1. Записывают систему в матричном виде (если это еще не сделано).

2. Вычисляют главный определитель системы:

3. Вычисляют все дополнительные определители системы:

4. Если главный определитель системы не равен нулю, то выполняют пункт 5. Иначе рассматривают вопрос о разрешимости данной системы (имеет бесчисленное множество решений или не имеет решений). Находят значения всех неизвестных по формулам Крамера для решения системы n линейных уравнений с n неизвестными, которые имеют вид:

Методы численного интегрирования*

Метод прямоугольников.

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

Метод трапеций.

Аппроксимация в этом методе осуществляется полиномом первой степени. Суть метода ясна из рисунка.

Метод Симпсона.

П одынтегральная функция f(x) заменяется интерполяционным полиномом второй степени P(x) – параболой, проходящей через три узла, например, как показано на рисунке ((1) – функция, (2) ­– полином).

MathCAD. MatLab

Эта задача решается аппроксимацией исходной зависимости, т. е. ее подменой какой-либо достаточно простой функцией. Система MathCAD предоставляет возможность аппроксимации двух типов: кусочно-линейной и сплайновой.

При кусочно-линейной интерполяции, или аппроксимации, вычисления дополнительных точек выполняются по линейной зависимости. Графически это означает просто соединение узловых точек отрезками прямых, для чего используется следующая функция:
linterp(VX, VY, х)
Для заданных векторов VX и VY узловых точек и заданного аргумента х эта функция возвращает значение функции при ее линейной аппроксимации. При экстраполяции используются отрезки прямых с наклоном, соответствующим наклону крайних отрезков при линейной интерполяции.

Одномерная сплайн-интерполяция и сплайн-аппроксимация.

При небольшом числе узловых точек (менее 10) линейная интерполяция оказывается довольно грубой. Для целей экстраполяции функция linterp не предназначена и за пределами области определения может вести себя непредсказуемо.
Гораздо лучшие результаты дает сплайн-аппроксимация. При ней исходная функция заменяется отрезками кубических полиномов, проходящих через три смежные узловые точки. Коэффициенты полиномов рассчитываются так, чтобы непрерывными были первая и вторая производные.

Для осуществления сплайновой аппроксимации система MathCAD предлагает четыре встроенные функции. Три из них служат для получения векторов вторых производных сплайн-функций при различном виде интерполяции:
cspline(VX, VY) — возвращает вектор VS вторых производных при приближении в опорных точках к кубическому полиному;
pspline(VX, VY) — возвращает вектор VS вторых производных при приближении к опорным точкам параболической кривой;
lspline(VX, VY) — возвращает вектор VS вторых производных при приближении к опорным точкам прямой.
Наконец, четвертая функция
interp(VS, VX, VY, x)-возвращает значение у (х) для заданных векторов VS, VX, VY и заданного значения x.

Как задать кусочную функцию в mathcad

БлогNot. Кусочно-линейная интерполяция в MathCAD

Кусочно-линейная интерполяция в MathCAD

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

Реализуем данный расчёт в MathCAD, задав абсциссы и ординаты известных точек векторами X и Y соответственно. Предположим при этом, что одинаковых значений среди Xi нет, и они уже упорядочены по возрастанию. Если это не так, добавьте решение из этой записи блога.

Подпрограмма PieceLinear по заданным векторам значений X и Y вычисляет значение кусочно-линейной функции в точке x малое. Учитывается, что x может совпасть с одним из узлов или оказаться меньше (больше) диапазона известных значений X .

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

По этим данным можно, например, построить график, добавить на него исходные точки и убедиться, что всё «линеаризовано» верно.

22. Построение графиков кусочно-непрерывных функций

Последовательность действий для построения графика кусочно-непрерывной функции такова:

Q с помощью программного фрагмента задать кусочно-непрерывную функцию (см. тему 4), например,

;

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

Q построить график заданной функции (см. краткие теоретические сведения темы 5);

Q двойным щелчком мыши по области графика открыть окно форматирования;

Q для нанесения вспомогательных линий щелчком мыши установить флажок переключателя Crid Lines для каждой оси;

Q для ввода названий осей и самого графика в окне форматирования выбрать закладку Labels, ввести заголовок графика в поле Title и установить флажок переключателя Show Title;

Q ввести названия осей в полях ввода панели Axis Labels;

Q для изменения толщины линии выбрать закладку Traces И задать толщину линии графика, используя список поля Weight :

;

Q закрыть окно форматирования графика нажатием кнопки ОК.

Пример 5.2 Построить график кусочно-непрерывной функции .

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

Похожие публикации:

  1. В чем измеряется аргумент обратной тригонометрической функции в mathcad
  2. Где можно просмотреть результат монтажа в windows movie maker
  3. Где скачать mathcad бесплатно
  4. Как активировать maple 13

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *