Тема 1. Основы аналитического программирования и обработки данных. Системы компьютерной алгебры. Пакет Maple

Российский университет дружбы народов

Инновационная образовательная программа РУДН

 

СОГЛАСОВАНО: УТВЕРЖДАЮ:

Приемочная комиссия:

Зам. руководителя Комиссии по организации, подготовке и контролю качества УМК ___________________/ В.Н. Чистохвалов/    Руководитель дирекции ИОП, проректор РУДН ___________________/ Н.С. Кирабаев /
Начальник Управления по науке и инновациям ____________________/Е.Б. Ланеев/  

 

 

ОТЧЕТ

 

о выполнении работ по созданию учебника Учебно-методического комплекса (УМК), мероприятие № _______
Исполнитель: Умнов Анатолий Михайлович
Наименование УМК: «СОВРЕМЕННЫЕ ЧИСЛЕННО-АНАЛИТИЧЕСКИЕ ПАКЕТЫ ДЛЯ СЛОЖНЫХ ИНЖЕНЕРНО-ФИЗИЧЕСКИХ ВЫЧИСЛЕНИЙ»
Согласовано:
Ответственный за выполнение мероприятия
_ Андреев Виктор Викторович ______

                                           Москва 2008 г.                 

СОСТАВ ИСПОЛНИТЕЛЕЙ

Днестровский Алексей Юрьевич

Доцент кафедры экспериментальной физики РУДН, кандидат физико-математических наук.

Третьяков Николай Павлович

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

Умнов Анатолий Михайлович

Доцент кафедры экспериментальной физики РУДН, кандидат физико-математических наук. —

СОДЕРЖАНИЕ ВВЕДЕНИЕ ТЕМА 1. ОСНОВЫ АНАЛИТИЧЕСКОГО ПРОГРАММИРОВАНИЯ И ОБРАБОТКИ ДАННЫХ. СИСТЕМЫ КОМПЬЮТЕРНОЙ АЛГЕБРЫ. ПАКЕТ MAPLE 1.1. Историческая справка 1.2. Основные сведения о Maple и начальные навыки работы 1.3. Пример расчета физической системы в Maple ТЕМА 2. ПАКЕТ MATLAB – НАЧАЛЬНЫЕ СВЕДЕНИЯ 2.1. Введение 2.2. Начальные навыки работы с MATLAB 2.3. Решение задачи о туннелировании в MATLAB ТЕМА 3. ПАКЕТ MATHEMATICA. СРАВНИТЕЛЬНЫЙ АНАЛИЗ ТРЕХ ЧИСЛЕННО-АНАЛИТИЧЕСКИХ ПАКЕТОВ MAPLE, MATLAB И MATHEMATICA 3.1. Историческая справка и общие сведения о Mathematica 3.2. Начальное знакомство с системой Mathematica 3.3. Решение задачи о туннелировании 3.4. Сопряжения систем компьютерной алгебры ТЕМА 4. ПРИМЕРЫ ВЫЧИСЛЕНИЙ И МОДЕЛИРОВАНИЯ СИСТЕМ С ПОМОЩЬЮ ЧИСЛЕННО-АНАЛИТИЧЕСКИХ ПАКЕТОВ 4.1. Имитационное моделирование методом Монте-Карло модельной системы броуновского движения: случайные блуждания на прямой 4.2. Случайные блуждания на прямой: упрощенный случай 4.3. Вычисление статистической суммы модели Изинга и сравнение с известными точными выражениями 4.4. Регулярное и стохастическое движение в асимметричном вихре 4.4.1. Введение 4.4.2. Постановка задачи 4.4.3. Регулярное движение 4.4.4. Тепловое движение 4.4.5. Геометрия системы и движение частиц 4.4.6. Программная реализация ТЕМА 5.  ПРИМЕР МОДЕЛИРОВАНИЯ В MATLAB ТЕХНИЧЕСКОЙ СИСТЕМЫ: МОДЕЛЬ АЛГОРИТМА ОЦЕНИВАНИЯ ОШИБОК ИНС И GPS НА ОСНОВЕ ФИЛЬТРА КАЛЬМАНА 5.1. Постановка проблемы и обзор математических средств, пригодных для решения поставленной задачи 5.2. Алгоритмы адаптивной фильтрации 5.3. Оптимальный фильтр Винера 5.4. Алгоритм LMS 5.5. Детерминированная задача оптимизации 5.6. Алгоритм RLS 5.7. Алгоритм Кальмана 5.8. Описание алгоритма и алгоритмов выбора начальных значений 5.9. Описание входных и выходных параметров 5.10. Комментированный текст программы в MATLAB 5.11. Описание параметров работоспособности фильтра и примеры применения ЗАКЛЮЧЕНИЕ     5     8 8 9 24 45 45 48 57 62     62 63 69 73     77 77     92 94   110 110 112 112 113 114 115 120     119 119 132 123 125 128 129 131 133 136 139 140 145   153

 

 



Введение

    «При изучении наук примеры полезнее правил» – это знаменитое утверждение И. Ньютона как нельзя лучше подходит для изучения численно-аналитических пакетов и вообще программирования. Посмотрев на библиографию к данному курсу, можно обратить внимание на обилие учебников и пособий, посвященных описанию этих программ. Ощущается явная избыточность количества таких пособий и это притом, что библиография явно неполная и включает в себя в большинстве русскоязычные наименования! Учитывая также, что в каждом пакете имеются превосходно составленные встроенные справочные пособия (Help), становится непонятным наличие такого количества во многом дублирующих друг друга учебников, фактически представляющих собой расширенные толкования Help. Имеется некоторое количество учебников, посвященных именно применению численно-аналитических пакетов, и данный курс относится к этой категории. Авторы никогда не изучали компьютерные программы по учебникам, а шли от практических задач, используя пакеты программ как инструменты, осваивая их по мере необходимости с помощью Help. Этим своим опытом мы и хотели поделиться, составив данное пособие.

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

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

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

    Именно нечто подобное мы предлагаем читателю в пятой теме. Там досконально разобрана очень актуальная и близкая к реальности (хотя версия имитационная) техническая задача, воплощенная в программу в MATLAB. Читателю необходимо разобраться в самой задаче, в алгоритме и тексте программы и воспроизвести результаты. В лабораторном практикуме ему будет предложено развить эту программу.

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

    В Теме 1 кратко изложены основные сведения о численно-аналитических пакетах вообще и о Maple в частности. Описано все необходимое для начала работы с этой программой, даны элементарные примеры математических и физических расчетов. Рассмотрена нетривиальная модельная задача квантовой механики – вычисление коэффициента прохождения через одномерный прямоугольный потенциальный барьер, которая тщательно разобрана во всех деталях. В Теме 2 алгоритм начального знакомства с программой, реализованный в предыдущей теме для Maple, применен к пакету MATLAB, а в Теме 3 – к Mathematica. Кроме того, в Теме 3 по ходу изложения внимание уделяется практическому сравнению различных пакетов компьютерной алгебры, а в конце темы даются некоторые общие сведения о возможностях их сопряжения между собой. Тема 4 посвящена конкретным примерам расчета и моделирования физических систем: модель броуновского движения, модель одномерного случайного блуждания и модель Изинга, регулярное и стохастическое движение в асимметричном вихре. В Теме 5 рассмотрена актуальная техническая задача фильтрации и сопряжения сигналов навигационных систем глобального позиционирования ИНС и ГЛОНАСС. После изложения теоретических сведений об адаптивных фильтрах приводится описание алгоритма имитационного моделирования системы фильтрации и сопряжения, приводится текст программы, примеры результатов моделирования и их обсуждение.



Тема 1. Основы аналитического программирования и обработки данных. Системы компьютерной алгебры. Пакет Maple

Историческая справка

Время начала создания компьютерной символьной математики [1] относится к началу 60-х годов. Именно тогда в вычислительной технике возникла новая ветвь компьютерной математики, не совсем точно названная компьютерной алгеброй. Речь шла о возможности создания компьютерных систем, способных осуществлять типовые алгебраические преобразования: подстановки в выражениях, упрощение выражений, операции со степенными многочленами (полиномами), решение линейных и нелинейных уравнений и их систем, вычисление их корней и т.д. При этом предполагалась возможность получения аналитических (символьных) результатов везде, где это только возможно. Далее западные фирмы приступили к созданию компьютерных систем символьной математики, ориентированных на широкие круги пользователей, не являющихся профессионалами в компьютерной алгебре. Учитывая невероятно большую сложность автоматизации решения задач в аналитическом виде, первые подобные системы удалось создать лишь для больших ЭВМ. Но затем появились и системы, доступные для мини-ЭВМ. Заметное развитие получили языки программирования для символьных вычислений Reduce, система muMath для малых ЭВМ, а в дальнейшем - интегрированные системы символьной математики для персональных компьютеров: Maple, Derive, MathCAD, Mathematica и др. [3, с. 4].

Наибольшую известность получили три класса систем символьной математики: созданная на базе языка искусственного интеллекта Lisp малая система Derive, одна из самых мощных и поныне привлекательных систем Maple (ядро написано на языке С) и системы Mathematica [3, с. 5]. Позже на базе ядра системы Maple символьные вычисления были реализованы в популярных числовых системах Mathcad – версии Mathcad имеют продвинутый пользовательский интерфейс и возможности, улучшающиеся от версии к версии. Блок символьной математики на базе ядра Maple был добавлен и в одну из самых крупных систем – MATLAB.

 


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: