Найти коэффициенты уравнения в маткаде

Видео:Mathcad-09. Пример: уравненияСкачать

Mathcad-09. Пример: уравнения

MathCAD — это просто! Часть 2. Уравнения

Решение уравнений на бумаге — это задача, с которой каждый знаком еще со школьной скамьи. Сначала мы учились решать простые линейные уравнения, деля а на b и получая x, потом — системы уравнений, затем переходили к квадратным уравнениям. Находим дискриминант, извлекаем корень, делим, складываем… Все это вам знакомо, не так ли? Знакомы, наверное, и трансцендентные уравнения: тригонометрические, логарифмические (они же показательные), смешанные…

Системы трансцендентных уравнений — это вообще песня, причем песня из серии «этот стон у нас песней зовется». Люди давно уже пришли к выводу, что решать уравнения с помощью компьютера — отнюдь не роскошь, а вполне разумный подход к делу. Только раньше каждый, кто желал решить уравнение, должен был уметь программировать и владеть при этом какими-нибудь численными методами — например, методом Гаусса для решения систем линейных уравнений или методом Зейделя для решения трансцендентных. Сейчас эти все методы, конечно, тоже используются, но большая часть пользователей могут забыть их как страшный сон — все эти вычисления возможны в MathCAD’е, и именно о том, как их выполнять в этом замечательном математическом пакете, я сейчас и расскажу.

Аналитическое решение уравнений

Довольно значительное число уравнений поддаются аналитическому решению — т.е. решению в обобщенном виде, когда корни уравнения представляются в виде какой-то формулы, выражающей их зависимость от входящих в уравнение функций и различных коэффициентов перед ними. При этом, однако, надо заметить, что такой подход применим отнюдь не ко всем уравнениям — большая часть трансцендентных уравнений не может быть решена аналитически. Поэтому мы сейчас будем говорить преимущественно о полиномиальных уравнениях, известных также под названием алгебраических. Алгебраическим называется уравнение, которое можно преобразовать так, что в левой части будет многочлен от одной или нескольких неизвестных, а в правой — нуль. Степень многочлена называется степенью уравнения. Простейшие алгебраические уравнения: линейное уравнение — уравнение 1-й степени с одним неизвестным ax + b = 0, имеющее один действительный корень; квадратное уравнение — уравнение 2-й степени ax2 + bx + c = 0, которое в зависимости от значения коэффициентов может иметь либо два различных, либо два совпадающих действительных корня либо не иметь действительных корней. Вообще алгебраическое уравнение степени n не может иметь более n корней, что доказывается в рамках основной теоремы алгебры, которую в ВУЗах проходят в курсе математического анализа.

Что ж, давайте, пожалуй, перейдем к практике. То есть запустим MathCAD, включим панель символьных вычислений (Symbolic) — о том, как это сделать, уже было рассказано ранее в первой статье про MathCAD. На этой панели нам с вами понадобится оператор solve — именно он отвечает за аналитическое решение уравнений. Общий вид этого оператора такой: уравнение solve, переменная > решение. Здесь уравнение — это именно то уравнение, решение которого мы хотим найти в общем виде, а переменная — это символ, обозначающий в нашем уравнении переменную величину. Его нужно указывать для того, чтобы MathCAD (не такой уж он умный, как иногда кажется!) мог отличить переменную от коэффициентов. Давайте попробуем найти решение обычного квадратного уравнения ax2 + bx + c = 0. Для этого нажмите на кнопку Solve на панели инструментов символьных вычислений и на то место, где должно быть записано уравнение, введите наше квадратное уравнение. Здесь есть два тонких момента. Во-первых, чтобы записать «x2», нужно после x нажать Shift + 6 — тогда вы перейдете от записи переменных к записи показателя степени. Чтобы затем переключиться в режим записи других слагаемых в уравнении, достаточно нажать на клавиатуре стрелку вправо. Вообще навигация по записям в MathCAD при помощи стрелок вполне прозрачная — вы передвигаетесь стабильно в том направлении, куда указывает стрелка, и перескакиваете в показатели степени и индексы автоматически. Во-вторых, при записи уравнения в операторе solve «равно» нужно не обычное, а логическое — оно записывается с клавиатуры комбинацией Ctrl + =. При этом, если правая часть вашего уравнения равна нулю, то и ноль, и знак равенства можно опускать — MathCAD посчитает, что уравнение записано в стандартном виде, и успешно (если это, конечно, возможно) решит его. Итак, давайте посмотрим, что получилось от «скармливания» оператору solve нашего с вами квадратного уравнения.

Как видите, ничего неожиданного не произошло: MathCAD честно воспользовался известными всем еще из школьного курса алгебры формулами Виета, а решения уравнения записал в виде вектора-столбца. Несложно самостоятельно убедиться в том, что MathCAD знает и формулы Кордано для решения кубических уравнений — их он также может решать с произвольными коэффициентами. Правда, конечно, решения получаются несравненно более громоздкими, а потому я их здесь не буду приводить. Это же справедливо и для уравнений четвертой степени, для которых также существуют аналитические решения. Решение других видов уравнений (например, показательных) в аналитическом виде также вполне возможно. Например, если мы запишем уравнение eax + b = 0, то MathCAD совершенно справедливо сообщит, что решением этого уравнения будет выражение ln(-b)/a. Точно так же можно решать простые тригонометрические уравнения.

Численное решение уравнений с помощью функции solve

Но, конечно, такие красивые результаты в максимально обобщенной форме мы сможем получать далеко не всегда. Уже на уравнениях пятой степени MathCAD спотыкается, и произвольные коэффициенты приходится заменять постоянными. Впрочем, в этом ничего страшного нет — даже уравнения третьей степени со всеми произвольными коэффициентами решать вряд ли имеет смысл, поскольку гораздо проще подставить коэффициенты и получить нормальные числа в решении — в конце концов, общие формулы для решения алгебраических выражений используются именно из-за того, что живому человеку гораздо проще подставить числа в готовую формулу, чем подбирать каждый раз корни уравнения. С компьютерами дело обстоит в большинстве случаев с точностью до наоборот — получить численное решение уравнения зачастую гораздо проще, чем аналитическое. Оператор solve умеет находить и численные решения уравнений. Если аналитическое решение получить не удается, он автоматически подключает систему нахождения численных решений уравнений. Так что, если мы запишем совершенно невообразимое для нормального человека уравнение x25 + sin(x) + ln(x) + ex + 1/x = 0, то MathCAD, и глазом не моргнув, выдаст нам результат вычислений.

Но численное решение уравнений с помощью функции solve — честно говоря, не лучшая идея. Некоторые виды уравнений она решает из рук вон плохо — в первую очередь, конечно же, это относится к уравнениям тригонометрическим. Начнем с того, что эта функция выдает решение только для одного периода в то время, как большая часть решений тригонометрических уравнений описывается с помощью специального целочисленного параметра, выражающего номер периода. Но это, в общем-то, не самое худшее, поскольку иногда использование solve приводит к получению совершенно неверного результата, который при подстановке его в уравнение дает совершенно неверное значение. Конечно, это является минусом MathCAD’а, но положение дел совсем не фатально. Если использовать специальные методы решения трансцендентных уравнений, то численные результаты будут совершенно адекватными. Можно также пойти по другому пути, например, преобразуя выражения с помощью символьного процессора MathCAD (о том, как это делается, я еще расскажу в дальнейшем), а затем уже решая с помощью solve более простые уравнения, получившиеся в результате этих преобразований. Численное решение уравнений требует от пользователя понимания того, что он ожидает в результате этого решения получить. Поэтому прежде, чем приступать к рассказу о самом процессе численного решения, я расскажу об одной полезной функции, которая пригодится для численного решения простых трансцендентных уравнений.

Решение уравнений с помощью функции root

Эта очень хорошая и полезная во всех смыслах функция имеет лишь одно ограничение — она может найти всего один корень. К сожалению, несущественным это ограничение назвать, честно говоря, сложно. Впрочем, вы увидите, что и его запросто можно обойти — разработчики MathCAD, по крайней мере, предусмотрели такую возможность, и ею вполне можно воспользоваться, если, конечно, в этом есть необходимость. Функция root имеет следующий вид: root(функция, переменная). Функция — это фактически левая часть уравнения в стандартном виде, т.е. уравнения, в котором левая часть равна нулю. Переменная — это, конечно же, тот символ, который обозначает в функции переменную величину. Для использования функции root нужно задать начальное приближение — то есть число, отталкиваясь от которого, функция root будет искать корни нашего уравнения. От начального приближения может весьма существенно зависеть и сам результат работы функции root, особенно если искомые корни уравнения находятся сравнительно близко. Начальное приближение задается очень просто: набираем имя нашей переменной до функции root, ставим двоеточие (MathCAD самостоятельно преобразует его в знак присвоения «:=»), пишем число, соответствующее нашему начальному приближению.

В принципе, вместо начального приближения можно задать интервал, в пределах которого должно лежать решение, отыскиваемое нами с помощью функции root. Для этого после имени переменной в списке параметров функции нужно (через запятую, конечно же) указать начало и конец интервала, на котором должно располагаться решение. У этого способа есть только одно существенное но: числа, определяющие начало и конец этого интервала, должны иметь разные знаки. При этом, если уравнение не имеет действительных корней, то и интервал нужно задавать в комплексной форме. Мнимая единица при этом записывается как i или как j.

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

Компьютерная газета. Статья была опубликована в номере 14 за 2008 год в рубрике soft

Видео:Числовое решение. Функция polyroots в MathCAD 14 (27/34)Скачать

Числовое решение. Функция polyroots в MathCAD 14 (27/34)

Решение уравнений в MathCad

Найти коэффициенты уравнения в маткаде

Для решения уравнений в Mathcad можно воспользоваться двумя способами:

Видео:Метод неопределённых коэффициентов для линейных голоморфных уравнений в MathCadСкачать

Метод неопределённых коэффициентов для линейных голоморфных уравнений в MathCad

Использование метода Given — Find:

Это наиболее распространенный способ решения обычных алгебраических уравнений. Он достаточно прост. В рабочем поле записываем слово Given. Это служебное слово. Оно подключает определенные программные модули mathcad для обработки исходных данных, необходимых для решения уравнения численными методами.

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

Найти коэффициенты уравнения в маткаде

Рис. 1. Ввод данных в поле mathcad

Далее вводится уравнение. Его можно записать в явном или неявном виде. Само уравнение набирается с клавиатуры вручную с использованием панели Calculator. Из этой панели можно взять основные математические операции: дроби, тригонометрию, факториалы и прочее. Уравнение нужно записывать с использованием логического символа «ровно». На панели Boolean он выделен жирным шрифтом (см. рис. 2)

Найти коэффициенты уравнения в маткаде

Рис. 2. Панели Boolean и Calculator

После уравнения вводится функция Find(x) (где х — переменная). Это функция, которая возвращает результат. Значение функции Find(x) можно присвоить какой-либо переменной с помощью символа «:=» и использовать ее далее в расчетах

Для получения результата, после Find(x) следует поставить символ «» либо «=» из панели Evaluation (см. рис. 3). Причем, если вы используете символ ««, то mathcad определит все корни уравнения и сформирует матрицу результатов. Но если вы используете символ «=«, то mathcad выведет единственный корень, который был наиболее близок к начальному приближению. Так что, если вы не знаете сколько корней имеет уравнение, то лучше использовать стрелочку

Найти коэффициенты уравнения в маткаде

Рис. 3. Панель «Evaluation»

В зависимости от сложности уравнения через определенное время MathCad выведет результат. На рис.4 можно рассмотреть синтаксис и различие результатов выводимых mathcad. Обратите внимание, что выводимые результаты одного и того же уравнения различны

Найти коэффициенты уравнения в маткаде

Рис. 4. Результат численного решения уравнения

Mathcad позволяет решать уравния в символьном виде. Например, если мы заменим все числовые константы на неизвестные параметры и решим уравнение относительно x, то результат выведется в символьном виде (см. рис. 5). Причем, обратите внимание, что в данном случае нам не нужно вводить начальное приближение и мы должны использовать символ «» для вывода результата

Найти коэффициенты уравнения в маткаде

Рис. 5. Результат символьного решения уравнения

Видео:MathCAD Решение уравнений с помощью функции root 1 вариантСкачать

MathCAD  Решение уравнений с помощью функции root 1 вариант

Использование метода Solve:

Этот метод отличается от выше рассмотренного синтаксисом. На свободном поле вводим уравнение с использованием логического символа «ровно» из панели Boolean. После ввода уравнения, не смещая курсор ввода, на панели Symbolic нажимаем кнопку solve (см. рис. 6)

Найти коэффициенты уравнения в маткаде

Рис. 6. Панель Symbolic

Затем ставим запятую и вводим переменную, относительно которой нужно решить уравнение (в нашем случае это x). Нажимаем Enter на клавиатуре и смотрим результат (см. рис. 7)

Найти коэффициенты уравнения в маткаде

Рис. 7. Результат решения уравнения методом Solve

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

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

Найти коэффициенты уравнения в маткаде

Donec eget ex magna. Interdum et malesuada fames ac ante ipsum primis in faucibus. Pellentesque venenatis dolor imperdiet dolor mattis sagittis. Praesent rutrum sem diam, vitae egestas enim auctor sit amet. Pellentesque leo mauris, consectetur id ipsum sit amet, fergiat. Pellentesque in mi eu massa lacinia malesuada et a elit. Donec urna ex, lacinia in purus ac, pretium pulvinar mauris. Curabitur sapien risus, commodo eget turpis at, elementum convallis elit. Pellentesque enim turpis, hendrerit tristique.

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis dapibus rutrum facilisis. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Etiam tristique libero eu nibh porttitor fermentum. Nullam venenatis erat id vehicula viverra. Nunc ultrices eros ut ultricies condimentum. Mauris risus lacus, blandit sit amet venenatis non, bibendum vitae dolor. Nunc lorem mauris, fringilla in aliquam at, euismod in lectus. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. In non lorem sit amet elit placerat maximus. Pellentesque aliquam maximus risus, vel venenatis mauris vehicula hendrerit.

Interdum et malesuada fames ac ante ipsum primis in faucibus. Pellentesque venenatis dolor imperdiet dolor mattis sagittis. Praesent rutrum sem diam, vitae egestas enim auctor sit amet. Pellentesque leo mauris, consectetur id ipsum sit amet, fersapien risus, commodo eget turpis at, elementum convallis elit. Pellentesque enim turpis, hendrerit tristique lorem ipsum dolor.

Видео:Пример решения уравнения в MathCAD 14 (33/34)Скачать

Пример решения уравнения в MathCAD 14 (33/34)

Найти коэффициенты уравнения в маткаде

Уравнение и системы уравнений в математическом пакете Mathcad в символьном виде решаются с использованием специального оператора символьного решения solve в сочетании со знаком символьного равенства, который может быть также введен с рабочей панели “Символика”. Например:

Найти коэффициенты уравнения в маткаде

Найти коэффициенты уравнения в маткаде

Аналогичные действия при решении уравнений в Mathcad можно выполнить, используя меню “Символика”. Для этого необходимо записать вычисляемое выражение. Затем выделить переменную, относительно которой решается уравнение, войти в меню Символика, Переменная, Разрешить. Например:

Найти коэффициенты уравнения в маткаде

В случае, если необходимо упростить полученный результат, используется знак равенства [=]. Например:

Найти коэффициенты уравнения в маткаде

При решении некоторых уравнений, результат включает большое количество символов. Mathcad сохраняет его в буфере, а на дисплей выводитcя сообщение: “This array has more elements than can be displayed at one time. Try using the “submatrix” function” – “Этот массив содержит больше элементов, чем может быть отображено одновременно. Попытайтесь использовать функцию “submatrix””. В этом случае рекомендуется использовать численное решение. Или, в случае необходимости, символьное решение может быть выведено и отображено на дисплее.

Символьное решение может быть получено с использованием блока given … find. В этом случае при записи уравнения для связи его левой и правой части использует символ логического равенства “=” с панели инструментов Boolean, например:

Найти коэффициенты уравнения в маткаде

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

Найти коэффициенты уравнения в маткаде

Пример использования блока given…find для решения системы уравнений:

📸 Видео

Найти корень уравнения на заданном интервале (MathCad)Скачать

Найти корень уравнения на заданном интервале (MathCad)

Числовое решение. Функция root в MathCAD 14 (28/34)Скачать

Числовое решение. Функция root в MathCAD 14 (28/34)

MathCAD Решение системы уравненийСкачать

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

Решение СЛАУ в пакете MathCadСкачать

Решение СЛАУ в пакете MathCad

Решение систем линейных уравнений в MathCAD 14 (31/34)Скачать

Решение систем линейных уравнений в MathCAD 14 (31/34)

Линейное неоднородное дифференциальное уравнение второго порядка с постоянными коэффициентамиСкачать

Линейное неоднородное дифференциальное уравнение второго порядка с постоянными коэффициентами

Средство для решения систем уравнений в MathCAD 14 (29/34)Скачать

Средство для решения систем уравнений в MathCAD 14 (29/34)

MathCAD. Given - FindСкачать

MathCAD. Given - Find

Mathcad Prime. Урок 5 - Способы решения уравненийСкачать

Mathcad Prime. Урок 5 - Способы решения уравнений

Находим определённый и неопределенный интеграл с помощью МаткадСкачать

Находим определённый и неопределенный интеграл с помощью Маткад

Использование меню «Символьные операции» в MathCAD 14 (25/34)Скачать

Использование меню «Символьные операции» в MathCAD 14 (25/34)

10 Параболическая (квадратическая) интерполяция по 3т Метод неопределенных коэффициентов MathcadСкачать

10 Параболическая (квадратическая) интерполяция по 3т Метод неопределенных коэффициентов Mathcad

Ключевое слово solve в MathCAD 14 (26/34)Скачать

Ключевое слово solve в MathCAD 14 (26/34)
Поделиться или сохранить к себе: