Матросов А.В. Maple 6. Решение задач высшей математики и механики (1185909), страница 29
Текст из файла (страница 29)
Это значение передается в процедуру как ее параметр — после имени процедуры в круглых скобках. Следующий пример демонстрирует построение численного решения задачи Коши и его использование. Часть 1 Основы Ма)о(е >г«) ) Вх»о», (хе т)а61че/исае»асах'»545) сажюб еча1иаее Ьоо1еаи; 2.+аьа(.2511886433е-1-.2016799760е-5*1"2-.3377712687е4*Н"2*(.2318664400е-1-.3700729218е-5*8"2)+.6309573448е5*Х"2*(.2511886433е-1-.6603721651е-5*К"2)) <= О. Следует обязательно определить все символьные параметры дифференциального уравнения числовыми значениями перед использованием численного решения: > Х:=1: > Г(0) 4В«) )Г(2) ) д х = О, у(х) = О., — у(х) = ).
~ х= !,у(х) = .841470989048380025, — у(х) = .540302309040994189 ~ д ' дх х = 2,у(х) = .909297437216234794, — у(х) = -.416146840428394782 ~ д ' д» Обратите внимание, в каком виде построенная процедура численного решения выдает результаты — в виде списка значений независимой переменной, самой функции и ее производных (до порядка на единицу меньше порядка самого уравнения). ГЛАВА 3 Пакеты Мар1е, как и любая другая программная система, имеет собственную архитектуру. Ядро, основная библиотека и пакеты — все это элементы, составляющие в совокупности Мар1е.
Пользователь, работая в системе аналитических вычислений Мар!е, постоянно "обшается" с этими тремя компонентами: одни команды находятся в постоянно находяшемся в памяти компьютера ядре, другие автоматически загружаются из основной библиотеки, а для выполнения третьих следует явным образом подключить соответствуюший пакет. Все это в совокупности и составляет предмет организации Мар1е. 3.1. Организация Мар)е При запуске Мар1е в память компьютера загружается только ядро, являюшееся его основным компонентом.
В нем содержатся программы, без которых Мар!е не может функционировать, а также программы, реализующие основные низкоуровневые команды выполнения простых аналитических преобразований и используемые командами из основной библиотеки и пакетов. К ним относятся интерпретатор языка Мар!е, программы работы с числовыми данными, а также программы, отображающие результаты выполнения команд Мар!е и выполняющие другие операции ввода/вывода.
Ядро состоит из программ, написанных на языке С, и составляет около 10% обшего размера системы аналитических вычислений. Остальная часть программ, реализующих функциональность Мар!е„написана на языке Мар1е и хранится в библиотеке, которая состоит из двух частей: основной библиотеки и многочисленных пакетов, в которых сгруппированы команды для выполнения определенных математических действий. Основная библиотека содержит наиболее часто используемые команды Мар1е, которые загружаются автоматически, как только пользователь обра- Часть!. Основы (Ывр(е шается к ним. В отличие от предыдуших версий не стоит заботиться об их явной загрузке.
Программы на языке Мар1е представляют собой очень компактные процедуры, быстро загружаюшиеся в память и выполняющиеся с достаточно высокой скоростью, так что пользователь практически не может отличить, какая команда находится в ядре, а какая загружается из библиотеки. Если необходимая для выполнения математических преобразований команда не находится в ядре или основной библиотеке, то пользователю приходится явно подключать пакет или только олпу программу из пакета, чтобы иметь возможность обратиться к требуемой команде. Пакеты в Мар1е используются для удобства организации работы пользователя. Пакет представляет собой набор команд лля решения задач, относящихся к определенным разделам математики, или решения определенных задач графического представления информации, например, пакет гт,апо служи).
для решения задач финансовой математики, в пакете апаса собраны команды для статистической обработки результатов и т. д. Для того чтобы использовать команды какого-нибудь пакета, необходимо подключить его, так как они все находятся не в ядре системы Мар!е, а в специальных файлах. Подключение пакетов осуществляется с помощью команды ньен(пакет); где в качестве параметра указывается имя соответствуюшего пакета. Может оказаться, что подключаемый пакет содержит команду с таким же именем, что и в ранее подключенном пакете. В этом случае в области вывода отображается сообшение о переопрелелении соответствуюшей команды, и результат ее действия будет соответствовать команде, находящейся в послелнем подключенном пакете.
Подключив пакет, в дальнейшем пользователь может вызывать все его команды, просто набирая их имя и требуемые для ее выполнения параметры прямо в области ввода. Если необходима какая-то конкретная команда пакета, то вместо подключения всего пакета целиком можно подключить эту одну команду с помошью следуюшего синтаксиса оператора ьсп(): мьтп(пакет, имя команды); В дальнейшем эта команда также может быть использована ссылкой только на ее имя„без указания пакета, в котором она находится. Если пользователь не желает, чтобы команда постоянно находилась в памяти, можно ее загрузить только на время ее выполнения, после чего она будет выгружена из памяти.
Для этого следует указать ее полное имя, состояшее из имени пакета и имени самой команды, в следующем виде: имя пакета(имя команды) (... ); Глава 3. Пакеты При следующем обращении к команде ее необходимо снова загрузить од- ним из трех указанных способов. Пример 3.! демонстрирует подключение пакета и вызов его команды. > чтЬЬ(соиЬз) сост) 1 !а((ег ис1е, соил(, гггспе, г) пйкес(, яГеакз, РГеепее, яГео(се, йеге1гисаь кехге(гис( ) > Ьгп:= (В=Оп(оп(Е,Рссс((В,В) ) ): > соппт((В,Ьтп,пп1аЬе11еп),згхе=7); !32 1аблица 3.т. Пакеты Мар)е Содержит пакета Средства для изучения одномерных алгебраических кривых, оп- ределяемых полиномами нескольких переменных а1оспгеез сог(есеп Средства для создания, обработки и перевода процедур мар)е в код языков программирования С и гопгап сспЬзпат Комбинаторные функции, включая вычисление перестановок и сочетаний.
В настоящее время считается устаревшим н рекомен- дуется для работы с комбинаторными задачами использовать , ПаКЕт соппзтгпсс соиЬзтхпст соптехт Команды для создания и работы с комбинаторными структурами Средства для построения и изменения контекстных меню в гра- фическом интерфейсе пользователя Овеоогз Средства для выполнения преобразований обыкновенных диф- ференциальных уравнений, их решения и графического отобра- жения решений с возможностью построения фазовых портретов и полей направлений систем дифференциальных уравнений О1тта1д Команды для работы с системами полиномиальных дифференциальных уравнений, как обыкновенных, так и в частных производных Если пользователь не желает, чтобы отображались все команды подключаемого пакета (список команд некоторых пакетов может занимать целую СтраНИцу), тО КОМаНду ч1ЬЬ() СЛЕдуЕт ЗаВЕрШИтЬ дВОЕтОЧИЕМ (:).
Встроенные в Мар!е пакеты позволяют выполнять математические построения и преобразования, начиная от элементарной математики и заканчивая общей теорией относительности. Табл. 3.1 содержит список всех пакетов Мар)е с их кратким описанием и дает представление о возможностях Мар1е. Часть 1 ОсгЮаы Ыар~е Таблица з. т (продолжение) Наименование пакета Содержит Команды для работы с дифференциальными формами при реше- нии задач дифференциальной геометрии О1 Ггоппв Команды для создания областей вычисления. Поддерживают ра- боту с полиномами, матрицами и рядами над числовыми кольца- ми, конечными полями, кольцами полиномов и матриц Оова1пз Команды для выполнения финансовых вычислений (финансовая математика) г1папсе Команды для работы с гауссовыми целыми числами — комплекс- ными числами вида а+Ы, где а и Ь целые папа з1пс депГипс десп~ЗП Команды для работы с рациональными производящими функциями Команды для выполнения построений и вычислений в трехмерном евклидовом пространстве.
Позволяют строить и работать в трех- мерном пространстве с точками, линиями, плоскостями, тре- угольниками, сферами и т. д. Команды для выполнения построений и вычислений на евклидо- вой плоскости. Позволяют строить и работать с точками, линиями, плоскостями, треугольниками, окружноотями и т. д. цесгпеггу Команды для работы с полями Галуа Команды для организации вычислений а базисе Гребнера бгсеЬпег дгспр Команды для работы с группами перестановок и конечными груп- пами 1пгсгапз Команды для работы с интегральными преобразованиями и их обратными преобразованиями 11езуппп Команды определения симметричности систем дифференциаль- ных уравнений в частных производных 11па1д Команды работы с символьными матрицами и векторами; сложе- ние, умножение матриц, собственные числа и векторы в символь- ном виде и т, д.