Как поставить корень в mathcad
• При вычислении квадратного корня выражения оставьте пустым верхний левый местозаполнитель оператора квадратного или n-го корня.
• В общем случае любое число имеет n корней n-ой степени. Например, квадратным корнем 4 являются числа 2 и -2. Операторы квадратного и n-го корня возвращают главное значение корня, т. е. то, которое имеет наименьший неотрицательный комплексный аргумент. Поскольку комплексный аргумент 2 равен 0, а 2 равен π , результатом будет 2.
• Операторы квадратного и n-го корня возвращают действительный корень, если такой корень существует. Если x является действительным отрицательным числом, то n-ый корень x будет иметь действительное значение, если n нечетно, и комплексное значение, если n — четно. Чтобы получить главную ветвь n-го корня x , возведите x в степень 1 / n .
Как сделать корень в 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).
Рассмотрим программу, вычисляющую среднее арифметическое элементов произвольной матрицы.
Отделение корней с использованием MathCad
Уточнение корня с использованием MathCad
Метод половинного деления
Исследование задания
· Метод половинного деления сходится, если на выбранном отрезке отделен один корень. Так как на отрезке [0;1] функция меняет знак ( ) и монотонна (f’(x)<0), то условие сходимости выполняется.
· Выберем за начальное приближение середину отрезка
· Условие окончания процесса уточнения корня. Для оценки погрешности метода половинного деления справедливо условие |bn – an|
Результаты «ручного расчета» трех итераций
| 1 итерация f(x0)=0.377 f(a)>0, f(x0)>0 и f(b)2 итерация f(x1)=-0.518 f(a1)>0, f(x1)<0 и f(b1)3 итерация f(x2)=-0.064 f(a2)>0, f(x2) |
Результаты вычислений представлены в форме таблицы.
| n | a | b | f(a) | f(b) | (a+b)/2 | f( (a+b)/2) | b-a |
| 1 | 0 | 1 | 2 | -1.459 | 0.5 | 0.377 | 0.5 |
| 2 | 0.5 | 1 | 0.377 | -1.459 | 0.75 | -0.518 | 0.25 |
| 3 | 0.5 | 0.75 | 0.377 | -0.518 | 0.625 | -0.064 | 0.125 |
| 4 | 0.5 | 0.625 | 0.377 | -0.064 | 0.5625 | 0.158 | 0.0625 |
После трех итераций приближение к корню – середина отрезка x3=0.5625.
Символьные вычисления в Mathcad
Символьные преобразования в Mathcad возможны двумя способами:
1. С помощью команд пункта Symbolics (Символьные операции) главного меню.
2. С использованием оператора символьных преобразований и операций палитры Symbolic (Символьные вычисления) – с использованием подсистемы SmartMath (чудо-математика).
Символьные преобразования осуществляются:
— над выделенным выражением,
Чтобы выделить выражение для преобразования (поместить в выделяющую рамку) необходимо при нажатой левой кнопки мыши обвести его.
Выделить можно как часть выражения, так и все выражение.
Выделить переменную, относительно которой делается преобразование, можно с помощью маркера ввода, поместив его слева от имени переменной.
9.2. Преобразования с помощью команд пункта Symbolics
Операции пункта разделены на 5 групп:

1. Операции с выделенными выражениями.
2. Операции с выделенными переменными.
3. Операции с выделенными матрицами.
4. Операции преобразования.
5. Стиль эволюции (Стиль преобразования).
После выбора операции Mathcad выводит преобразования по выбору:
— на месте исходного выражения,

Выбор осуществляется с использованием опции EvaluationStyle (Стиль преобразования) пункта Symbolics.
Выбор осуществляется в одноименном диалоговом окне:
Показать шаги эволюции
Вертикально со строками
Вертикально без строк
В ответах могут появляться имена дополнительных специальных функций, которые нельзя употребить для численных вычислений. Например, arcsec(x). Для них нет подпрограмм численных вычислений. Такую функцию нужно представить стандартной.
9.3. Операции с выделенными выражениями


Примеры операций Evaluate — вычислить:
Слева выражение справа результат.
Вычислить символически сумму квадратов.
Производную от синуса.
В итоговом выражении есть p.
В формате с плавающей точкой.
Можно получить выражение >
Примеры операций Simplify — упростить:
Слева выражение, справа результат.
Вычислить символически функцию тангенса
Сумма квадратов синуса и косинуса.
Определенный интеграл. В итоговом
выражении есть специальная функция Si(t)
Производная от синуса. То же можно сделать,
используя опцию «Вычислить символически».
Примеры операций Expand — расширить (разложить по степеням):
Слева выражение, справа результат.
Вычислить символически сумму кубов.
Произведение сумм квадратов синуса и
В итоговом выражении есть специальная
Примеры операций Factor — факторизация (разложение на сомножители):
Слева выражение, справа результат.
Сомножители с х в первой степени.
Второй сомножитель — квадратный
полином с комплексно-
Примеры операций Collect -комплектовать (разложить по подвыражению):
Слева выражение, справа результат.
Подвыражение — х. Его надо перед
операцией выделить маркером ввода.
Подвыражение — а. Его надо перед
операцией выделить маркером ввода.
В выражении может быть много переменных, поэтому подвыражение надо выделить маркером ввода.
Примеры операций Polynomial coefficients — полиномиальные коэффициенты:
Найти коэффициенты полинома по заданной переменной.
Слева выражение, справа результат.
Коэффициенты выводятся, начиная с
Вывод вектора в виде столбца.
Выделена переменная а.
Выделена переменная b.
9.4. Операции с выделенными переменными


Примеры операций Solve — решить:
Выражение, ниже комментарий и результат.
Комментарий — имеет решение(я)
Вектор из символьных выражений для корней.
Выражение с комплексными корнями.
Комментарий — имеет решение(я)
Вектор решений. Ответ содержит комплексные числа.
Если ответом являются выражения с комплексными
числами, то ответ может помещаться в буфер в форме
текста. При желании его можно посмотреть.
Примеры операций Substitute — подстановка:
Выражение, ниже комментарий и результат.
Выражение для подстановки. Его надо скопировать в буфер.
В нем надо выделить х маркером ввода.
Комментарий — путем подстановки получим.
Примеры операций Differentiate — дифференцировать и
Integrate — интегрировать:
Дифференцировать и интегрировать всё выражение, содержащее выделенную переменную, по отношению к этой переменной остальные рассматриваются как константы.
Выражение, ниже комментарий и результат.
В нем надо выделить х маркером ввода.
Комментарий — путем дифференцирования получим.
Результат. В нем вновь выделим х.
Комментарий — путем интегрирования получим.
Результат. Константа по умолчанию берется 0.
Примеры операций Expand to series… — Разложить в ряд Тейлора
Разложить функцию в ряд Тейлора. По первым трем членам ряда построить график, подтверждающий правомочность представления функции бесконечным рядом.
Выражение, ниже комментарий и результат.
Исходное выражение. Выделить переменную.
При диалоге выбрать порядок аппроксимирующего
полинома. Комментарий — преобразуется в ряд.
O() – погрешность представления ряда.
Исходное выражение в виде функции пользователя.
То же с разложением в ряд Тейлора (3 члена ряда).
![]() |
![]() |
Выводы по задаче: точность представления функции в виде бесконечного числа членов ряда Тейлора зависит от количества членов ряда, участвующих в ее конечном отображении.
Примеры операций Convert to Partial Fraction — Разложить на элементарные дроби
Mathcad «пытается» представить знаменатель выражения в виде произведения сомножителей с переменной в первой, или второй степени с целочисленными коэффициентами, если таковы имеет место быть. Если это удается, то выражение преобразуется в сумму дробей, у которых знаменателями являются эти сомножители.
Комментарий — разлагается на элементарные дроби.
9.5. Операции с выделенными матрицами

![]() |
Примеры операций Matrix — Матрицы
Выражение, ниже комментарий и результат.
Комментарий — транспонируя матрицу, получим.
Комментарий — обращая матрицу, получим.
Комментарий — имеет определитель.
Если элементы матрицы числа, то соответствующие операции выполняются в числовой форме. Например,

9.6. Преобразования выделенных выражений


Все преобразования относительно выделенной переменной.
9.7. Интерпретация результатов символьных операций в буфере обмена
Если результат символьной операции громоздкий, то он выводится не в окно редактирования, а в буфер обмена в компактном текстовом формате. В нем используются:
— сообщения о шрифтах,
— операторы особого языка,
— имена специальных функций, употребляемых только при символьных преобразованиях.
Результаты символьных операций можно вызвать в окно документа, используя команду Paste. При желании его можно изучать. Однако такой результат является уже не математическим выражением, а только текстом. Тем не менее, владеющий математическими познаниями пользователь может с успехом использовать полученный таким образом результат.
В описании результата применяются следующие операторы:
1. Знаки арифметических операций +, -, *, /.
2. Возведение в степень **.
3. Производные от f(x) — первая diff(f(x),x), n-ая — diff(f(x),x$n).
4. Частные производные — первая D, n-ого порядка (D,n) и по n-ому аргументу (D[n]).
5. Интеграл от f(x) — int(f(x),x).
6. Оператор суммы — sum(…).
7. Оператор произведения product(…).
8. Композиция функций указывается символом @. Например, (exp@cos)(x) означает exp(cos(x)).
9. Композиция функций указывается символами @@ с числом повторений. Например, (f@@3)(x) означает f(f(f(x))).
10. Корни уравнения указываются записью RootOf(уравнение). Например, RootOf(Z**2+1) означает оба корня уравнения Z**2+1=0.
9.8. SmartMath — Чудо-математика
При использовании подсистемы SmartMath достигаются три преимущества:
1. Подсистема использует операторы, в которые входит преобразуемое выражение.
2. В операторах подсистемы присутствуют символы и ключевые слова, описывающие выполняемое действие.
3. Можно применять символические преобразования к функциям пользователя.
При работе с палитрой «Преобразования» используется символический знак равенства ® — символьный знак равенства.
Mathcad берет выражение слева от символьного знака равенства и помещает результат преобразования справа.
По умолчанию выполняется команда «Вычислить символически».
Возвращается выражение или число (если входящие в выражение переменные имеют определенные значения).
Изменить правило преобразования можно с помощью ключевых слов символики, которые вводятся между выражением и символьным знаком равенства.
Они выбираются из специальной палитры.
Вводится в двух формах:
форма 1, Без ключевого слова
форма 2. С ключевым словом
Первое пустое место для выражения, второе — для ключевого слова.

