Символьные расчеты в СКМ

Символьные расчеты выполняются во встроенном символьном процессоре путем вызова нужного оператора с панели инструментов Symbolic (либо при помощи главного меню).

Запуск на выполнение символьных действий выполняется при помощи оператора вывода и нажатия клавиши Enter. Результат получается, соответственно, в символьной форме.

Примеры простых символьных расчетов:

Результат здесь получился в таком же виде, как если бы мы выполняли действия вручную – с корнями, или в виде обыкновенной дроби. При выполнении численных расчетов (оператор = на панели "Calculator") результат будет таким:

Вводим теперь классическое соотношение:

и с удивлением обнаруживаем, что ничего не получилось. А, собственно, чего еще можно было ожидать, даже не задав СКМ своих требований. Для этого используются специальные операторы с панели Symbolic. С их помощью и выполняются все упрощения математических выражений и алгебраические преобразования. Наиболее универсальный из этих операторов – simplify (упростить).

Интересно сравнить результаты решения одного и того же, например, квадратного уравнения в символьной форме:

и в численном виде:

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

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

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

1. Ввести исходное выражение (его можно скопировать как фрагмент из другого выражения).

2. На палитре Symbolic "кликнуть" на слове expend (разложить) и нажать клавишу Enter.

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

Другой пример

При помощи оператора factor выполняется разложение на множители, например:

А вот как можно проверить, является ли число 199995 простым, – выполняем:

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

Оператор collect, наоборот, выносит за скобку общий множитель (через запятую нужно обязательно указать его вид):

Однако, несмотря на кажущуюся простоту, это действие (вынесение множителя) является очень сложной интеллектуальной задачей, поэтому оператор collect работает нечетко, требует подсказки – что нужно выносить, и используется достаточно редко.

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

Теперь проинтегрировать правую часть не составит труда, если вспомнить, что первообразной для ( ) является .

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

, где

вызовем оператор substitute (заместить) c панели Symbolic

и в правый маркер (черный квадратик) поместим такую запись, задающую подстановку:

Как видно, программа не только выполнила требуемую подстановку, но и упростила выражение.

К подстановкам часто приходится прибегать при работе с MathCad и вот почему. Эффективность, например, решения уравнений или действие оператора разложения expend резко повышается, если исходная формула не содержит радикалов (корней).

MathCad постоянно совершенствуется – два классических примера бессилия MathCad 12 [3 ]:

в MathCad 14 решаются легко:

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

Например:

Вычисление пределов в среде MathCad отработано надежно и фундаментально, поскольку пределы – основа математического анализа. Про первый замечательный можно даже и не говорить – идеально. Равно как и второй.

С правилом Лопиталя СКМ справляется без проблем:

И переходить к пределу логарифма с последующим потенцированием среда MathCad тоже умеет:

Могут быть вычислены и односторонние пределы. В следующем хрестоматийном [1] примере предел функции:

в точке не существует,

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

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

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

А вот совсем простую задачу:

в общем виде решить не получается – нужно задать конкретное значение .

Для показательной функции :

А теперь еще забавней – проинтегрируем функцию:

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

и вычислим ее в MathCad:

При этом все константы следует собрать вместе в постоянную интегрирования :

и тогда имеем первообразную, а заодно и красивую демонстрацию теоремы Ньютона-Лейбница.

Теперь вычисление суммы ряда. Все очень просто и правильно:

Воспользуемся известным многим поколениям абитуриентов пособием СканавиС.И.[ 8] – задача № 4.077 из раздела "В", решение которой показывает не только "более высокое качество усвоения школьной программы <...> но и позволит экзаменующемуся обнаружить способность к самостоятельному логическому мышлению" [9].

Рассмотрим разложение в ряд Тейлора. Оно выполняется при помощи оператора Series c панели Simbolic. В маркеры оператора Series последовательно заносятся через запятую: исходная функция, имя аргумента, количество членов ряда.

Теперь зададим 44 члена

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

Самым универсальным способом решения уравнений является графический, возможности использования которого в MathCad обширны.

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

Среда MathCad выполняет поиск решения уравнения одной переменой посредством оператора salve c панели "Simbolic". Задача успешно выполняется, и хотя выдается сообщение, что не хватает ресурсов для вывода решения на экран, и полюбоваться им нельзя,

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

Попробуем получить это решение другим способом: через пункт Simbolic главного меню. Решение получено и в этом случае выводится на экран, но его размеры (более 40-ка страниц текста) превышают возможности буфера ОС, и даже скопировать его по частям не удается. Так проявляется еще одна проблема символьных расчетов, особенно для решений в общем виде – громоздкие выражения, как правило, неудобные для анализа и последующих преобразований. Выход – упрощать выражения, например, разложением в степенные ряды.

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

Теперь попробуем решить полиномиальное уравнение с заданными постоянными коэффициентами. Составим заготовку

( *)

и при помощи оператора expand получим полином:


Рис. 12.6.Первый корень и фрагмент второго корня кубического уравнения

Полученные коэффициенты перенесем через буфер ОС в текстовый файл .txt, созданный, например, при помощи приложения ОС "Блокнот", а оттуда вернем обратно через буфер ОС в MathCad, который перед тем перезагрузим, чтобы исключить возможность "подсказки" (заодно убедимся, как легко и удобно переносить числа в текстовый документ и обратно. А вот простейшее выражение, содержащее, например, символ радикала, запомнить можно, но вернуть не получится).

Никаких трудностей не возникло, хотя размеры чисел значительно превосходят представление данных целого типа для многих алгоритмических языков высокого уровня. Даже в случае полинома пятой степени решение легко получается в символьном виде, для этого следует: вставить оператор solve c панели Symbolic, через запятую указать имя аргумента " " и нажать Enter.

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

1. Подготовим полином:

2. Найдем решение:

Очевидно, что ответ получен в символьной форме.

По данным [6], СКМ MathCad при аналитическом решении сначала пытается найти ответ в символьном виде, а в случае неудачи переходит к численному решению задачи автоматически.

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

Пример, неверно решаемый в СКМ MathCad 13:

Х должен быть не меньше ; правильно он решен в СКМ MathCad 14, да и ответ выглядит привлекательней:

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

с панели Symbolic и занесем в него исходное выражение :

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

Проверим

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

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

- корни действительные,

- корни мнимые.

Теперь сложнее:

Проверим:

Следующий пример демонстрирует интегрирование тригонометрических функций:

Решается и такой интеграл:

Читатель, несомненно, вспомнит достаточно изощренный способ его нахождения, сводящийся к интегрированию по частям и в результате – к получению уравнения относительно самого этого интеграла; решение этого уравнения и дает искомый результат [10].

Среда MathCad также позволяет дифференцировать по параметру определенный интеграл с подынтегральной функцией и пределами интегрирования, зависящими от этого параметра:

Действия с матрицами охватывают весь стандартный набор операторов алгебры матриц. На панели Symbolic расположены три оператора:, и для транспонирования, обращения и поиска определителя соответственно. Остальные операторы выполняются при помощи функций (в количестве 47 для MathCad 14) раздела Vector and Matrix меню Insert / Function.

В качестве примера приведем символьный расчет определителя матрицы 3*3:

Связь с MS Excel достигается встроенными средствами и специальным расширением MathCad Add – In For Excel. В первом случае легко осуществляется вставка диапазона ячеек из Excel в переменную MathCad при помощи буфера ОС (команды "Копировать/Вставить"). Можно вставить и связать фрагмент таблицы Excel документ MathCad при помощи команды меню "Правка/Специальная вставка". При этом текущие изменения в документе Excel будут сразу же отражаться во вставленном в MathCad фрагменте, откуда их легко вручную можно скопировать в любую переменную MathCad. Но вот связать переменную MathCad с ячейкой Excel, чтобы все изменения выполнялись автоматически, можно только при помощи программного расширения MathCad Add – In For Excel.








Дата добавления: 2015-02-25; просмотров: 889;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.035 сек.