8(495)909-90-01
8(964)644-46-00
pro@sio.su
Главная
Системы видеонаблюдения
Охранная сигнализация
Пожарная сигнализация
Система пожаротушения
Система контроля удаленного доступа
Оповещение и эвакуация
Контроль периметра
Система домофонии
Парковочные системы
Проектирование слаботочных сетей
Аварийный
контроль
Раздел: Документация

0 ... 18 19 20 21 22 23 24 ... 177

то, скорее всего, вы в своей практике применяли только символьные методы. Это связано с тем, что непосредственно на бумаге производить расчет с помощью любого чис-деннот метода — это чрезвычайно тяжелая задача для человека (в связи с огромным объемом вычислительной работы). Для компьютера же просчитать сумму из миллионов элементов или обратить матрицу большой размерности — дело секунд и долей секунд. До самого последнего времени аналитические расчеты были уделом людей, а численные — компьютеров. Почему? Все дело в том, что решить даже не очень сложную задачу аналитически машина сможет далеко не всегда. Мышление человека гибко и пластично, оно способно к творчеству. Компьютер же, несмотря на все успехи технологий искусствен лого интеллекта, мыслить, естественно, не может. Это связано с тем, что ои работает исходя из точных и четких алгоритмов, в которых все должно быть предусмотрено, А создать такой алгоритм далеко не всегда возможно. Однако те задачи, в основу решения которых могут быть положены строгие формулы и четкие алгоритмы (дифференцирование, интегрирование, поиск корней несложных уравнений) компьютером решены быть могут. Правда, для этого потребуется сохранить в виде базы данных значительное количество формул и алгоритмов аналитических преобразований. Поиск в этой базе, сопоставление переданной на обработку задачи с описанными в ней требуют большой мощности компьютера. Только к концу 1980-х массово стали выпускаться машины, памяти и производительности которых было достаточно для того, чтобы аналитические расчеты на компьютере стали реальностью. Численные же методы использовались ЭВМ с самого начала их истории.

История компьютерной символьной математики берет свое начало еще в 1960-х. Однако вплоть до конца 1980-х эта область была развита довольно слабо, что связано с дороговизной суперкомпьютеров, на которых системы символьной математики могли бы работать. Хотя значительные успехи имелись уже тогда, причем, как это ни удивительно, даже в нашей стране. Так, в конце 1970-х группе под руководством академика Глуш-кова удалось создать небольшие ЭВМ, которые поддерживали аналитические расчеты даже иа аппаратном уровне. Был создан язык для проведения символьных расчетов «Аналитик*. Однако общедоступная символьная компьютерная математика начинается с появлением мощных ПК типа IBM-486. В это время разрабатывается существующая и поныне система Derive, написанная на языке логического программирования Lisp. Вскоре появляется система Maple, основанная на наработанных за многие годы суперкомпьютерной эры символьной математики библиотеках старейшего языка математических расчетов Fortran (до настоящего времени Maple сохраняет лидерство в области аналитических расчетов). В то же время создается и наиболее мощный (но и дорогой) математический пакет Mathematica.

Система Mathcad была разработана в 1988 году какс>едаддя проведения расчетов исключительно числeimo. Однако уже в четвертой версии программы появилась возможность решения задач аналитически. Причем, соответствующий символьный процессор не был создан Mathsoft самостоятельно. Взвесив все «за» и «против*, Mathsoft предпочла купить ядро Maple. Так что символьный процессор является чужеродным телом в Mathcad, что можно почувствовать и сейчас (за прошедшие десять лет разработчики так и не смогли его полностью ншегрировать со средой численных расчетов Mathcad),

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


То есть, например, при численном подсчете интеграла результат будет получен для каких-то конкретных значений пределов интегрирования и параметров подьпгтегралъ-ной функции. На основании него нельзя будет сказать, чему будет равен интеграл при других значениях пределов и параметров Символьная математика дает возможность получить результат в общем виде, как формулу. Естественно, что информации из общей формулы можно почерпнуть куда больше, чем из частного значения или даже графика В-третьих, даже при получении числового результата символьный подход имеет преимущество, так как при этом ответ представляется в виде арифметического выражения, более понятного и привычного для нас, чем десятичная дробь, которая выдается при проведении подсчета численно.

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

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

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

2.4.2. Принципы проведения расчета символьно

Чтобы задействовать для решения задачи символьный процессор, следует использовать специальный оператор вывода в виде стрелки «-*» (Evaluate symbolically). Ввести его можно либо с помощью соответствующих кнопок панелей Symbolic (Символьные) или Evaluation (Вычисление), либо сочетанием клавиш Ctrl+«.».

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

Реже может использоваться сообщение об ошибке: No symbolic result was found (Символьный результат не был найден) или некоторые другие.

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


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

V8 simplify -> 2-2 ft = 2.828

J 7

-+ —

3 9

I 7

-+ -

3 9

10 > — 9

1.1U

• (A 1

em — -» -

Анализируя приведенный пример, можно прийти к иыводу, что символьный процессор «стремится* получить результат в такой же форме, как и человек, решая задачу на бумаге. То есть при сложении простых дробей и будет получена простая дробь, а не приближенное число с десятичной частью, как при численном подсчете. При извлечении корня из восьмисимвольный результат будет привычным: два корня из двух. А при вычислении синуса к/3 символьный процессор выдаст известное любому школьнику иррациональное выражение, а не десятичную дробь, которую мы бы получили при использовании в качестве оператора вывода «-*. Согласитесь, что в приведенных примерах символьная форма результата куда более наглядная и привычная, чем числа с плавающей точкой, которые дает численный подсчет.

Эти рассуждения можно распространить и на другие математические операции, такие как решение уравнений, интегрирование и дифференцирование.

Пример 2.18. Форма результата при символьном и численном решении квадратного уравнения

Symbolic:

х - Зх-t- I solvcx

Numerical:

2 2 K2 2 4

polyroots

П

( 0-3821

-3

m\

\2.6l&)

ч I J

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

Пример 2.19. Алгебраические и аналитические символьные преобразова н ия

ах + Ьх + с solve,х

2-в

-b + (р2 - 4-гс)

1:1



0 ... 18 19 20 21 22 23 24 ... 177