Палитра Symbolic Keyword


Вычислить символически

Вычислить символически
Modifiers Палитра модификаторов

Транспонировать матрицу

Обратить матрицу

Детерминант.
Директивы отличаются от операций меню Symbolics улучшенной визуализацией и дополнениями, упрощающими использование.
Директива «Вычислить символически».

При выборе выводится шаблон .
В пустое место надо ввести выражение для символического вычисления.
Если сначала набрать выражение, выделить его рамкой и нажать клавиши Ctrl + >, то справа от выражения выведется символьный знак равенства — стрелка. Получится аналогичный предыдущему заполненный шаблон.
После вывода курсора из шаблона нажатием клавиши (или щелчком мыши за пределами области ввода) после стрелки выводится результат преобразования.
Директива «Вычислить символически с ключевым словом».

При выборе выводится шаблон .
В первый прямоугольник надо ввести выражение для символического вычисления. Во второй — ключевое слово, поясняющее выполняемое действие с панели Symbolic . После вывода курсора из шаблона после стрелки выводится результат преобразования.
Выражение и ключевое слово
Разные преобразования, требуют дополнительных параметров, число которых не одинаково для разных операций. Для улучшения визуального восприятия эти параметры для каждой директивы располагаются по-своему.
При выборе любого ключевого слова выводится шаблон, соответствующий операции этого слова. В нем находится ключевое слово и пустые места для заполнения. После заполнения пустых мест после стрелки выводится результат.
При директиве simplify — «Упростить»:
Шаблон директивы simplify.
При директиве float — «Плавающая точка»:
Шаблон директивы float. Слева от ключевого слова — место для выражения, справа — место для ввода числа десятичных цифр результата.
При директиве substitute — «Подстановка»:
Шаблон директивы substitute. Слева от ключевого слова — место для выражения, справа — места для ввода подвыражения подстановки.
При их употреблении выводится шаблон директивы со стрелкой. В пустом месте вводится матрица. После вывода курсора из шаблона выводится результат. Например, при употреблении директивы получим:
Введен шаблон конкретной матрицы
Результат. В отличие от той же операции,
выполняемой через меню Symbolics,
дополнительно выводится стрелка
Детерминант (определитель) матрицы,
вычисленный в символьном виде.
Директивы с несколькими действиями
Несколько действий можно выполнить двумя способами:
1. С выводом результата каждого действия.
2. С выводом только конечного результата.
С выводом результата каждого действия.
Ввод каждой директивы завершается нажатием клавиши . Перед каждым вводом маркер ввода устанавливается в месте ввода директивы.
Две подстановки. Результаты
выведены для каждой.
С выводом только конечного результата. Используются средства программирования.
Директивы вводятся последовательно. При этом формируется подпрограмма, которая их последовательно выполняет. Каждая новая директива добавляется в список директив, объединяемых символом подпрограммы — вертикальная черта.
MathCAD. MatLab
Наборные панели и шаблоны
Подготовка вычислительных блоков облегчается благодаря выводу шаблона при задании того или иного оператора. Для этого в MathCAD служат наборные панели с шаблонами различных математических символов.
Допустим, требуется вычислить определенный интеграл. Для этого вначале надо вывести панель операторов математического анализа; ее пиктограмма в строке инструментов имеет знаки интеграла и производной. Затем следует установить визир в то место экрана, куда выводится шаблон, и на панели сделать активной пиктограмму с изображением знака определенного интеграла (рис. 1. 11).
Рис. 1. 11 Задание шаблона определенного интеграла и начало его заполнения
В составе сложных шаблонов часто встречаются шаблоны для ввода отдельных данных. Они имеют вид небольших черных квадратиков. В шаблоне интеграла их четыре: для ввода верхнего и нижнего пределов интегрирования, для задания подынтегральной функции и для указания имени переменной, по которой идет интегрирование. На рис. 1. 11 шаблон интеграла показан в верхнем левом углу окна редактирования документа.
Для ввода данных можно указать курсором мыши на нужный шаблон данных и, щелкнув левой ее клавишей для фиксации места ввода, ввести данные. На рис. 1. 12 отражен момент ввода под знаком квадратного корня выражения для задания подынтегральной функции.
Для ввода подынтегральной функции в приведенном примере требуется совершить следующие действия:
• установив курсор мыши в стороне от места ввода, вывести панель набора арифметических операторов;
• подвести курсор мыши под шаблон ввода функции и щелкнуть левой клавишей для фиксации начала ввода;
• активизировать (мышью) кнопку со знаком квадратного корня на палитре математических символов;
• провести ввод выражения под знаком квадратного корня (при этом возможно редактирование данных с помощью стандартных операций редактирования).
Затем таким же способом надо заполнить остальные шаблоны, т. е. ввести
пределы интегрирования и имя переменной, по которой производится интег-
Рис.
Похожие публикации:
- Где купить активацию wechat
- Где продать мили s7 telegram
- Как mathcad сохранить в pdf
- Что является разделителем целой и дробной части в системе mathcad
Как поставить корень в mathcad
1. Построить график функции f(x).Отделить все корни, лежащие на данном отрезке.
2. Вычислить наибольший из корней методами, указанными в варианте. Точность
. Программа должна быть универсальной. Методы оформить в виде отдельных подпрограмм, содержащих проверку условий сходимости метода. Метод, начальное приближение
задавать как параметр, вводимый с клавиатуры. Вычислить корень при различных значениях
. Вывод на консоль: метод,
, номер итерации — k,
,
.
3. Сравнить число необходимых итераций в обоих методах, указать преимущества и недостатки методов. Сделать выводы.
4. Графически проиллюстрировать сходимость методов для своего уравнения.
5. Вычислить наибольший из корней в MathCAD.
![]() |
![]() |
![]() |
![]() |
Из графика видно, что первый корень находится на отрезке [-2;-1], второй на отрезке [1;3], а третий- [3;5]. Наибольший корень лежит на отрезке [3;5].
Составим программу для вычисления наибольшего из корней данного уравнения:
РЕШЕНИЕ УРАВНЕНИЙ И СИСТЕМ УРАВНЕНИЙ
4 Решение уравнений и систем средствами Mathcad
Система Mathcad обладает широкими возможностями численного решения уравнений и систем уравнений.
Функция root, блоки Given…Find, Given…Minerr
В ходе численного решения обычно выделяют два этапа:
- отделение корней – определение интервала нахождения каждого корня или определение приблизительного значения корня. В системе Mathcad наиболее наглядным будет отделение корней уравнения графическим способом;
- уточнение корней – нахождение численного значения корня с указанной точностью.
Точность нахождения корня устанавливается с помощью системной переменной TOL (Convergence Tolerance – Допуск сходимости), которая по умолчанию равна 10 -3 . Чем меньше значение TOL, тем точнее, вообще говоря, находится корень уравнения. Однако оптимальным является TOL = 10 -5 . Переопределить значение TOL можно в окне математических свойств документа Math Options на вкладке Build-In Variables (Встроенные переменные) или присваиванием, например, TOL:=0.0001.
Для решения одного уравнения с одной неизвестной предназначена встроенная функция root, которая в общем виде задается
root(f(x), x, [a, b])
и возвращает значение переменной x, при котором функция f(x) обращается в ноль. Аргументы функции root:
- f(x) – функция левой части уравнения f(x) = 0;
- x – переменная, относительно которой требуется решить уравнение;
- a, b (необязательные) – действительные числа, такие что a -1 слева: A -1 Ax=A -1 b. Учитывая, что A -1 A, вектор-столбец решений системы можно искать в виде
Этот прием используется в Mathcad так:
- задается матрица коэффициентов при неизвестных системы A;
- задается столбец свободных членов b;
- вводится формула для нахождения решения системы X:=A -1 b;
- выводится вектор решений системы X=.
Кроме того, пакет Mathcad имеет встроенную функцию
lsolve(A, b),
возвращающую вектор-столбец решений системы линейных алгебраических уравнений. Аргументами функции lsolve являются матрица коэффициентов при неизвестных системы и столбец свободных членов. Порядок решения аналогичен рассмотренному, но вместо формулы X:=A -1 b используется X:=lsolve(A, b).
Реализовать широко известный метод Гаусса решения систем линейных уравнений позволяет встроенная функция rref(M), возвращающая ступенчатый вид матрицы M. Если в качестве аргумента взять расширенную матрицу системы, то в результате применения rref получится матрица, на диагонали которой – единицы, а последний столбец представляет собой столбец решений системы.
Решение системы линейных уравнений можно осуществить с помощью блоков Given…Find, Given…Minerr. При этом неизвестным системы задается произвольное начальное приближение, а проверка необязательна.
Порядок выполнения лабораторной работы
- Загрузить Mathcad Start / All Programs / Mathsoft Apps / Mathcad (Пуск / Все программы / Mathsoft Apps / Mathcad).
- Сохранить в личной папке на диске z: новый документ с именем ФИО1, лучше использовать латинские буквы. Производить сохранение регулярно в процессе работы (Ctrl + S).
- Вставить текстовую область Insert / Text Region (Вставка / Область текста) и ввести в поле документа текст:
Лабораторная работа № 4
Решение уравнений и систем в Mathcad.
- В новой текстовой области ввести фамилию, имя, отчество, учебный шифр и номер варианта.
- Выполнить задание 1.
Задание 1. Решить уравнение .
Решение.
Решение данного уравнения будем проводить в два этапа: отделение корней уравнения графически, уточнение корней уравнения.
Определим функцию f(x), равную левой части данного уравнения, когда правая равна нулю:
Зададим ранжированную переменную x на некотором диапазоне с мелким шагом, например:

Вставим в документ графическую область. Для этого выберем дважды пиктограмму с изображением графика сначала на панели Math (Математика), затем на палитре графиков Graph или выполним из главного меню последовательность команд Insert / Graph / X-Y Plot (Вставка / График / X-Y Зависимость).
Снизу по оси абсцисс наберем x, а сбоку по оси ординат введем f(x).
Для появления графика щелкнем левой клавишей мыши вне графической области.
Отформатируем график функции f(x). Для этого щелкнем правой клавишей мыши в области графика и выберем в контекстном меню команду Format (Формат). Установим пересечение осей графика (Crossed – Только оси), добавим вспомогательные линии по координатным осям (Grid Lines – Вспомогательные линии). Отменим при этом автосетку (Autogrid – Автосетка) и установим количество линий сетки, равное 10.
Для подтверждения внесенных изменений нажмем последовательно кнопки Apply (Применить) и ОК.
После указанных преобразований график функции f(x) будет выглядеть следующим образом:
Из графика функции f(x) видно, что уравнение имеет три корня, которые приблизительно равны: x1 ≈ -1; x2 ≈ 1; x3 ≈ 2,5.
Этап отделения корней завершен.
Уточним теперь корни уравнения с помощью функции root.
Присвоим начальное приближение переменной x и укажем точность поиска корня:
Уточним заданное приближение к значению корня с помощью функции root:
Выполним проверку, подтверждающую, что первый корень найден с заявленной точностью:
Начальное приближение можно не задавать при использовании в качестве аргументов root границ отрезка нахождения корня, например, второй корень можно уточнить:
Задание 2. Решить уравнение .
Решение.
Напечатаем левую часть уравнения, не приравнивая выражение к 0, и выделим синим курсором переменную x:


Выберем из главного меню Symbolics / Polynomial Coefficients (Символика / Коэффициенты полинома). Появившийся вектор коэффициентов полинома выделим целиком синим курсором и вырежем в буфер обмена, используя кнопку Вырезать на панели инструментов Formatting (Форматирование) или комбинацию клавиш Ctrl + X.

Напечатаем v := и вставим вектор из буфера обмена, используя кнопку Вставить на панели инструментов или комбинацию клавиш Ctrl + V.
Для получения результата напечатаем polyroots(v) =:
Задание 3. Решить систему линейных уравнений Сделать проверку.
Решение.
1-й способ. Использование блока Given … Find.
Зададим всем неизвестным, входящим в систему уравнений, произвольные начальные приближения, например:
Напечатаем слово Given. Установим визир ниже и наберем уравнения системы, каждое в своем блоке. Используем при этом логический знак равенства (Ctrl + =).
После ввода уравнений системы напечатаем X := Find(x, y, z) и получим решение системы в виде вектора, состоящего из трех элементов:
Сделаем проверку, подставив полученные значения неизвестных в уравнения системы, например, следующим образом
После набора знака «=» в каждой строке должен быть получен результат, равный или приблизительно равный правой части системы. В данном примере системная переменная ORIGIN = 1.
2-й способ. Использование блока Given…Minerr.
Порядок решения системы этим способом аналогичен порядку использования блока Given … Find и представлен ниже вместе с проверкой:
3-й способ. Решение системы линейных уравнений матричным способом.
Создадим матрицу А, состоящую из коэффициентов при неизвестных системы. Для этого напечатаем A := , вызовем окно создания массивов (Ctrl + M). Число строк (Rows) и столбцов (Columns) матрицы данной системы равно 3. Заполним пустые места шаблона матрицы коэффициентами при неизвестных системы, как показано ниже:
Зададим вектор b свободных членов системы. Сначала напечатаем b :=, затем вставим шаблон матрицы(Ctrl + M), где количество строк (Rows) равно 3, а количество столбцов (Columns) равно 1. Заполним его:
Решим систему матричным способом по формуле
Решим систему с помощью функции lsolve:
Для проверки правильности решения системы, полученного матричным способом, достаточно вычислить произведение A·X, которое должно совпасть с вектором-столбцом свободных членов b:
Автор Механик задал вопрос в разделе Другие языки и технологии
Как в MathCad ставить знак корня квадратного и не только . и получил лучший ответ
Ответ от Chiquitita Preciosa[гуру]
Корень—обратный слэш
Маткад как написать корень
1. Построить график функции f(x).Отделить все корни, лежащие на данном отрезке.
2. Вычислить наибольший из корней методами, указанными в варианте. Точность
. Программа должна быть универсальной. Методы оформить в виде отдельных подпрограмм, содержащих проверку условий сходимости метода. Метод, начальное приближение
задавать как параметр, вводимый с клавиатуры. Вычислить корень при различных значениях
. Вывод на консоль: метод,
, номер итерации — k,
,
.
3. Сравнить число необходимых итераций в обоих методах, указать преимущества и недостатки методов. Сделать выводы.
4. Графически проиллюстрировать сходимость методов для своего уравнения.
5. Вычислить наибольший из корней в MathCAD.
![]() |
![]() |
![]() |
![]() |
Из графика видно, что первый корень находится на отрезке [-2;-1], второй на отрезке [1;3], а третий- [3;5]. Наибольший корень лежит на отрезке [3;5].
Составим программу для вычисления наибольшего из корней данного уравнения:
РЕШЕНИЕ УРАВНЕНИЙ И СИСТЕМ УРАВНЕНИЙ
4 Решение уравнений и систем средствами Mathcad
Система Mathcad обладает широкими возможностями численного решения уравнений и систем уравнений.
Функция root, блоки Given…Find, Given…Minerr
В ходе численного решения обычно выделяют два этапа:
Для решения одного уравнения с одной неизвестной предназначена встроенная функция root, которая в общем виде задается
root(f(x), x, [a, b])
и возвращает значение переменной x, при котором функция f(x) обращается в ноль. Аргументы функции root:
Этот прием используется в Mathcad так:
Кроме того, пакет Mathcad имеет встроенную функцию
lsolve(A, b),
Реализовать широко известный метод Гаусса решения систем линейных уравнений позволяет встроенная функция rref(M), возвращающая ступенчатый вид матрицы M. Если в качестве аргумента взять расширенную матрицу системы, то в результате применения rref получится матрица, на диагонали которой – единицы, а последний столбец представляет собой столбец решений системы.
Решение системы линейных уравнений можно осуществить с помощью блоков Given…Find, Given…Minerr. При этом неизвестным системы задается произвольное начальное приближение, а проверка необязательна.
Порядок выполнения лабораторной работы
Лабораторная работа № 4
Решение уравнений и систем в Mathcad.
Задание 1. Решить уравнение .
Решение.
Решение данного уравнения будем проводить в два этапа: отделение корней уравнения графически, уточнение корней уравнения.
Определим функцию f(x), равную левой части данного уравнения, когда правая равна нулю:
Зададим ранжированную переменную x на некотором диапазоне с мелким шагом, например:

Вставим в документ графическую область. Для этого выберем дважды пиктограмму с изображением графика сначала на панели Math (Математика), затем на палитре графиков Graph или выполним из главного меню последовательность команд Insert / Graph / X-Y Plot (Вставка / График / X-Y Зависимость).
Снизу по оси абсцисс наберем x, а сбоку по оси ординат введем f(x).
Для появления графика щелкнем левой клавишей мыши вне графической области.
Отформатируем график функции f(x). Для этого щелкнем правой клавишей мыши в области графика и выберем в контекстном меню команду Format (Формат). Установим пересечение осей графика (Crossed – Только оси), добавим вспомогательные линии по координатным осям (Grid Lines – Вспомогательные линии). Отменим при этом автосетку (Autogrid – Автосетка) и установим количество линий сетки, равное 10.
Для подтверждения внесенных изменений нажмем последовательно кнопки Apply (Применить) и ОК.
После указанных преобразований график функции f(x) будет выглядеть следующим образом:
Этап отделения корней завершен.
Уточним теперь корни уравнения с помощью функции root.
Присвоим начальное приближение переменной x и укажем точность поиска корня:
Уточним заданное приближение к значению корня с помощью функции root:
Выполним проверку, подтверждающую, что первый корень найден с заявленной точностью:
Начальное приближение можно не задавать при использовании в качестве аргументов root границ отрезка нахождения корня, например, второй корень можно уточнить:
Задание 2. Решить уравнение .
Решение.
Напечатаем левую часть уравнения, не приравнивая выражение к 0, и выделим синим курсором переменную x:


Выберем из главного меню Symbolics / Polynomial Coefficients (Символика / Коэффициенты полинома). Появившийся вектор коэффициентов полинома выделим целиком синим курсором и вырежем в буфер обмена, используя кнопку Вырезать на панели инструментов Formatting (Форматирование) или комбинацию клавиш Ctrl + X.

Напечатаем v := и вставим вектор из буфера обмена, используя кнопку Вставить на панели инструментов или комбинацию клавиш Ctrl + V.
Для получения результата напечатаем polyroots(v) =:
Задание 3. Решить систему линейных уравнений Сделать проверку.
Решение.
1-й способ. Использование блока Given … Find.
Зададим всем неизвестным, входящим в систему уравнений, произвольные начальные приближения, например:
Напечатаем слово Given. Установим визир ниже и наберем уравнения системы, каждое в своем блоке. Используем при этом логический знак равенства (Ctrl + =).
После ввода уравнений системы напечатаем X := Find(x, y, z) и получим решение системы в виде вектора, состоящего из трех элементов:
Сделаем проверку, подставив полученные значения неизвестных в уравнения системы, например, следующим образом
После набора знака «=» в каждой строке должен быть получен результат, равный или приблизительно равный правой части системы. В данном примере системная переменная ORIGIN = 1.
2-й способ. Использование блока Given…Minerr.
Порядок решения системы этим способом аналогичен порядку использования блока Given … Find и представлен ниже вместе с проверкой:
3-й способ. Решение системы линейных уравнений матричным способом.
Зададим вектор b свободных членов системы. Сначала напечатаем b :=, затем вставим шаблон матрицы(Ctrl + M), где количество строк (Rows) равно 3, а количество столбцов (Columns) равно 1. Заполним его:
Решим систему матричным способом по формуле
Решим систему с помощью функции lsolve:
Для проверки правильности решения системы, полученного матричным способом, достаточно вычислить произведение A·X, которое должно совпасть с вектором-столбцом свободных членов b:
Автор Механик задал вопрос в разделе Другие языки и технологии
Ответ от Chiquitita Preciosa[гуру]
Корень—обратный слэш
Урок 4. Использование Mathcad в качестве калькулятора
Mathcad является хорошим калькулятором, особенно удобным при использовании цифровой клавиатуры. Несмотря на то, что Mathcad требует некоторого времени для освоения, он имеет одно неоспоримое преимущество – в нем можно сохранять результаты всех вычислений и выводить их на печать.
Бинарные операторы
Большую часть вычислений можно провести с помощью так называемых «бинарных» операторов (операторы для двух чисел):
возведение в степень [^]
Кроме того, существует оператор деления «в строку» [?], который по функции аналогичен обычному оператору деления. Все эти операторы находятся на вкладке Математика –> Операторы, но намного быстрее использовать для их ввода клавиатуру:

Использование бинарных операторов в Mathcadаналогично их использованию в обычном калькуляторе. Сначала щелкните мышью в пустой области, введите первое число, затем оператор, затем второе число. Для вывода результата следует нажать [=]. Например, ввод выражения [2/3=] приведет к следующему результату:

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

Правила старшинства операций и скобки
Используя скобки, можно изменить правила старшинства операций. В вычислениях скобки набираются сразу парой. В математической области введите открывающуюся скобку [(], и появится пара скобок:

В появившийся местозаполнитель вводите символы дальше, например, [3+7]:

Нажмите на стрелку вправо на клавиатуре, чтобы выделить закрывающую скобку, затем введите оператор деления: [?/]

Закончите вычисление, набрав [10=]:

Следующие выражения можно вычислить, набрав следующие комбинации клавиш [(2+3/5?*7=] и [2+3/5??*7=]:

При вводе бинарных операторов без чисел Вы получите оператор и два местозаполнителя:

При вводе сложных выражений часто бывает проще сначала ввести скобки и операторы, а затем вводить числа:

При вводе сложных выражений можно допустить ошибку. Как их можно исправить, мы обсудим в уроке 6 «Редактирование выражений». А пока просто удаляйте неправильные выражения, выделяя их и нажимая [Delete].
Унарные операторы
Существует несколько «унарных» операторов, применение которых требует только одно число: квадратный корень [\], модуль [|], факториал [!]. Примеры:

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

Оператор [-] также может использоваться для двух случаев: как оператор вычитания и как оператор отрицания. При внимательном рассмотрении видно, что оператор отрицания находится ближе к числу, следующему за ним:

Константы
Стандартные константы Mathcad (доступны на вкладке Математика –> Операторы и символы –> Константы):


Странная, но полезная константа – NaN (Not a Number– Не число). Ее можно использовать, чтобы избегать пропущенные или ошибочные значения:

Многие другие константы также находятся на вкладке Математика –> Операторы и символы –> Константы. В следующем уроке мы научимся определять собственные константы.
Функции
Mathcad включает в себя большое число функций. Весь список можно увидеть, нажав Функции –> Все функции:

Вот пример некоторых использования некоторых из них (обратите внимание, что у некоторых из них не совсем привычные названия, например, функцию арккосинуса следует набирать acos, а не arccos):

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

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

Чаще всего используют общий формат – число от 0.001 до 1000 представляется в привычной записи, для остальных чисел используется стандартная запись (число от 1 до 10, умноженное на 10 n ):

Десятичный формат представляет все числа в привычной десятичной форме:

Научный формат представляет все числа в стандартной записи:

На него похож инженерный формат (формат Проектирование), но показатель степени кратен трем:

В процентном формате число умножается на 100 и отображается со знаком процента:
Маткад как написать корень
Глава 4. Решение уравнений
Функция root используется для решения одного уравнения с одним неизвестным. Перед началом решения желательно построить график функции, чтобы проверить, есть ли корни, то есть пересекает ли график ось абсцисс. Начальное приближение лучше всего выбрать по графику поближе к корню, так как итерационные методы весьма чувствительны к выбору начального приближения.
Обращение к функции осуществляется следующим образом:
root ( f ( x ), x ), где f ( x ) – выражение, равное нулю; x – аргумент, варьируя который, система ищет значение, обращающее в нуль ( рис. 4.1 ).
Задан интервал поиска корней
Рис. 4. 1 Использование функции root
Mathcad позволяет вместо начального приближения задавать диапазон значений аргумента, в котором лежит значение искомого корня. В этом случае обращение к функции root должно иметь четыре параметра:
где a и b – границы интервала, в котором лежит один корень уравнения. Внутри интервала не должно быть больше одного корня, так как Mathcad выводит на экран лишь один корень, лежащий внутри интервала.

Значение функции на границах интервала должно быть разного знака, иначе, возможно, корень не будет найден.
Если функция имеет мнимый корень,
то начальное приближение задается комплексным числом
Рис. 4. 2 Решение уравнения с комплексными корнями
Если уравнение имеет несколько корней, то для их нахождения можно использовать разложение функции f ( x ) на простые множители:
у этой функции 3 корня
диапазон значений х для вывода графика
Рис. 4. 3 Определение трех корней уравнения
1) в стандартном меню Mathcad выберите команду Tools → Worksheet Options → Built – In Variables (Инструменты → Параметры документов → Встроенные переменные);
2) в открывшемся окне поменяйте значение Convergence Tolerance ( TOL ) (Погрешность сходимости).
Для повышения точности расчета корня можно заменить f ( x ) на
Корень можно найти и по графику, увеличив масштаб. Для этого необходимо:
1) выделить график, щелкнув левой кнопкой мыши внутри графика;
2)в главном меню Mathcad выбрать команду Format → Graph → Zoom (Формат→График→Масштаб);
3) при нажатии левой кнопки мыши обвести пунктирной линией область графика вблизи искомого корня, которую надо увеличить;
Прямо с графика можно передать в буфер обмена численное значение корня. Для этого выполните следующие действия:
1) Выделите график, щелкнув левой кнопкой мыши внутри графика,
2) в главном меню Mathcad выберите команду Format → Graph → Trace (Формат→График→Трассировка),
3) щелкните левой кнопкой мыши внутри графика – появится перекрестье осей,
4) двигая мышь при нажатой левой кнопке, установите перекрестье на пересечении графика с осью абсцисс. При этом численные значения координат перекрестья появляются в открытом окне X – Y Trace (Трассировка X и Y ).
5) правильно выбрав положение перекрестья, нажмите кнопки Copy X и Copy Y – численные значения будут помещены в буфер
6) вне поля графика запишите имя, которое хотите дать корню, и оператор присваивания :=. Нажмите кнопку Paste (Вставить) в стандартном меню Mathcad или в контекстном меню, открывающемся при нажатии правой кнопки мыши.

Рис. 4. 4 Определение корня уравнения по графику
В окне X – Y Trace есть пункт Track Data Points (Отмечать расчетные точки). Если установить этот флажок, при перемещении мыши пунктирное перекрестье на графике будет перемещаться скачками, отмечая расчетные значения функции. Если флажок снять, движение перекрестья становится плавным.
Корень в маткаде – Mathcad
Mathcad 2000 представляет ряд дополнительных возможностей для поиска корней уравнений. Функция root(f(var1, var2, …),var1, [a, b]) имеет теперь два необязательных аргумента a и b, которые определяют границы интервала, на котором следует искать корень. На концах интервала [a,b] функция f должна менять знак (f(a)f(b)<0). Задавать начальное приближение для корня не нужно. В данном варианте функция root использует алгоритм Риддера и Брента. Продемонстрируем использование расширенного варианта поиска корней на примере функции
Для оценки местоположения корней построим график этой функции
Рис. 5. График функции
На интервале [1,8] функция имеет два корня. Mathcad 2000 смог найти только один из них.
Дополнительные возможности появились и для нахождения корней полиномов. Функция polyroots может использовать два различных алгоритма поиска корней – метод Лагерра и метод сопровождающей матрицы. Переключение методов осуществляется в контекстном меню, которое вызывается нажатием правой кнопки мыши, когда указатель установлен на имя функции.
2.5 Блок-схемы
Метод половинного деления

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

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

1. Уточнить с точностью до =10 -2 корень х[-2;-1] уравнения х 3 -3х-0,4=0 методом деления отрезка пополам.
Решение. Вычисление занесем в таблицу 2.
f(xk)
Знаки функции
f(ak)
f(xk)
f(bk)
Получили отрезок [-1.67;-1.66], длина которого равна 0,01, и этот отрезок содержит корни уравнения. Числа -1,67 и -1,66 есть приближенные значения корня с погрешностью , не превышающей 0,01. Примем за приближенное значение корня –1,66.
2.6 Индивидуальные задания
3x 4 +4x 3 -12x 2 -5=0
2x 3 -9x 2 -60x+1=0
2e x = 5x+2
3x 4 +8x 3 +6x 2 -10=0
x 4 +4x 3 -8x 2 -17=0
x 4 -x 3 -2x 2 +3x-3=0
3x 4 +4x 3 -12x 2 +1=0
3x 4 -8x 3 -18x 2 +2=0
2x 4 -8x 3 +8x 2 -1=0
2x 4 +8x 3 +8x 2 -1=0
x 4 +4x 3 -8x 2 +1=0
2e x +3x+1=0
3x 4 +4x 3 -12x-5=0
2x 3 -9x 2 -60x+1=0
x 2 cos2x=-1,-2π≤x≤2π
3x 4 +8x 3 +6x 2 -10=0
x 4 +4x 3 -8x 2 -17=0
x 4 -x 3 -2x 2 +3x-3=0
3x 4 +4x 3 -12x+1=0
3x 4 -8x 3 -18x 2 +2=0
2e x -2x-3=0
3x 4 +4x 3 -12x 2 -5=0
2x 3 -9x 2 -60x+1=0
3x 4 +8x 3 +6x 2 -10=0
3x 4 +4x 3 -12x 2 +1=0
Задание 2.
1) Отделить корни уравнения графически и уточнить один из них методом итераций с точностью до 0,001.
2) Отделить корни уравнения аналитически и уточнить один из них методом итераций с точностью до 0,001.
Образец выполнения задания
1. Уточнить корни уравнения 3х-cosx-1=0 методом итераций с точностью до =10 -5 .

Решение. Отделим корни уравнения графически. Для этого запишем уравнение в виде 3х=cosx+1. Уравнение имеет единственный корень с[0,4;0,9].
Действительно, f(0,4) f(0,9)=-(0,72)1,08 f‘(х)=3+sin x>0 на всей числовой оси.
Запишем исходное уравнение в виде х=1/3(1+cos x) и положим:

(x)= 1/3(1+cos x).

