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

Как определить дискретные переменные с произвольным шагом mathcad

  • автор:

Работа с дискретными переменными в Маткад

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

где a – имя дискретной переменной,

a1 – ее начальное значение,

a2 – ее второе значение,

an – ее конечное значение.

Символ «..» набирается либо клавишей «;» на клавиатуре, либо кнопкой m..n – в палитре матриц.

31. Пакет Mathcad: характеристика встроенных функций.

Встроенные функции. Для вычисления значений наиболее распространенных математических функций в MathCAD опре- делены так называемые встроенные функции (например, вычис- ление синуса, корня квадратного и т.д.). Для обращения к функ- ции необходимо задать ее обозначение (ее имя или условный символ), а затем аргумент. Обозначение функции можно ввести с клавиатуры или с палитры инструментов (например, палитра Калькулятор содержит обозначения многих функций). Исполь- зуя встроенные функции, можно решать сложные задачи (например, построение регрессии или решить дифференциальное уравнение в частных производных). Полный список функций и их синтаксис можно получить, щелкнув на кнопке панели инструментов Стандартная. x f

Весь набор встроенных функций разбит на группы (катего- рии) в соответствии с функциональным значением. Любую встроенную функцию можно вызвать, выбрав Function в строке меню Insert (Вставка), чтобы открыть диалоговое окно Insert Function (Вставка Функций)

В окне Function Category (Категории Функций) необходимо выбрать соответствующую категорию. При этом в окне Function Name (Имя Функции) будут представлены функции MathCAD, относящиеся к данной категории. Если требуемая функция в выбранной категории не будет найдена, следует просмотреть категорию All (Все), содержащую все встроенные функции. Ес- ли вы установили дополнительный Пакет расширения, то у вас есть дополнительные встроенные функции. Они также доступны из Вставка – функция меню под названием Расширение Pack.

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

Кроме того, возможно вводить имена встроенных функций и непосредственно в документе MathCAD.

32. Пакет Mathcad: создание и использование пользовательских функций.

33. Пакет Mathcad: работа с векторами и матрицами.

При работе с массивами используются такие понятия, как скаляр, вектор и матрица. Одиночное число называется скаля- ром (в программировании – простая переменная). Общий тер- мин для вектора или матрицы – массив. В одномерном массиве (векторе) положение элемента определяется одним индексом (например,). В двумерном массиве (матрице), который имеет вид прямоугольной таблицы, положение элемента определяется двумя индексами (например,). Первый индекс определяет номер строки, а второй – номер столбца, на пересечении кото- рых находится данный элемент. Количество строк и столбцов матрицы задают размер матрицы. Вектор можно рассматривать как матрицу, содержащую один столбец. i x, ij A

Для обращения к элементу массива вводится имя массива, нажимается клавиша «левая квадратная скобка» (т.е. «[») или кнопка в палитре инструментов Matrix (рис. 3.3), а затем вводятся нужные индексы (или индексные выражения). После ввода индексов нужно выйти из строки нижних индексов, нажав клавишу.

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

В табл. 3.5. представлены векторные и матричные операто- ры MathCAD. Многие из этих операторов доступны из соответ- ствующих палитр инструментов. Отметим, что операторы, кото- рые имеют в качестве аргумента вектор, требуют вектор- столбец, а не вектор-строку.

Операторы, не перечисленные в этой таблице, не будут ра- ботать для векторов и матриц. При попытке использовать такой оператор с вектором или матрицей MathCAD будет отмечать это сообщением об ошибке «неверная операция с массивом», или «нескалярная величина». Используя оператор векторизации, можно выполнить любую скалярную операцию или функцию поэлементно с вектором или матрицей.

Введем следующие обозначения: для матриц – A и M, для векторов – v и u и для скалярных величин – z.

34. Численные расчеты в Mathcad: вычисление сумм, произведений, производных, определенных интегралов.

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

Назначение полей: 1- имя переменной, являющейся параметром суммирования; 2 – нижний предел суммирования; 3- верхний предел суммирования; выражение, зависящее от параметра суммирования.

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

Назначение полей те же, что в операторе суммы.

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

Оператор вычисления определенных интегралов. Для ввода оператора в документ необходимо щелкнуть на кнопке и заполнить поля в появившемся шаблоне

35. Пакет Mathcad: создание программных фрагментов при программировании линейных и разветвляющихся алгоритмов.

Характерной особенностью линейных алгоритмов является строго последовательное выполнение всех операций алгоритма без пропусков и повторений вычислений. Поэтому конструкции, реализующие такой алгоритм, записываются в документе MathCAD в нужном порядке их выполнения, т.е. «слева направо – сверху вниз».

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

36. Пакет Mathcad: создание программных фрагментов при программировании циклических алгоритмов.

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

Типы циклов. По способам организации цикла можно выделить:

а) цикл типа арифметической прогрессии;

б) итерационный цикл.

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

37. Пакет Mathcad: программирование алгоритмов работы с одномерными массивами.

1. установить курсор в свободное место рабочего окна

2. набрать имя массива;

3. после имени записать оператор «:=»;

4. открыть палитру матриц;

5. выбрать кнопку с изображением шаблона матрицы;

6. в появившемся окне размерности матрицы ввести

целочисленные значения количества строк и

7. заполнить полученный шаблон вектора или

матрицы исходными данными.

В системе MathCAD в основном используются массивы двух

Отсчет номеров начинается с того значения, которое содержится в системной

переменной ORIGIN. По умолчанию эта переменная имеет значение 0, для измен

значения нужно задать, например, ORIGIN:=1

Векторы и матрицы можно задавать:

с помощью кнопки с изображением матриц на наборной панели математических инструменто

как переменную с индексами перечислением элементов массива с разделение запятой;

с помощью аналитического выражения.

38. Пакет Mathcad: построение графиков, общие настройки графиков.

MathCAD позволяет обрабатывать различные виды

графической информации. Возможности системы по работе с

 построение двумерных графиков в декартовой и полярной системах

 построение трехмерных поверхностных графиков,

 внесение рисунков, созданных другими компьютерными системами;

 создание анимационных клипов.

Соответственно, графические области делятся на четыре основных типа

1. область двумерных графиков

2. трехмерных графиков

3. область внешних графических объектов

4. область анимации

В Mathcad встроено несколько различных типов

графиков, которые можно разбить на две большие

1. Двумерные графики:

 XY (декартовый) график (XY Plot);

 полярный график (Polar Plot).

2. Трехмерные графики:

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

 график линий уровня (Contour Plot);

 трехмерная гистограмма (3D Bar Plot);

 трехмерное множество точек (3D Scatter Plot);

 векторное поле (Vector Field Plot).

39. Пакет Mathcad: построение двумерных графиков.

К двумерным графикам относят графики в декартовой и

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

Созданный однажды график одного типа нельзя

переделать в график другого типа.

Для построения XY-графика необходимы два ряда

данных, откладываемых по осям х и Y.

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

41. Пакет Mathcad: решение уравнений с использованием функции root.

Функция root (f(z),z,a,b) возвращает скаляр z, при котором выражение или

скалярная функция f(z) обращается в ноль на интервале [a,b]. Варьируя

начальное приближение z, MathCAD будет пытаться найти такое значение

функции, при котором функция f(z) TOL, где TOL – встроенная переменная,

указывающая заданную степень точности (по умолчанию TOL=10^-3.

Если интервал [a,b] не указан, то перед использованием функции root()

используют метод секущей. Начальное приближение, заданное

пользователем, становится первым приближением при поиске корня.

Если процесс сходится, то итерация заканчивается, когда значение f(x)

становится меньше TOL. Если процесс расходится и MathCAD не может

найти корень, итерация прекращается и выдается сообщение – ―Cannot

evaluate this accurately at one or more of the values you specified‖ – «Не могу это

вычислить точно по одной или более переменным, которые вы указали».

42. Пакет Mathcad: решение уравнений с использованием функции polyroots.

Если f(x) представляет собой полином и его

коэффициенты, начиная со свободного члена,

можно представить в виде вектора v, то для поиска

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

использовать функцию polyroots(v).

В отличие от функции root, polyroots не требует

начального приближения и вычисляет сразу все

корни, как вещественные, так и комплексные

43. Пакет Mathcad: численное решение уравнений и систем уравнений с использованием блока решения (конструкция Given – Find).

Для решения системы нелинейных уравнений и неравенств (до 50 уравнений и

неравенств) можно использовать блок Given – Find ().

Перед блоком записываются начальные приближения всех неизвестных.

Между ключевыми словами Given – Find () записывается система уравнений и

неравенств (в уравнениях должен быть знак равенства через Ctrl+= или). Число

уравнений должно быть равно числу неизвестных.

Функция Find () имеет следующий формат: Find (z1,z2,z3,…..), где z1,z2,z3,… —

искомые переменные. Если функция Find () имеет более одного аргумента, то она

возвращает ответ в виде вектора.

44. Пакет Mathcad: решение системы линейных уравнений методом Крамера.

етод Крамера состоит из следующих действий:

Составим матрицу системы.

 Составим вектор правых частей.

 Проверяем неравенство детерминанта матрицы системы нулю

(необходимо, потому что далее производится деление на детерминант

матрицы системы [деление на ноль запрещено]. Если детерминант

матрицы системы равен нулю, то можно сделать вывод, что система

имеет множество решений). Если детерминант матрицы не равен 0, то

выполняем следующие действия:

 Для вычисления первой, второй и третьей неизвестной подставляем

вектор правых частей в первую, вторую или третью колонку матрицы

 Вычисляем детерминант полученной матрицы.

 Делим полученный детерминант на детерминант матрицы системы.

 Записываем, найденную неизвестную, в вектор.

45. Пакет Mathcad: решение системы линейных уравнений с использованием функции lsolve.

Для решения системы линейных уравнений,

коэффициенты которых можно записать в виде

матрицы А и свободные члены в виде вектора В,

целесообразно использовать встроенную функцию

lsolve(A,B). Она возвращает вектор неизвестных

скалярных величин, удовлетворяющих данной

системе линейных уравнений.

Воспользуйтесь поиском по сайту:

studopedia.org — Студопедия.Орг — 2014-2023 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.008 с) .

Определение дискретного аргумента

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

Переменная типа дискретный аргумент принимает диапазон значений, например, все целые числа от 0 до 10. Если в выражении присутствует дискретный аргумент, то MathCad вычисляет выражение столько раз, сколько значений содержит дискретный аргумент.

Например, надо вычислить результаты для диапазона значений t от 10 до 20 с шагом 1. Это делается следующим образом:

Сначала указывается первое значение диапазона, затем – второе, в данном случае 11, а затем нажать на клавишу (;), чтобы получить изображение многоточия и ввести последнее значение диапазон

Пример: t:=10,11..20

t:=10,11..20 Уравнение движения тела, падающего в поле силы

Если нажать после выражения знак =, то получим следующую

таблицу вычисленных значений:

-490 -502.9 -706.6 . . . -1.96 . 10 3

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

Создание вектора или матрицы

Одиночное число в MathCad называется скаляром. Столбец чисел называется вектором, а прямоугольная таблица чисел – матрицей. Общий термин для вектора или матрицы – массив. Имеются два способа создать массив:

§ Заполняя массив пустых полей из меню Математика Матрица

§ Используя дискретный аргумент, чтобы определить элементы с его помощью.

§ Считывая элементы массива из файлов данных.

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

Создание вектора

1. Математика è Матрицы (CTRL/M) Появляется диалоговое окно.(Insert – matrix)

2. Укажите число строк, равное числу элементов вектора, в поле «Строк», например, 3

3. Напечатайте 1 в поле «Столбец» и нажмите «Создать». MathCad создаст вектор с пустыми полями для заполнения.

4. Заполните поля и щелкнув мышью (Tab) – переход на другое поле.

Добавить другой вектор

— выделите вектор в рамочку

— Напечатайте знак +. MathCad показывает поле для второго вектора

— Математика è Матрицы Создайте другой вектор с тремя элементами

— Введите значения в поля и нажмите =, чтобы увидеть результат

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

Матрица создается так же как вектор.

Вектор – столбец идентичен матрице с одним столбцом. Можно также создать вектор-строку, создав матрицу с одной строкой и многими столбцами.

При работе с векторными аргументами, всегда подразумевают вектор-столбец. Чтобы превратить вектор-строку в вектор-столбец используйте оператор транспонирования (CTRL+1)

2. Приоритеты операций и порядок вычислений. Правила вычисления выражений с логическими операциями. (предыдущий билет). Операция преобразования типов. Автоматическое преобразование типов.

Операция явного преобразования типа

() Операция преобразования (или приведения) типа.

Эта бинарная операция в контексте так называемого постфиксного выражения и в контексте выражения приведения обеспечивает изменение типа значения выражения, представляемого вторым операндом. Информация о типе, к которому преобразуется значение второго операнда, кодируется первым выражением, которое является спецификатором типа. Например, (int)d;

Приведение типов.

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

В результате выполнения 4-й строчки этой программы произойдёт приведение значения переменной типа double к типу int, которое потом запишется в переменную i, в результате чего там окажется значение 3. Здесь (int) – оператор приведения типов.

Справедливости ради следует сказать, что даже если бы записали просто i=a; то в i всё равно бы записалось 3, значение было бы преобразовано за счёт автоматического приведения типов (это будет рассмотрено ниже).

Автоматическое преобразование типов

Преобразование типов в арифметических выражениях осуществляются автоматически к наивысшему типу. Например, в ходе операции с операндами типов double и int операнд типа int будет преобразован к double.

Преобразование типов при присваивании

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

Преобразование целых типов данных происходит по следующим правилам:

· Если значение попадает в новый диапазон, то новое значение = старому с точностью до типа;

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

Преобразование вещественных типов:

· Значения типа float преобразуются к типу double без потери точности. Значения типа double при преобразовании к типу float представляются с некоторой потерей точности. Е

· Если порядок значения типа double слишком велик для представления значением типа float, то происходит потеря значимости.

Преобразование к целым типам значений с плавающей точкой (в 2 приёма):

· Сначала производится преобразование к типу long. Дробная часть плавающего значения отбрасывается при преобразовании к типу long.

· Затем это значение типа long преобразуется к требуемому типу. Если полученное значение слишком велико для типа long, то результат преобразований не определён.

Билет

Mathcad: Символьные и численные вычисления. Задание точности численных операций. Примеры символьных и численных вычислений. (Лекция маткад, конец)

Лекция: Работа с дискретными переменными в Маткад

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

где a – имя дискретной переменной,

a1 – ее начальное значение,

a2 – ее второе значение,

an – ее конечное значение.

Символ «..» набирается либо клавишей «;» на клавиатуре, либо кнопкой m..n – в палитре матриц.

31. Пакет Mathcad: характеристика встроенных функций.

Встроенные функции. Для вычисления значений наиболее распространенных математических функций в MathCAD опре- делены так называемые встроенные функции (например, вычис- ление синуса, корня квадратного и т.д.). Для обращения к функ- ции необходимо задать ее обозначение (ее имя или условный символ), а затем аргумент. Обозначение функции можно ввести с клавиатуры или с палитры инструментов (например, палитра Калькулятор содержит обозначения многих функций). Исполь- зуя встроенные функции, можно решать сложные задачи (например, построение регрессии или решить дифференциальное уравнение в частных производных). Полный список функций и их синтаксис можно получить, щелкнув на кнопке панели инструментов Стандартная. x f

Весь набор встроенных функций разбит на группы (катего- рии) в соответствии с функциональным значением. Любую встроенную функцию можно вызвать, выбрав Function в строке меню Insert (Вставка), чтобы открыть диалоговое окно Insert Function (Вставка Функций)

В окне Function Category (Категории Функций) необходимо выбрать соответствующую категорию. При этом в окне Function Name (Имя Функции) будут представлены функции MathCAD, относящиеся к данной категории. Если требуемая функция в выбранной категории не будет найдена, следует просмотреть категорию All (Все), содержащую все встроенные функции. Ес- ли вы установили дополнительный Пакет расширения, то у вас есть дополнительные встроенные функции. Они также доступны из Вставка – функция меню под названием Расширение Pack.

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

Кроме того, возможно вводить имена встроенных функций и непосредственно в документе MathCAD.

32. Пакет Mathcad: создание и использование пользовательских функций.

33. Пакет Mathcad: работа с векторами и матрицами.

При работе с массивами используются такие понятия, как скаляр, вектор и матрица. Одиночное число называется скаля- ром (в программировании – простая переменная). Общий тер- мин для вектора или матрицы – массив. В одномерном массиве (векторе) положение элемента определяется одним индексом (например, ). В двумерном массиве (матрице), который имеет вид прямоугольной таблицы, положение элемента определяется двумя индексами (например, ). Первый индекс определяет номер строки, а второй – номер столбца, на пересечении кото- рых находится данный элемент. Количество строк и столбцов матрицы задают размер матрицы. Вектор можно рассматривать как матрицу, содержащую один столбец. i x, ij A

Для обращения к элементу массива вводится имя массива, нажимается клавиша «левая квадратная скобка» (т.е. « [ » ) или кнопка в палитре инструментов Matrix (рис. 3.3), а затем вводятся нужные индексы (или индексные выражения). После ввода индексов нужно выйти из строки нижних индексов, нажав клавишу .

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

В табл. 3.5. представлены векторные и матричные операто- ры MathCAD. Многие из этих операторов доступны из соответ- ствующих палитр инструментов. Отметим, что операторы, кото- рые имеют в качестве аргумента вектор, требуют вектор- столбец, а не вектор-строку.

Операторы, не перечисленные в этой таблице, не будут ра- ботать для векторов и матриц. При попытке использовать такой оператор с вектором или матрицей MathCAD будет отмечать это сообщением об ошибке «неверная операция с массивом», или «нескалярная величина». Используя оператор векторизации, можно выполнить любую скалярную операцию или функцию поэлементно с вектором или матрицей.

Введем следующие обозначения: для матриц – A и M, для векторов – v и u и для скалярных величин – z.

34. Численные расчеты в Mathcad: вычисление сумм, произведений, производных, определенных интегралов.

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

Назначение полей: 1- имя переменной, являющейся параметром суммирования; 2 – нижний предел суммирования; 3- верхний предел суммирования; выражение, зависящее от параметра суммирования.

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

Назначение полей те же, что в операторе суммы.

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

Оператор вычисления определенных интегралов. Для ввода оператора в документ необходимо щелкнуть на кнопке и заполнить поля в появившемся шаблоне

35. Пакет Mathcad: создание программных фрагментов при программировании линейных и разветвляющихся алгоритмов.

Характерной особенностью линейных алгоритмов является строго последовательное выполнение всех операций алгоритма без пропусков и повторений вычислений. Поэтому конструкции, реализующие такой алгоритм, записываются в документе MathCAD в нужном порядке их выполнения, т.е. «слева направо – сверху вниз».

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

36. Пакет Mathcad: создание программных фрагментов при программировании циклических алгоритмов.

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

Типы циклов. По способам организации цикла можно выделить:

а) цикл типа арифметической прогрессии;

б) итерационный цикл.

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

37. Пакет Mathcad: программирование алгоритмов работы с одномерными массивами.

1. установить курсор в свободное место рабочего окна

2. набрать имя массива;

3. после имени записать оператор «:=»;

4. открыть палитру матриц;

5. выбрать кнопку с изображением шаблона матрицы;

6. в появившемся окне размерности матрицы ввести

целочисленные значения количества строк и

7. заполнить полученный шаблон вектора или

матрицы исходными данными.

В системе MathCAD в основном используются массивы двух

Отсчет номеров начинается с того значения, которое содержится в системной

переменной ORIGIN. По умолчанию эта переменная имеет значение 0, для измен

значения нужно задать, например, ORIGIN:=1

Векторы и матрицы можно задавать:

с помощью кнопки с изображением матриц на наборной панели математических инструменто

как переменную с индексами перечислением элементов массива с разделение запятой;

с помощью аналитического выражения.

38. Пакет Mathcad: построение графиков, общие настройки графиков.

MathCAD позволяет обрабатывать различные виды

графической информации. Возможности системы по работе с

 построение двумерных графиков в декартовой и полярной системах

 построение трехмерных поверхностных графиков,

 внесение рисунков, созданных другими компьютерными системами;

 создание анимационных клипов.

Соответственно, графические области делятся на четыре основных типа

1. область двумерных графиков

2. трехмерных графиков

3. область внешних графических объектов

4. область анимации

В Mathcad встроено несколько различных типов

графиков, которые можно разбить на две большие

1. Двумерные графики:

 XY (декартовый) график (XY Plot);

 полярный график (Polar Plot).

2. Трехмерные графики:

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

 график линий уровня (Contour Plot);

 трехмерная гистограмма (3D Bar Plot);

 трехмерное множество точек (3D Scatter Plot);

 векторное поле (Vector Field Plot).

39. Пакет Mathcad: построение двумерных графиков.

К двумерным графикам относят графики в декартовой и

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

Созданный однажды график одного типа нельзя

переделать в график другого типа.

Для построения XY-графика необходимы два ряда

данных, откладываемых по осям х и Y.

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

41. Пакет Mathcad: решение уравнений с использованием функции root.

Функция root (f(z),z,a,b) возвращает скаляр z, при котором выражение или

скалярная функция f(z) обращается в ноль на интервале [a,b]. Варьируя

начальное приближение z, MathCAD будет пытаться найти такое значение

функции, при котором функция f(z) TOL, где TOL – встроенная переменная,

указывающая заданную степень точности (по умолчанию TOL=10^-3.

Если интервал [a,b] не указан, то перед использованием функции root()

используют метод секущей. Начальное приближение, заданное

пользователем, становится первым приближением при поиске корня.

Если процесс сходится, то итерация заканчивается, когда значение f(x)

становится меньше TOL. Если процесс расходится и MathCAD не может

найти корень, итерация прекращается и выдается сообщение – ―Cannot

evaluate this accurately at one or more of the values you specified‖ – «Не могу это

вычислить точно по одной или более переменным, которые вы указали».

42. Пакет Mathcad: решение уравнений с использованием функции polyroots.

Если f(x) представляет собой полином и его

коэффициенты, начиная со свободного члена,

можно представить в виде вектора v, то для поиска

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

использовать функцию polyroots(v).

В отличие от функции root, polyroots не требует

начального приближения и вычисляет сразу все

корни, как вещественные, так и комплексные

43. Пакет Mathcad: численное решение уравнений и систем уравнений с использованием блока решения (конструкция Given – Find).

Для решения системы нелинейных уравнений и неравенств (до 50 уравнений и

неравенств) можно использовать блок Given – Find ().

Перед блоком записываются начальные приближения всех неизвестных.

Между ключевыми словами Given – Find () записывается система уравнений и

неравенств (в уравнениях должен быть знак равенства через Ctrl+= или ). Число

уравнений должно быть равно числу неизвестных.

Функция Find () имеет следующий формат: Find (z1,z2,z3,…..), где z1,z2,z3,… —

искомые переменные. Если функция Find () имеет более одного аргумента, то она

возвращает ответ в виде вектора.

44. Пакет Mathcad: решение системы линейных уравнений методом Крамера.

етод Крамера состоит из следующих действий:

Составим матрицу системы.

 Составим вектор правых частей.

 Проверяем неравенство детерминанта матрицы системы нулю

(необходимо, потому что далее производится деление на детерминант

матрицы системы [деление на ноль запрещено]. Если детерминант

матрицы системы равен нулю, то можно сделать вывод, что система

имеет множество решений). Если детерминант матрицы не равен 0, то

выполняем следующие действия:

 Для вычисления первой, второй и третьей неизвестной подставляем

вектор правых частей в первую, вторую или третью колонку матрицы

 Вычисляем детерминант полученной матрицы.

 Делим полученный детерминант на детерминант матрицы системы.

 Записываем, найденную неизвестную, в вектор.

45. Пакет Mathcad: решение системы линейных уравнений с использованием функции lsolve.

Вычисления в Mathcad

В практике инженерных расчетов наиболее массовыми являются расчетно-графические работы. Удобной средой для их выполнения является система компьютерной математики Mathcad [26]. Поэтому сначала дается описание основных правил работы в этой среде и демонстрируются простейшие вычисления.

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

Основные правила работы и простейшие вычисления. Для работы в Mathcad используется «графический» язык, «словами» в котором являются так называемые пиктограммы. Они представляют собой картинки — символы, обозначающие определенные действия: интегрирование, дифференцирование, построение графика и пр. С их помощью можно строить решение разнообразных задач, не составляя традиционной программы.

На рис. II 1.1 показано рабочее окно Mathcad и основные панели инструментов, содержащие наборы пиктограмм: 1 — Калькулятор (Calculator); 2 — Логические (Boolean); 3 — Графические (Graph); 4 — Матричные (Matrix); 5 — Вычислительные (Calculus); 6 — Программные (Programming); 7 — Греческие (Greek). Последняя панель инструментов, снабженная символом «академическая шапочка», содержит набор пиктограмм для выполнения символьно-аналитических вычислений.

П1.1

Рис. П1.1

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

Определение переменной. В Mathcad используются переменные различных типов: обычная, глобальная, дискретная, индексная и др. Значение обычной переменной может быть использовано только правее или ниже того места на рабочем документе Mathcad, где эта переменная была определена. Чтобы определить переменную нужно:

  • 1) напечатать имя переменной, подлежащей определению;
  • 2) напечатать символ «двоеточие» (:) — при этом на экране появится знак определения переменной «двоеточие равно» (:=);
  • 3) напечатать выражение, определяющее переменную.

Вводим с клавиатуры:

Наблюдаем на экране:

s .*= 100

W: 1/2[пробел] * т*и Л 2

Примечание. Для отделения дробной части числа от его целой части в Mathcad используется символ «точка» (.)

Кроме обычной переменной в Mathcad можно задать глобальную переменную. Ее значение можно использовать в любом месте рабочего документа Mathcad. Для этого вместо обычного оператора присваивания (:=) используется оператор глобального присваивания (=).

Вычисление выражений. Если переменные определены, то их значения можно использовать при вычислении выражений, которые должны располагаться правее или ниже мест определения переменных, участвующих в формировании выражений. Для вычисления выражения нужно его напечатать и нажать клавишу «вывод числового результата» (=). Mathcad вычисляет выражение и показывает его значение справа от этого знака.

t := 11.5

s := 100 v:= — t

v — 8.696 m := 15

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

Чтобы задать дискретный аргумент, нужно:

  • 1) напечатать имя переменной;
  • 2) нажать клавишу «двоеточие» (:) — в результате появится знак присваивания (:=);
  • 3) напечатать первое значение, принимаемое переменной;
  • 4) нажать клавишу «запятая» (,);
  • 5) напечатать второе (соседнее) значение переменной;
  • 6) нажать клавишу «точка с запятой» (;) — в результате появится символ «две точки подряд» (..);
  • 7) напечатать последнее значение переменной.

Вводим с клавиатуры:

Наблюдаем на экране:

а : .5; 8

а := 0.5..8

d : -5 , -3.5 ; 5

d := -5-3.5. .5

Дискретный аргумент изменяет свои значения в сторону возрастания (см. переменные ау b, d)y или убывания (переменная с).

Когда соседнее значение дискретного аргумента не указано (как это сделано при определении переменной /;), то шаг его изменения равен +1, если последнее значение аргумента больше начального, или -1, если последнее значение аргумента меньше начального.

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

Пример П1.5 демонстрирует применение дискретного аргумента для присвоения значений переменной с индексом (индексной переменной).

Если дискретный аргумент используется в выражении, то Mathcad вычисляет выражение один раз для каждого значения дискретного аргумента.

Определение функции. При определении функции у- f(x) необходимо указать ее имя / и аргумент х (или список аргументов для функции нескольких переменных).

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

  • 1) поместить курсор (щелкнуть мышью) там, где требуется создать график — обязательно правее или ниже того места, где определялась функция;
  • 2) выбрать команду XY — Plot из меню Graph, или нажать соответствующую кнопку на пиктограмме. В рабочем документе Mathcad появится заготовка для графика с полями ввода в виде двух черных прямоугольников (рис. П 1.2);
  • 3) в поле, расположенное левее оси ординат, ввести имя функции (рис. П1.3), или выражение, определяющее ее значения (рис. П1.4);
  • 4) в поле, расположенное под осью абсцисс, ввести имя аргумента х.

Рис. П1.2

Для того чтобы увидеть график, нужно нажать клавишу [F9] или щелкнуть мышью вне поля графика.

Для того чтобы задать диапазон изменения аргумента х, нужно заполнить поля ввода, появляющиеся по краям оси абсцисс, или заранее (выше или левее) задать аргумент как дискретную переменную (см. пример П1.3), например х := -3, — 2.9..5.

Если этого не сделать, то переменная х будет изменяться в интервале -10 _3 .

П1.3

Рис. П1.3

Рис. П1.4

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

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

[1] [2] [3] [4]

Если (как в данном примере) несколько функций имеют общий аргумент, то можно указать имя только этого аргумента (рис. П1.5, а).

Если на графике необходимо создать горизонтальную линию (например, линию у = 0), нужно поместить дискретную переменную (х) в среднее поле на оси абсцисс и константу (0) в поле на оси ординат (рис. П1.5, б).

П1.5

Рис. П1.5

Другая возможность — при форматировании графика активизировать опцию Show Markers (показывать маркеры) для оси Y. В этом случае слева от этой оси появятся два дополнительных поля ввода. Заполняя одно из них, можно получить желаемую горизонтальную линию. Точно так же можно создавать (две) вертикальные линии в нужном месте графика.

Для того чтобы переместить график, необходимо:

  • 1) выделить график пунктирной рамкой (см. выше);
  • 2) поместить курсор в поле рамки (при этом изображение курсора заменяется жирным черным крестом);
  • 3) нажав левую клавишу мыши, переместить рамку с графиком в нужное место и отпустить клавишу.

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

П1.6

Рис. П1.6

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

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

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

Этот пример иллюстрирует возможность построения графика окружности (единичного радиуса) х + у = 1 в декартовой системе координат (рис. П1.7). Для этого необходимо, используя у равнение окружности, определить зависимость у отх. В данном случае имеем у = ±Vl-x, т.е. график окружности образован графиками двух функций /<(х) = у1 -х и /2(х) = yj-x , которые в области х > 1 принимают комплексные значения.

П1.7

Рис. П1.7

Уравнение такой окружности можно задать в параметрической форме (рис. П1.8) или с помощью полярной системы координат (рис. П1.9).

П1.8

Рис. П1.8

Рис. П1.9

Чтобы создать график функции двух переменных z — z(x, у), например график функции z(x, у) = (х 2 + y 2 )sin(xy/5), необходимо:

  • (х-уЛ
  • 1) задать функцию z(x, у):=(х 2 + ;у 2 )-sin —— ;

2) установить курсор в свободном месте рабочей области правее или ниже места определения функции и с помощью команды Surfance Plot вставить шаблон трехмерного графика (рис. ГТ 1.10). В отличие от рис. П1.2, он имеет только одно поле для ввода, куда нужно ввести имя функции (в данном случае z). Затем нужно щелкнуть мышью вне шаблона. Результат показан на рис. П1.11.

Puc.nt.tO Рис. П1.11

По умолчанию диапазон изменения аргументов устанавливается равным |х| 2 + у 2 )$т(ху/5) для случая хп = -4, xv = 3, уп = -2.

Рис. 111.12

Для построения графика функции z = z(xf у) в криволинейной области G, ограниченной заданными «верхней» и «нижней» кривыми уп = уп<х) и yv = yv(x), можно средствами Mathcad задать «обрезанную» функцию

а затем применить к ней команду CreateMesh, выбирая параметры хп, xvy уп, yv гак, чтобы соответствующая прямоугольная область xn (решить уравнение /(х) = 0). В этом случае Mathcad находит точное решение уравнения (см. Пример 1.1.2.4). К сожалению, эта возможность ограничена, особенно в тех случаях, когда уравнение является трансцендентным и (или) имеет несколько корней. В этих случаях нередко появляется сообщение did not find solution — «решение не найдено» или выводится только одно из нескольких возможных решений. Исключением является вычисление корней полинома (П2.9).

Для численного решения уравнения /(х) = 0 используется команда root (Дх), х). Она определяет значение переменной х, при котором выражение /(х) обращается в нуль с заданной точностью. Последняя определяется значением встроенной переменной TOL. По умолчанию TOL = 10 _3 .

Переменной х перед использованием команды root необходимо присвоить числовое начальное значение. Это значение используется в качестве начального приближения и его выбор влияет на решение, если уравнение имеет несколько корней.

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

Пример П1.12

П1.13

Рис. П1.13

х .*= -2 х .*= 0 х3

root(f(x), х) = -3.258 root(f(x), х) = 0.201 root(f(x), х) = 3.057.

Начиная с версии Mathcad 2000, для вычисления корня х = х1 уравнения f(x) = 0, появилась расширенная команда root вида

В этом случае в списке аргументов функции root дополнительно указываются нижняя и верхняя границы интервала локализации искомого корня xn,xv, т.е. предполагается, что диапазон, в котором этот корень расположен, известен. Применение этой команды для вычисления минимального корня в задаче примера П1.12 дает

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

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

Часто необходимо вычислять корни степенного уравнения (полинома)

Число корней такого уравнения совпадает со степенью полинома п. Для их вычисления можно использовать команду polyroots, которая применяется к вектору коэффициентов полинома А г = [а0. ап Например, для полинома f(x) = х 3 -х + 2, имеющего три вещественных корня (см. пример П1.12), имеем

Для полинома /(х) = х 3 + 10х + 2 имеем

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

Решение этих уравнений с помощью команды solve дает

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

Если решение не найдено, то появляется сообщение об ошибке did not find solution (решение не найдено). Эта ошибка может быть вызвана следующими причинами:

  • 1) уравнение не имеет корней;
  • 2) корни расположены далеко от начального приближения;
  • 3) функция у = f(x) имеет локальные максимумы (минимумы) или разрыв между начальным приближением и корнями;
  • 4) выражение f имеет комплексный корень, но начальное приближение было вещественным, или наоборот.

В заключение приведем несколько советов по использованию команды root:

  • 1) для повышения точности вычисления корня можно уменьшить значение встроенной переменной TOL (по умолчанию TOL = 0,001), однако эта процедура может увеличить время вычислений;
  • 2) если график функции у = f(x) имеет малый наклон вблизи искомого корня, то вместо уравнения f(x) = 0 следует решить уравнение

3) для выражения f(x) с известным корнем х = а нахождение дополнительных корней равносильно поиску корней уравнения

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

Решение системы алгебраических уравнений. С решением систем уравнений приходится сталкиваться столь же часто, как и с решением обычных уравнений. Для численного решения системы алгебраических уравнений в Mathcad необходимо:

  • 1) задать начальное приближение для всех неизвестных, входящих в систему;
  • 2) напечатать ключевое слово Given, указывающее на то, что далее (правее, или ниже) следует система уравнений;
  • 3) ввести уравнения, используя сочетание клавиш [Ctrl] и [=] для печати символа «равно», при этом на экране появится символ «жирное равно» (=), означающий логическое равенство;
  • 4) ввести выражение, определяющее результат решения системы, с помощью команд Find или Мгпегг.

Выполнение перечисленных пунктов задает так называемый блок решения уравнений Given . Find или Given . Minerr. Если команда Find имеет только один аргумент, то ее использование равносильно использованию команды root. В качестве примера ниже рассматривается решение уравнения х 1 +10 = е х с помощью команд Find и root.

Пример П1.13

Если команда Find имеет более одного аргумента, например Find (х, у), то она

возвращает вектор , содержащий значения переменных .г и г/, являющихся реше-

нисм системы уравнений и неравенств (если они есть), расположенных в блоке решения уравнений.

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

Пример П1.14

Решить систему уравнений

Первое уравнение этой системы задает окружность радиуса R = 2 с центром в начал е системы координат. Верхняя часть окружности описывается кривой У<(х)

-Ja-x 2 , нижняя часть — кривой у2(х) =

У(х) (см. пример 111.11). Второму уравнению системы соответствует прямая у = -х. Она пересекает окружность в двух точках, координаты (Х^ Y<) и 2, У2) которых являются решениями рассматриваемой системы уравнений системы (рис. П1.14). Найдем эти координаты.

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

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

Определение экстремумов функции. Наибольшее или наименьшее значения непрерывной функции одной переменной у = f(x), заданной на сегменте [а, Ь], достигается либо в критической точке, где производная этой функции равна нулю или не существует, либо в граничных точках а, b сегмента. Поэтому для обнаружения экстремумов полезно просмотреть график функции и график ее производной, составив, таким образом, представление о количестве и расположении критических точек. После этого уточнение координат точек сводится к определению вещественного уравнения

Если функция имеет п переменных, то координаты ее экстремумов находятся решением системы п уравнений

Для этого можно использовать команду Minerr (от MINimal ERRor — «минимальная ошибка»), которая, как и команда Find, работает в связке с ключевым словом Given. Отличие состоит в том, что команда Minerr возвращает такие значения своих аргументов, при которых левые и правые части уравнений, записанных в блоке решения уравнений Given — Minerr, минимально различаются. Описанное свойство команды Minerr позволяет успешно использовать ее вместо команд root и Find для решения алгебраических уравнений и систем, так как нуль — самое минимальное отклонение.

В современных версиях Mathcad для определения значений переменных х<, х2, хгг при которых функция f(xt, х2, х„) имеет экстремум, можно

использовать команды Maximize(f, xif х2. хп) или Minimize(f, хи х2. хп). Эти команды завершают блок решения, открываемый директивой Given, и возвращают вектор аргументов хх, х2, . хп, при котором функция f(xx, х2. хп) имеет экстремум (максимум или минимум соответственно).

Внутри блока могут размещаться условия, уточняющие (ограничивающие) область изменения переменных хх, х2, . хп. Непосредственно перед блоком им нужно задать начальное приближение. Чем ближе это приближение к искомой точке экстремума, тем точнее и быстрее будет найден результат.

Пример П1.15

Определить координаты точек экстремумов функции

Просмотр графика функции (рис. П1.15, а) и графика ее производной (рис. П1.15,6) показывает наличие двух критических точек: максимума при х 0.

Рис. П1.15

Определим координаты этих точек с использованием команд root, Mitierr, Maximize и Minimize.

1. Решение задачи с использованием команды root:

2. Решение задачи с использованием команды Minerr

При поиске максимума значения функции у = у(х) в области х ) или специальные команды. Операции, относящиеся к работе символьного процессора, содержатся в подменю позиции Symbolics (Символика) главного меню (рис. П1.16) или в меню команд, возникающих на экране монитора после активизации пиктограммы «академическая шапочка» (рис. П1.17).

П1.16

Рис. П1.16

Ниже приведены примеры использования некоторых из этих команд.

Пример 111.16

Команда evaluate или —> (вычислить): • вычислить в символах

• вычислить с п знаками после запятой, evaluate float, п или float, п -> :

Примечание: при выводе результатов символьных преобразований с помощью команды float, п можно задавать до п — 250 знаков после запятой.

Команда coeJJs (полиномиальные коэффициенты):

Примечание: вычисляются коэффициенты полинома по переменной х, получающегося после раскрытия скобок.

Пример П1.22

Команда differentiate (дифференцирование по выделенной переменной):

Пример П1.23

Команда integreate (интегрирование по выделенной переменной):

Пример П1.24

Команда solve (решить относительно выделенной переменной):

Пример П1.25

Команда expand to series (разложить в ряд):

Команда convert to partial fraction (разложить на элементарные дроби):

Пример П1.27

Команда matrix transpose (транспонирование матрицы):

Пример П1.28

Команда matrix determinant (вычисление определителя):

Пример П1.29

Команда matrix invert (обращение матрицы):

Пример П1.30

Команды Fourier и invers Foureir (прямое и обратное преобразования Фурье):

Пример П1.31

Команды laplace и invlaplace (преобразования Лапласа): • прямое

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

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