Очевидно: 0‘(х) Вычисление занесем в Таблицу 3.
cos xk
Ответ: х=0,60710.
2. Найти корень уравнения с точностью до 10 -2 . Уравнение
f(x) x 3 – x – 1 = 0.
Решение. Уравнение имеет корень [1; 2], так как f(1)= — 1 < 0 и f(2) = 5 > 0. Его можно записать в виде х = х 3 – 1. Здесь
(х) = х 3 – 1 и (х) = 3х 2 ;
(х) 3 при 1 х 2
и, следовательно, условия сходимости процесса итерации не выполнены.
Если записать исходное уравнение в виде то будем иметь:
Отсюда при 1 х 2 и значит, процесс итерации для уравнения быстро сойдется.
Найдем корень данного уравнения с точностью до 10 -2 . Вычисляем последовательные приближения хn с одним запасным знаком по формуле
Найденные значения помещены в таблицу 4:
Значения последовательных приближений xi.
С точностью до 10 -2 можно положить = 1,324.
Ответ: х=1,324.
x 3 +0.4x 2 +0.6x-1.6=0
x 3 -0.2x 2 +0.4x-1.4=0
(x-1) 2 =1/2e x
x 3 -0.1x 2 +0.4x+2=0
x 3 -0.2x 2 +0.5x+-10
x 3 -0.1x 2 +0.4x+1.2=0
x 3 -0.2x 2 +0.5x-1.4=0
x 3 -3x 2 +12x-12=0
x 3 +0.2x 2 +0.5x+0.8=0
x 3 +0.1x 2 +0.4x-1.2=0
x 3 -0.1x 2 +0.4x+-1.50
x 3 -0.2x 2 +0.3x-1.2=0
x 3 +0.2x 2 +0.5x-2=0
x 3 +0.2x 2 +0.5x-1.2=0
x 3 -0.1x 2 +0.4x-1.5=0
x 3 -0.1x 2 +0.3x-0.=0
2.4 Решение уравнений средствами MathCad
2.4.1. Функции произвольного вида
Найдем нули функции на интервале x=[–2; 7], используя Mathcad. Изобразим сначала график функции на интервале [–2; 7].
Рис. 4. График функции на интервале [–2; 7]
На заданном интервале функция три раза обращается в ноль. Определим нули функции, используя встроенную функцию root(f(x),x). Первый аргумент – функция, нуль которой необходимо найти, второй – переменная, которую необходимо варьировать. (Вообще говоря, функция f может быть функцией многих переменных и необходимо указывать, по какой именно переменной мы ищем нуль функции.) Кроме того, необходимо задать начальное приближение поиска. Точность вычислений задается встроенной переменной TOL. По умолчанию ее значение равно 0,001. Это значение можно изменить либо через меню Math/Built–In Variables или непосредственно в тексте документа:
Задаем начальное приближение:
И вычисляем корень:
Если требуется найти несколько корней, как в нашей задаче, то имеет смысл определить новую функцию:
Функция r(x) возвращает значение корня ближайшее к x 1 , то есть начальное приближение мы задаем через аргумент функции. Задаем вектор начальных приближений x и находим соответствующие им корни X:
Для данного примера корни легко могут быть найдены аналитически. Они равны на заданном интервале /2/2 и 2. Полученный численный результат с заданной точностью совпадает с точным решением.
Определение новой функции целесообразно и в том случае, когда мы хотим исследовать зависимость решения от параметра. Пусть функция зависит от параметра a
Первый аргумент функции z задает значение параметра, второй – начальное приближение. Найдем корни уравнения при значениях параметра 1 и 2.
Если мы хотим получить комплексный корень, то начальное приближение следует задавать комплексным:
2.4.2 Нахождение корней полиномов
Для нахождения корней полиномов имеется встроенная функция polyroots(a). Аргументом функции является вектор коэффициентов полинома , то есть для уравнения вектор а имеет вид
Если в полиноме отсутствуют некоторые степени, то на соответствующих местах следует писать 0. Пусть требуется найти корни полинома
Коэффициенты полинома могут быть и комплексными.
2.4.3 Нахождение корней уравнений путем символических преобразований
Во многих случаях, Mathcad позволяет найти аналитическое решение уравнения. Для этого необходимо воспользоваться пунктом Solve for Variable из пункта меню Symbolic. Для того чтобы найти решение уравнения необходимо записать выражение и выделить в нем переменную (поставить указатель курсора возле переменной). Это необходимо для того, чтобы показать, какая именно величина является переменной, а какая – фиксированным параметром. После этого выбираем из пункта меню Symbolic подпункт Solve for Variable
Обратите внимание! В данном случае был найден только один корень, хотя, очевидно, их бесконечно много.
В случае полинома Mathcad, а точнее – встроенный символический процессор Maple – находит все корни.
–> Для этого примера найдено 2 корня, хотя они и вырождены. Пример с комплексными корнями: ––>
Уравнения с одним неизвестным в Mathcad
Простейший способ найти корень уравнения с одним неизвестным в Mathcad обеспечит функция root ( ). Аргументами функции root ( ) являются вид функции определяющей решаемое уравнение и имя переменой, относительно которой ищется решение — root (f(x),x) Если уравнение в Mathcad содержит несколько корней, то функция обеспечивает нахождение единственного корня, ближайшего к заданному начальному значению для искомой переменной. Точность вычислений может быть увеличена или уменьшена посредством задания значения переменной TOL, равной по умолчанию 10-3 и определённой в меню Math, Options (Математика, Опции). Установленное значение TOL также оказывает влияние на точность вычислений.

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

Другим способом решения уравнений в Mathcad является применение специального вычислительного блока, начинающегося с ключевого слова given с использованием функций find( ) и minerr ( ).
Блок имеет следующую структуру:
Начальное значение искомой переменной
Выражение с использованием функции find( ) или minerr ( )
Нахождение корней уравнения в Mathcad с использованием блока given…find ( ) в чем – то аналогично использованию функции root ( ). В Mathcad задается начальное значение для искомой переменной, после находится решение, ближайшее к заданному начальному условию. Использовании блока given…minerr ( ) имеет существенные особенности. Решение будет найдено в любом случае, даже при его отсутствии. Дело в том, что ищется не решение системы, а минимальная невязка уравнений. На листинге рассмотрена функция, заведомо не имеющая действительных корней и при использовании блока given…minerr ( ) найдено решение, значение, которое наиболее приближено к оси х, то есть обеспечивает минималь-ную невязку. Значение невязки (ошибки) показывает системная переменная ERR.
Как решать систему уравнений в «Маткаде»? Советы и рекомендации
Математическая программа MathCAD применяется при сложных алгебраических расчетах в то время, когда они затруднены или невозможны вручную. Данный ресурс значительно облегчает жизнь многим техническим, экономическим специальностям и студентам. Очень просто смоделировать какую-то задачу в математическом виде и получить желаемый ответ. Однако интерфейс может быть непонятен для новичков, и им тяжело адекватно воспринимать эту вычислительную среду. Одним из камней преткновения становится то, как решать систему уравнений в «Маткаде». Это очень важная функция, которую нужно изучить всем, кто желает продолжать работать в этой программе.
Как в «Маткаде» решить систему уравнений
На самом деле это не является простейшей задачей, но на рассмотренных примерах можно научиться их решать. Очень часто пользователи сталкиваются с системами уравнений и понятием «параметр». В математической рабочей среде параметр и то, как решать систему уравнений в «Маткаде», находится с помощью вспомогательной функции root. Помимо того, что нам придется привлекать эту функцию в решение, нам также понадобится значение начального приближения. Вообще, видов систем уравнений несколько, поэтому рассматривать будем конкретно на разных типах. Обсудим, с какими проблемами может столкнутся пользователь при применении функции root.
- Уравнение в изначальном виде не имеет корней.
- Корни уравнения находятся на достаточно далеком расстоянии от начального приближения.
- Уравнение претерпевает разрыв между начальным приближением и корнями.
- Уравнение имеет максимум и минимум между начальным приближением и корнями.
- Уравнение имеет комплексный корень при условии, что начальное приближение было вещественным.
Сложная функция и ее график

Начнем с самого простой и слегка отдаленной темы, чтобы постепенно ввести в курс дела начинающих пользователей. Это необходимо для того, чтобы символьно решить системы уравнений «Маткад», но сначала попробуем построить график для сложной функции. Пользователю нужно привести формулировку в математический вид, чтобы график функции построился корректно — так как мы имеем три участка, есть смысл воспользоваться программной конструкцией. Чтобы осуществить правильную запись уравнения, воспользуемся блоком if-otherwise.
Чтобы решить систему линейных уравнений в «Маткаде», можно использовать некоторые другие варианты. Первый способ заключается в том, что мы пишем нашу систему уравнений через оператор if. Во втором методе необходимо прибегнуть к методу логических множителей.

Строим быстрый график, нажав на сочетание клавиш Shift + 2. В появившемся окне графика вписываем функцию в средний вертикальный блок и в нижний вертикальный блок — аргумент «х».
Система нелинейных уравнений
Для нелинейных уравнение порядок нахождения корней мало чем отличается от другого типа. Допустим, имеем функцию f(x) = (e^x/(2(x-1)^2)-10 в интервале от -10 до 10 включительно. Перед тем, как решить систему нелинейных уравнений в «Маткаде», нужно построить график, чтобы оценить нули и воспользоваться табуляцией.

Поиск корней при помощи функции root
Перед тем, как решать систему уравнений в «Маткаде», необходимо провести операцию root. Предварительно необходимо было построить функцию и протабулировать ее. После всех операций можно приступать к поиску корней с заданным интервалом. Итак, будем на примере нелинейного уравнения отвечать на вопрос, как в «Маткаде» решать систему уравнений:
Поиск корней функцией find
В отличие от предыдущей функции, здесь не используется задание интервала или начального приближения. Данная команда работает от того, что присваивается начальное условие — около корня. Разберем работу этой функции на том же примере:

Лабораторная работа №3 Нахождение корней уравнения в MathCad
Количество просмотров публикации Лабораторная работа №3 Нахождение корней уравнения в MathCad — 503
Цель работы˸нахождение корней уравнения в программе MathCad с использованием встроенных функций root,polyroots, символьного решения.
Указания к выполнению лабораторной работы˸
IНахождение корней уравнения в программе MathCad с использованием встроенной функции root
1. Запустить программу MathCad .
2. Записать на рабочем листе MathCad вид функции f(х), для которой необходимо найти на заданном интервале корни.
3. Создать цикл из точек интервала, на котором определяются корни, и вычислить в этих точках функцию f(х). Построить график функции f(х) и график функции х0=0 (т.е. ось х).
4. Определить точки пересечения двух кривых f(х) и х0, которые будут приближением к корням уравнения.
4.1. Использовать для определения на графике значений корней в контекстном меню (рис.17, a) опцию Trace (рис. 17,б), установить флажок в окне Track Data Poіnt.
4.2. Подвести курсор мыши к точкам пересечения кривых, координаты точек пересечения кривых, т.е. корни, будут представлены в окнах Х-Value и У- Value, а на графике отобразится вертикальная прямая.
5. Задать для независимой переменной х начальное приближение, которое выбирается как значение точки пересечения кривых f(х) и х0. Обратиться ко встроенной в MathCad функции root(f(x), x) (функция root возвращает значение независимой переменной х, для которой f(х) равняется 0) и найти корень х1.
6. Найти второй (х2) и третий (х3) корни уравнения f(х)=0 (уравнение третьей степени имеет не больше трех действительных корней), задав для них соответственно их начальные значения как координаты точек пересечения кривых f(х) и х0 и использовав функцию root.
Рисунок 17 – Диалоговые окна для определения координат точек пересечения кривых
ІІ Нахождение корней уравнения в программе MathCad с использованием встроенной функции polyroots, которая возвращает вектор, имеющий все корни уравнения, коэффициенты уравнения при этом задаются вектором.
1. Записать на рабочем листе MathCad вид функции f(х), для которой необходимо найти на заданном интервале корни.
2. Записать как вектор v все коэффициенты уравнения, расположить их в порядке увеличения степеней.
3. Найти корни, обратившись ко встроенной функции r˸=polyroots(v), результат будет получено относительно трансформированного вектора r T .
4. Для интервала нахождения корня и количества элементов вектора r T создать соответствующие циклы и вычислить значение функции в точках цикла.
5. Построить график функции в точках цикла, а также в найденных точках корней, в которых функция будет иметь значения, равные нулю.
ІІІ Нахождение корней уравнения в программе MathCad с использованием символьных решений уравнений.
1. Ввести левую часть уравнения.
2. Ввести знак равенства с использованием панели управления Evaluatіon (Выражения) или с помощью нажатия клавиш Ctrl + =.
3. За знаком равенства ввести правую часть уравнения.
4. Выделить переменную, относительно которой решается уравнение.
5. Выбрать команду Symbolіc/Varіable/Solve.
Читайте также
В качестве дополнительной возможности выполнения вычислений, которые не обеспечивает непосредственно СИЛТ, в результате анализа положительных и отрицательных сторон различных коммерческих пакетов был выбран математический пакет MathCAD. Такой выбор обусловлен… [читать подробнее].
Текстовую область можно разместить в любом незанятом месте документа Mathcad. Чтобы до начала ввода указать программе, что требуется создать не формульный, а текстовый регион, достаточно, перед тем как ввести первый символ, нажать клавишу » (двойная кавычка). В результате на… [читать подробнее].
Для выполнения программы-функции необходимо обратиться к имени программы-функции с указанием списка фактических параметров (если в описании программы присутствует список формальных параметров), т. е. (список фактических параметров) Фактические… [читать подробнее].
Для набора выражения используются клавиатура и панели инструментов, которые доступны с помощью меню Просмотр\Панели. Например, для расчёта выражения необходимо набрать 1/, затем найти знак корня в панели «Калькулятор». В знаменателе выражения появится шаблон который… [читать подробнее].
Основными инструментами работы в Mathcad являются математические выражения, переменные и функции. Нередко записать формулу, использующую ту или иную внутреннюю логику (например, возвращение различных значений в зависимости от условий), в одну строку не удается. Назначение… [читать подробнее].
Для проведения измерений осциллограф нужно настроить, для чего следует задать: • расположение осей, по которым откладывается сигнал; • нужный масштаб развертки по осям; • смещение начала координат по осям, • режим работы по входу: закрытый или открытый; • режим… [читать подробнее].
Для написания программ в среде MathCad [4,6] существует специальная панель Programmіng (Программирование) (рис.16, а), она относится к панели Math (Математические) (рис.16, б). Язык программирования MathCad имеет предельно малое количество операторов (рис. 16, а). Чтобы написать программу,… [читать подробнее].
Применим возможности системы MathCad для расчета переходных процессов звеньев второго порядка. Передаточная функция W(s) звена приведена на рисунке 4.2. Обратное преобразование Лапласа, осуществляемое символьным оператором над изображением W(s)/s , позволяет получить… [читать подробнее].
Пример1. Предположим, вы нашли в учебнике формулу, например, мощности некоего модуля: Nм= . Она состоит из двух частей. В первой — поясняется, из какой формулы она получена, а во второй – приведено то, что осталось после раскрытия переменных и сокращения первой части. Конечно,… [читать подробнее].
Чтобы определить переменную, достаточно ввести ее имя и присвоить ей некоторое значение, для чего служит оператор присваивания. 1. Введите в желаемом месте документа имя переменной. 2. Введите оператор присваивания с помощью клавиши или нажатием соответствующей… [читать подробнее].
Основы работы в MathCAD — Стр 3

Задача 1. Пусть надо решить систему
Для этого необходимо совершить следующие действия:
1)Набрать начальные приближения – произвольные числа х:=1 y:=1 z:=1
2)Набрать с клавиатуры директиву given (дано)
3)Набрать систему уравнений, обязательно записывая знак умножения, причем знак = нужно набирать не на арифметической панели , а на панели логики ,
которая выводится на экран кнопкой
4)Набрать выражение otvet:= find(x,y,z)
После этого будет получен ответ в виде вектора – столбца.
Вместо слова otvet можно использовать любой набор букв и цифр, начинающийся с буквы. Этот набор обозначает имя, которое Вы присваиваете вектору ответов. На рис.1 показано решение этой системы
Рис.1. Решение системы линейных уравнений в решающем блоке.
Задача 1. Решите приведенную выше систему.
Задача 2. Решите самостоятельно приведенные ниже системы линейных алгебраических уравнений.
Нахождение корня в Mathcad
1. Построить график функции f(x).Отделить все корни, лежащие на данном отрезке.
2. Вычислить наибольший из корней методами, указанными в варианте. Точность
. Программа должна быть универсальной. Методы оформить в виде отдельных подпрограмм, содержащих проверку условий сходимости метода. Метод, начальное приближение
задавать как параметр, вводимый с клавиатуры. Вычислить корень при различных значениях
. Вывод на консоль: метод,
, номер итерации — k,
,
.
3. Сравнить число необходимых итераций в обоих методах, указать преимущества и недостатки методов. Сделать выводы.
4. Графически проиллюстрировать сходимость методов для своего уравнения.
5. Вычислить наибольший из корней в MathCAD.
![]() |
![]() |
![]() |
![]() |
Из графика видно, что первый корень находится на отрезке [-2;-1], второй на отрезке [1;3], а третий- [3;5]. Наибольший корень лежит на отрезке [3;5].
Составим программу для вычисления наибольшего из корней данного уравнения:
Похожие публикации:
- Как искать музыку в telegram
- Как называется документ программы mathcad
- Как найти площадь под графиком в mathcad
- Как написать систему уравнений в mathcad
Что такое given в mathcad
С вычислительной точки зрения, решение СЛАУ с квадратной матрицей А не представляет трудностей, если размерность А не очень велика. С большой матрицей проблем также не возникает, если она не очень плохо обусловлена (конечно, надо учитывать, что объем вычислений возрастает с увеличением размерности матрицы). В данном разделе будут рассмотрены именно такие системы, решение которых реализовано в Mathcad в двух вариантах:
- вычислительный блок Given/Find (приближенный итерационный алгоритм);
- встроенная функция isoive (точный алгоритм Гаусса).
При этом СЛАУ можно решать как в более наглядной форме (8.1), так и в более компактной матричной форме (8.2). Для первого способа следует использовать блок Given/Find (он может также применяться в случае систем уравнений и неравенств, а также при решении переопределенных СЛАУ), а для второго – как вычислительный блок, так и встроенную функцию isoive.
Вычислительный блок Given/ Find
Для того чтобы численным методом решить СЛАУ при помощи вычислительного блока (он был подробно описан в главе 5), следует после ключевого слова Given выписать ее, пользуясь логическими операторами. Рассмотрим в качестве примера систему трех уравнений, приведенную в листинге 8.1 (после ключевого слова Given). Неизвестными являются три компонента вектора х, поэтому именно эта векторная переменная является аргументом встроенной функции Find(x), решающей систему в последней строке листинга. Очень важно, что при использовании вычислительного блока Given/Find всем неизвестным требуется присвоить начальные значения, как это сделано в первой строке листинга 8.1.
Примечание
Если матрица СЛАУ является невырожденной (точнее, если ее число обусловленности не слишком велико), то известно, что численное решение системы уравнений единственно. Поэтому начальные значения могут быть произвольными, т. к. результат работы численного метода все равно сойдется к точному решению.
Листинг 8.1. Решение СЛАУ с помощью вычислительного блока:
Листинг 8.1 демонстрирует запись каждого уравнения системы (в промежутке между Given и Find), что очень неудобно, когда система содержит большое число уравнений. В последнем случае намного лучше применить матричную запись СЛАУ, как это показано в листинге 8.2. Первая строка листинга представляет собой определение матрицы СЛАУ А и вектора правых частей b, а в остальном работа блока Given/Find полностью идентична предыдущему листингу.
Листинг 8.2. Решение СЛАУ, записанной в матричной форме:
Проверка правильности решения СЛАУ прямой подстановкой, причем в матричной форме, приведена в листинге 8.3. Обратите внимание на матрицу в первой строке листинга, представляющую рассматриваемую систему уравнений. Во второй строке листинга 8.3 производится вычисление нормы невязки, характеризующей точность полученного решения СЛАУ.
Примечание
Такая большая невязка может вызвать совершенно обоснованное удивление читателя. На самом деле точность решения гораздо выше (в данном примере
10 -15 , а полученное значение невязки -10 -3 объясняется соответствующим представлением вещественных чисел результата на экране (по умолчанию с точностью до 3-го знака).
функции МathCAD. для чего нужно условие Given где можно найти функцию Maximize
Для решения систем в Mathcad применяется специальный вычислительный блок Given/Find (Дано/найти) , состоящий из трех частей, идущих последовательно друг за другом:
Given — ключевое слово;
система, записанная логическими операторами в виде равенств и, возможно, неравенств;
Find(xi, . хм) — встроенная функция для решения системы уравнений относительно переменных x1, ..хM.
Вставлять логические операторы следует, пользуясь панелью инструментов Boolean (Булевы операторы) . Если вы предпочитаете ввод с клавиатуры, помните, что логический знак равенства вводится сочетанием клавиш +. Значение функции Find представляет собой матрицу, составленную из всевозможных решений по каждой переменной, причем количество ее строк в точности равно числу аргументов Find. Структура матрицы решения станет сразу вам понятной, как только вы бросите взгляд на примеры, приведенные ниже в данном разделе.
Given в маткаде это
Здесь f1(x1, . ,хм) , . fn(x1, . ,хм) — некоторые скалярные функции от скалярных переменных хцх2/ . /хм и, возможно, от еще каких-либо переменных. Уравнений может быть как больше, так и меньше числа переменных. Заметим, что систему (1) можно формально переписать в виде
где х — вектор, составленный из переменных x1,х2, . ,хм, a f (х) — соответствующая векторная функция.
Для решения систем имеется специальный вычислительный блок, состоящий из трех частей, идущих последовательно друг за другом:
- Given — ключевое слово;
- система, записанная логическими операторами в виде равенств и, возможно, неравенств;
- Find(x1. ,хм) — встроенная функция для решения системы относительно переменных хх. хм.
Вставлять логические операторы следует, пользуясь панелью инструментов Boolean (Булевы операторы). Если Вы предпочитаете ввод с клавиатуры, помните, что логический знак равенства вводится сочетанием клавиш + . Блок Given/Find использует для поиска решения итерационные методы, поэтому, как и для функции root, требуется задать начальные значения для всех х1, . ,xм. Сделать это необходимо до ключевого слова Given. Значение функции Find есть вектор, составленный из решения пс каждой переменной. Таким образом, число элементов вектора равно число аргументов Find.
В листинге 8.6. приведен пример решения системы двух уравнений.
Листинг 8.6. Решение системы уравнений
В первых двух строках листинга вводятся функции, которые определяют систему уравнений. Затем переменным х и у, относительно которых она будет решаться, присваиваются начальные значения. После этого следует ключевое слово Given и два логических оператора, выражающих рассматриваемую систему уравнений. Завершает вычислительный блок функция Find, значение которой присваивается вектору v. Следующая строка показывает содержание вектора v, т. е. решение системы. Первый элемент вектора есть первый аргумент функции Find, второй элемент — ее второй аргумент. В последних двух строках осуществлена проверка правильности решения уравнений.
Часто бывает очень полезно проверить точность решения уравнений, вычислив значения образующих их функций в найденных вычислительным процессором корнях, как это сделано в конце листинга 8.6.
Отметим, что уравнения можно определить непосредственно внутри вычислительного блока. Таким образом, можно не определять заранее функции f (x,y) и д(х,у), как это сделано в первых двух строках листинга 8.6, а сразу написать:
Такая форма представляет уравнения в более привычной и наглядной форме, особенно подходящей для документирования работы.
Графическая интерпретация рассмотренной системы представлена на рис. 8.3. Каждое из уравнений показано на плоскости XY графиком. Первое — сплошной кривой, второе — пунктиром. Поскольку второе уравнение линейное, то оно определяет на плоскости XY прямую. Две точки пересечения кривых соответствуют одновременному выполнению обоих уравнений, т. е. искомым действительным корням системы. Как нетрудно убедиться, в листинге найдено только одно из двух решений — находящееся в правой нижней части графика Чтобы отыскать и второе решение, следует повторить вычисления, изменив начальные значения так, чтобы они лежали ближе к другой точке пересечения графиков, например x=-1, y=-1.
Рис. 8.3. Графическое решение системы двух уравнений
Пока мы рассмотрели пример системы из двух уравнений и таким же числом неизвестных, что встречается наиболее часто. Но число уравнений и неизвестных может и не совпадать. Более того, в вычислительный блок можно добавить дополнительные условия в виде неравенств. Например, введение ограничения на поиск только отрицательных значений х в рассмотренный выше листинг 8.6 приведет к нахождению другого решения, как это показано в листинге 8.7.
Листинг 8.7. Решение системы уравнений и неравенств
Обратите внимание, что, несмотря на те же начальные значения, что и в листинге 8.6, мы получили в листинге 8.7 другой корень. Это произошло именно благодаря введению дополнительного неравенства, которое определено в блоке Given в предпоследней строке листинга 8.7.
Если предпринять попытку решить несовместную систему, Mathcad выдаст сообщение об ошибке, гласящее, что ни одного решения не найдено, и предложение попробовать поменять начальные значения или значение погрешности.
Вычислительный блок использует константу CTOL в качестве погрешности выполнения уравнений, введенных после ключевого слова Given. Например, если CTOL=0.001, то уравнение х=10 будет считаться выполненным и при х=10.001, и при х=9.999. Другая константа TOL определяет условие прекращения итераций численным алгоритмом (см. разд. 8.4). Значение стоъ может быть задано пользователем так же как и TOL, например, CTOL:=0.01. По умолчанию принято, что CTOL=TOL=0.001, но Вы по желанию можете переопределить их.
Особенную осторожность следует соблюдать при решении систем с числом неизвестных большим, чем число уравнений. Например, можно удалить одно из двух уравнений из рассмотренного нами листинга 8.6, попытавшись решить единственное уравнение g(х,у)=о с двумя неизвестными х и у. В такой постановке задача имеет бесконечное множество корней: для любого х и, соответственно, у=-х/2 условие, определяющее единственное уравнение, выполнено. Однако, даже если корней бесконечно много, численный метод будет производить расчеты только до тех пор, пока логические выражения в вычислительном блоке не будут выполнены (в пределах погрешности). После этого итерации будут остановлены и выдано решение. В результате будет найдена всего одна пара значений (х,у), обнаруженная первой.
О том, как найти все решения рассматриваемой задачи, рассказывается в разд. 8.7.
Вычислительным блоком с функцией Find можно найти и корень уравнения с одним неизвестным. Действие Find в этом случае совершенно аналогично уже рассмотренным в данном разделе примерам. Задача поиска корня рассматривается как решение системы, состоящей из одного уравнения. Единственным отличием будет скалярный, а не векторный тип числа, возвращаемого функцией Find. Пример решения уравнения из предыдущего раздела приведен в листинге 8.8.
Листинг 8.8. Поиск корня уравнения с одним неизвестным с помощью функции Find
В чем же отличие приведенного решения от листинга 8.1 с функцией root? Оно состоит в том, что одна и та же задача решена различными численными методами. В данном случае выбор метода не влияет на окончательный результат, но бывают ситуации, когда применение того или иного метода имеет решающее значение.
MathCad | ANSYS CFX | MS Office
Поиск по сайту
Выбор языка
Решение уравнений в MathCad
Часто в курсовом проекте, либо в лабораторной работе встает вопрос о решении какого-либо сложного большого уравнения с одним неизвестным. Не всегда хочется тратить 10 — 20 минут на рутинные преобразования в процессе которых, велика вероятность допущения ошибки. Целесообразно воспользоваться математической программой (в данном случае MathCad), которая быстро и правильно сможет дать ответ. Мы рассмотрим пример использования 2-ух способов решения уравнений, причем как в числах так и в символьном виде.
Способ №1: использование вычислительного блока Given — Find:
Это наиболее распространенный способ решения обычных алгебраических уравнений. Он достаточно прост. В рабочем поле записываем первое слово Given. Это служебное слово. Оно «подключает» определенные программные модули mathcad, необходимые для решения уравнения. Эти модули в своем составе содержат основные численные методы решения: метод бисекции, простой итерации и пр. Далее пишется наше уравнение в любом — явном или неявном виде. Само уравнение набирается с клавиатуры с использованием логического символа «равно». На панельке Boolean (Булева алгебра) он выделен жирным шрифтом (см. рис. 1). Рис. 1. Панель «Булевая алгебра»
Далее пишется слово Find(x) (где х — переменная). Это функция, которая и получает ответ. Функцию Find(x) можно присвоить какой-либо переменной и использовать далее в расчетах. Для получения результата, после Find(x) следует поставить символ «→» либо «=» (см. рис. 2). Рис. 2. Панель «Вычисления»
В зависимости от сложности уравнения через некоторое время MathCad выведет результат.
Возможности MathCad позволяют определить корень как в численном виде (т. е. результат решения уравнения представляет собой число) так и в символьном (результат — выражение). Для численного определения корня необходимо задать (определить) ВСЕ переменные входящие в уравнение и даже искомую переменную. MathCad воспринимает задание искомой переменной как начальное приближение корня. Крайне важно задаться начальным приближением, поскольку без него корень уравнения невозможно определить в силу особенностей используемых численных методов. Нужно отметить, что некорректное задание начального приближения часто становится причиной получения неверного результата либо его отсутствия вообще. Но не стоит забывать также и о том, что корня может не быть, потому что само уравнение его не имеет.
В том случае, если необходимо решить уравнение относительно какой-либо переменной в символьном виде, то нет необходимости задаваться значениями всех входящих в уравнение параметров и начальным приближением переменной. В этом случае достаточно ввести уравнение (также через «жирное равно») и после оператора Find(x) поставить «→». При этом будут работать уже другие функции MathCad, которые заточены под символьное преобразование и упрощение выражений. Результатом решения будет выражение. Стоит отметить, что MathCad сможет записать решение далеко не всякого уравнения. В этом смысле его возможности ограничены.
Для подтверждения и закрепления выше сказанного, Вам предлагается скачать и познакомиться с примерами решения уравнений как в численном так и в символьном виде.
Пример №1. Решение уравнения в MathCad с помощью блока Given Find численно: Скачать
Пример №2. Решение уравнения в MathCad с помощью блока Given Find символьно: Скачать
Способ №2: Применение метода solve:
Этот метод по существу не отличается от выше рассмотренного, поскольку процедура нахождения корня аналогична. Разница лишь в оформлении. В этом случае наше уравнение записывается без операторов Given и Find. После ввода уравнения на панели Symbolic нажимаем кнопку solve (см. рис. 3), определяем через запятую искомую переменную, жмем «→» и получаем ответ.
Рис. 3. Панель «Символьные»
Иногда, то что не получается найти с помощью Given Find получается в solve.
Пример №3. Решение уравнения в MathCad с помощью solve: Скачать
Mathcad дает возможность решать также и системы уравнений. Максимальное число уравнений и переменных равно пятидесяти. В первой части этого раздела описаны процедуры решения систем уравнений. В заключительной части приведены примеры и проведено обсуждение некоторых часто встречающихся ошибок. Результатом решения системы будет численное значение искомого корня. Для символьного решения уравнений необходимо использовать блоки символьного решения уравнений. При символьном решении уравнений искомый корень выражается через другие переменные и константы.
Для решения системы уравнений выполните следующее:
- Задайте начальные приближения для всех неизвестных, входящих в систему уравнений. Mathcad решает уравнения при помощи итерационных методов. На основе начального приближения строится последовательность, сходящаяся к искомому решению.
- Напечатайте ключевое слово Given. Оно указывает Mathcad, что далее следует система уравнений. При печати слова Given можно использовать любой шрифт, прописные и строчные буквы. Убедитесь, что при этом Вы не находитесь в текстовой области или параграфе.
- Введите уравнения и неравенства в любом порядке ниже ключевого слова Given. Удостоверьтесь, что между левыми и правыми частями уравнений стоит символ =. Используйте [Ctrl]= для печати символа =. Между левыми и правыми частями неравенств может стоять любой из символов , , и .
- Введите любое выражение, которое включает функцию Find. При печати слова Find можно использовать шрифт любого размера, произвольный стиль, прописные и строчные буквы.
Функция Find возвращает найденное решение следующим образом:
- Если функция Find имеет только один аргумент, то она возвращает решение уравнения, расположенного между ключевым словом Given и функцией Find.
- Если функция Find имеет более одного аргумента, то она возвращает ответ в виде вектора. Например, Find(z1, z2) возвращает вектор, содержащий значения z1 и z2 , являющиеся решением системы уравнений.
Ключевое слово Given, уравнения и неравенства, которые следуют за ним, и какое-либо выражение, содержащее функцию Find, называются блоком решения уравнений.
На Рисунке 5 показан рабочий документ, который использует блок решения уравнений для решения одного уравнения с одним неизвестным. Так как имеется только одно уравнение, то только одно уравнение появляется между ключевым словом Given и формулой, включающей функцию Find. Так как уравнение имеет одно неизвестное, то функция Find имеет только один аргумент. Для решения одного уравнения с одним неизвестным можно также использовать функцию root, как показано ниже:
Рисунок 5: Блок решения уравнений для одного уравнения с одним неизвестным.
Между ключевым словом Given и функцией Find в блоке решения уравнений могут появляться выражения строго определенного типа. Ниже приведен список всех выражений, которые могут быть использованы в блоке решения уравнений. Использование других выражений не допускается. Эти выражения часто называются ограничениями. В таблице, приведенной ниже, через x и y обозначены вещественнозначные скалярные выражения, а через z и w обозначены любые скалярные выражения.
| Условие | Как ввести | Описание |
| w = z | [Ctrl] = | Булево равенство возвращает 1, если операнды равны; иначе 0 |
| x > y | > | Больше чем. |
| x |
Следующие выражения недопустимы внутри блока решения уравнений:
- Ограничения со знаком .
- Дискретный аргумент или выражения, содержащие дискретный аргумент в любой форме.
- Неравенства вида a -15 .
Причиной появления этого сообщения об ошибке может быть следующее:
- Поставленная задача может не иметь решения.
- Для уравнения, которое не имеет вещественных решений, в качестве начального приближения взято вещественное число. Если решение задачи комплексное, то оно не будет найдено, если только в качестве начального приближения не взято также комплексное число. На Рисунке 11 приведен соответствующий пример.
- В процессе поиска решения последовательность приближений попала в точку локального минимума невязки. Метод поиска решения, который используется в Mathcad, не позволяет в этом случае построить следующее приближение, которое бы уменьшало невязку. Для поиска искомого решения пробуйте использовать различные начальные приближения или добавьте ограничения на переменные в виде неравенств, чтобы обойти точку локального минимума.
- В процессе поиска решения получена точка, которая не является точкой локального минимума, но из которой метод минимизации не может определить дальнейшее направление движения. Метод преодоления этой проблемы — такой же, как для точки локального минимума: измените начальное приближение или добавьте ограничения в виде неравенств, чтобы миновать нежелательную точку остановки.
- Возможно, поставленная задача не может быть решена с заданной точностью. Если значение встроенной переменной TOL слишком мало, то Mathcad может достигнуть точки, находящейся достаточно близко к решению задачи, но уравнения и ограничения при этом не будут выполнены с точностью, задаваемой переменной TOL. Попробуйте увеличить значение TOL где-нибудь выше блока решения уравнений.
Что делать, когда имеется слишком мало ограничений
Если количество ограничений меньше, чем количество переменных, Mathcad вообще не может выполнить блок решения уравнений. Mathcad помечает в этом случае функцию Find сообщением об ошибке “слишком мало ограничений”.
Задача, аналогичная той, которая приведена на Рисунке 12, называется недоопределенной. Ограничений в ней меньше, чем переменных. Поэтому ограничения не содержат достаточной информации для поиска решения. Поскольку функция Find имеет пять аргументов, Mathcad определяет, что требуется решить два уравнения с пятью неизвестными. Вообще говоря, такая задача обычно имеет бесконечное число решений.
При использовании блока решения уравнений в Mathcad необходимо задать количество уравнений по крайней мере не меньшее, чем число искомых неизвестных. Если зафиксировать значения некоторых переменных, удастся решить уравнения относительно оставшихся переменных. На Рисунке 13 показано, как, зафиксировав часть переменных, решить недоопределенную задачу из Рисунка 12. Поскольку функция Find содержит только два аргумента, z и w, Mathcad определяет переменные x, y и v как имеющие фиксированные значения 10, 50 и 0 соответственно. Блок решения уравнений становится в этом случае корректно определенным, потому что теперь имеются только две неизвестных, z и w, и два уравнения.
Рисунок 12: Функция Find имеет пять аргументов, поэтому Mathcad определяет, что требуется решить два уравнения с пятью неизвестными.
Рисунок 13: Проблема может быть решена, если уменьшить количество аргументов функции Find.
Исправляем ошибки: Нашли опечатку? Выделите ее мышкой и нажмите Ctrl+Enter
Вычислительный блок Given/Odesolve
Ниже приведены два примера для решения дифференциальных уравнений первого и второго порядка с использованием вычислительного блока решения Given/Odesolve.




Вычислительный блок для решения одного ОДУ состоит из трех частей:
— ключевое слово given;
— ОДУ и начальные условия, записанные с помощью логического равенства;
— встроенная функция Odesolve(x, b) относительно независимой переменной x на интервале [a, b]; b — верхняя граница отрезка интегрирования. Допустимо и даже предпочтительнее задание функции Odesolve(a, b, step) с тремя параметрами, где step — внутренний параметр численного метода, определяющий количество шагов; чем больше step, тем с лучшей точностью будет получен результат, но тем больше времени будет затрачено на его поиск.
Функция Odesolve возвращает решение задачи в виде функции. Эта функция не имеет символьного представления и может только вернуть численное значение решения уравнения в любой точке интервала интегрирования.
Функция Odesolve использует для решения дифференциальных уравнений наиболее популярный алгоритм Рунге-Кутта четвертого порядка, описанный в большинстве книг по методам вычислений. Он обеспечивает малую погрешность для широкого класса систем ОДУ за исключением жестких систем. Если щелчком правой кнопки мыши на блоке формул с функцией Odesolve вызвать контекстное меню, то можно изменить метод вычисления решения, выбрав один из трех вариантов: Fixed — метод Рунге-Кутта с фиксированным шагом интегрирования (этот метод используется по умолчанию), Adaptive — также метод Рунге-Кутта, но с переменным шагом, изменяемым в зависимости от скорости изменения функции решения, Stiff — метод, адаптированный для решения жестких уравнений и систем (используется так называемый метод PADAUS).
Альтернативный метод решения ОДУ заключается в использовании одной из встроенных функций: rkfixed, Rkadapt, или Bulstoer. Все они решают задачу Коши для системы дифференциальных уравнений первого порядка, но каждая из них использует для этого свой метод. Для простых систем не играет большой роли, какой метод использовать — все равно получите решение достаточно быстро и с высокой точностью. Но для сложных или специфических систем бывает, что некоторые методы вообще не могут дать удовлетворительного решения за приемлемое время. Именно для таких сложных, но не редких случаев в MathCAD и введено несколько различных методов решения систем ДУ.
— rkfixed — метод Рунге-Кутта с фиксированным шагом интегрирования. Самый простой и быстрый метод, но далеко не всегда самый точный. Полностью аналогичен использованию функции Odesolve с выбранным в контекстном меню методом Fixed.
— Rkadapt — метод Рунге-Кутта с переменным шагом интегрирования. Величина шага адаптируется к скорости изменения функции решения. Данный метод позволяет эффективно находить решения уравнений, в случае если оно содержит как плавные, так и быстро меняющиеся участки. Там, где решение меняется слабо, шаги выбираются более редкими, а в областях его сильных изменений — частыми. В результате для достижения одинаковой точности требуется меньшее число шагов, чем для rkfixed. Полностью аналогичен использованию функции Odesolve с выбранным в контекстном меню методом Adaptive.
— Bulstoer — метод Булирша — Штера. Этот метод более эффективен, чем метод Рунге-Кутта, в случае если решение является плавной функцией.
Имена функций Rkadapt и Bulstoer начинаются с прописной буквы. В MathCAD для некоторых имен функций неважно, с какой буквы они записаны, но для перечисленных функций это принципиально, т.к. в MathCAD также существуют функции с такими же именами, только записанные с маленькой буквы — rkadap, bulstoer. Эти функции используются в тех случаях, когда важным является решение задачи в конечной точке интервала интегрирования.




Выше приведены примеры решения тех же дифференциальных уравнений первого и второго порядка, которые были решены с использованием вычислительного блока Given/Odesolve.
Применение встроенных функций в документах MathCAD выглядит сходным образом, т.е. функции Rkadapt и Bulstoer имеют тот же синтаксис, что и выше приведенная функция rkfixed. Назначение аргументов в этих встроенных функциях следующее:
— y — вектор начальных значений неизвестных функций, входящих в систему. В случае одного уравнения и одной неизвестной функции — это просто число.
— а — начало отрезка, на котором ищется решение системы (отрезка интегрирования). Именно в этой точке значения неизвестных функций принимаются равными элементам вектора y.
— b — конец отрезка интегрирования.
— n — количество частей, на которые разбивается отрезок [a, b] при решении системы. Чем больше это число, тем точнее получается решение, но расчет занимает больше времени.
— F(x,y) — векторная функция, элементы которой содержат правые части уравнений системы в нормальной форме (когда левые части — первые производные от соответствующих функций, а в правых частях производные отсутствуют). Аргументами этой функции являются вектор y, элементы которого соответствуют различным неизвестным функциям системы, и скалярный аргумент x , соответствующий независимой переменной в системе. В случае одного уравнения функция F может быть скалярной функцией, зависящей от двух скалярных переменных x и y.
Возвращаемым значением всех вышеперечисленных встроенных функций является матрица. Первый столбец этой матрицы — это точки, на которые разбивается отрезок [a, b], а остальные столбцы — это значения функций системы в этих точках. Если в аргументе функции rkfixed было указано количество частей n = 100, то матрица будет содержать 101 строку вместе с начальной.
Похожие публикации:
- Как посмотреть корзину в snapchat
- Как поставить штрих в mathcad
- Как построить график по точкам mathcad
- Как посчитать интеграл в программе mathematica







