по специальности 020101 – «Химия»
Учебная программа
05 «Численные методы и программирование»
по специальности 020101 - Химия
Область примененияДанная дисциплина относится к дисциплинам федерального компонента, цикла общих математических и естественнонаучных дисциплин (ЕН.00) специальности 011000 – Химия, преподается в течение 4 семестра (дневная форма обучения).
Цели и задачи дисциплиныСодержание дисциплины направлено на формирование естественнонаучного мировоззрения студентов, освоение научного стиля мышления, глубокого и правильного понимания принципов математического моделирования процессов и явлений, методов вычислительного эксперимента и их применения в химических исследованиях.
В результате изучения данного курса студент должен получить основные навыки программирования, изучить наиболее распространенные методы приближенных вычислений и ознакомиться с прикладными программными комплексами для обработки экспериментальных данных и математического моделирования. Студенты должны получить представление об основных численных методах и границах их применимости, научиться выбирать методы решения, подходящие для решения конкретной задачи и правильно интерпретировать получаемые результаты.
Теоретические основы курса студенты осваивают в рамках математического анализа и информационных технологий. Основной формой проведения занятий должно быть выполнение студентами практических заданий на компьютере. Курс реализуется сразу после курса "Информационные технологии".
В результате изучения студенты должны:
Знать: Способы алгоритмического программирования. Способы, порядок и правила написания компьютерных программ на языке Visual Basic. Методы численного решения математических задач, имеющих наибольшее значение для химии: решение алгебраических и трансцендентных уравнений, систем линейных уравнений, систем дифференциальных уравнений, численного дифференцирования и интегрирования, интерполяции и аппроксимации данных, статистической обработки экспериментальных данных.
Уметь: Составлять компьютерную программу на языке Visual Basic, реализующую изученные методы, проводить ее отладку, тестирование и использовать ее для решения конкретной задачи, связанной с практикой химического исследования.
Иметь представление: о методах компьютерного моделирования (компьютерного эксперимента), способах использования прикладных программ для решения задач химической кинетики, химической термодинамики, моделирования молекулярной структуры, динамики молекулярных и химических процессов. Иметь представление о математических моделях, их особенностях, возможностях и ограничениях.
Содержание разделов дисциплины
Раздел 1. Элементы программирования
Алгоритм. Языки низкого и высокого уровня. Интерпретация и трансляция текста программы. Разница между исходным текстом и исполняемым модулем. Процедурные языки программирования. Понятие об объектно-ориентированном программировании. Понятие о Visual-технологии программирования.
Язык Visual BASIC. Типы величин. Константы и переменные. Массивы переменных. Арифметические выражения. Порядок выполнения арифметических операций. Использование стандартных математических функций.
Структура программы: раздел описания и раздел операторов. Логические выражения. Использование операций отношения и логических операций and, or, not.
Операторы: присвоения значения переменной, ввода и вывода значений, организации циклов и разветвлений.
Процедуры и функции, их организация и использование в программах. Формальные и фактические параметры. Параметры-значения и параметры-переменные. Локальные и глобальные переменные.
Организация взаимодействия программы с внешними файлами данных. Стандартные файлы ввода и вывода информации.
Раздел 2. Численные методы, математические модели, особенности вычислений на ЭВМ
Математическая модель. Эмпирические, феноменологические и детальные модели. Параметры модели. Прямая и обратная задачи. Особенности численного (компьютерного) моделирования.
Особенности выполнения вычислений на ЭВМ. Диапазон и точность представления чисел. Машинный нуль. Ошибки округления. Абсолютная и относительная погрешности результатов основных арифметических операций. Потеря точности при операциях сложения и вычитания. Накопление ошибок. Устойчивость вычислительных алгоритмов.
Решение системы линейных алгебраических уравнений методом Гаусса с выбором главного (ведущего) элемента по столбцу и вычисление обратной матрицы. Условие устойчивости вычислений.
Вычисление собственных значений и собственных векторов симметричной матрицы с помощью преобразований подобия. Метод Якоби. Преобразования Хаусхолдера и QL-алгоритм. Решение частичной проблемы собственных значений. Нахождение собственного вектора методом обратной итерации.
Решение нелинейного алгебраического уравнения методом деления отрезка пополам. Условия применимости метода и скорость сходимости к решению. Решение нелинейного алгебраического уравнения методом Ньютона. Условия применимости и сходимости. Скорость сходимости. Обобщение метода Ньютона на случай системы нелинейных уравнений.
Поиск минимума функции одной переменной. Методы золотого сечения и квадратичной интерполяции. Минимизация функции нескольких переменных: метод прямого поиска Хука - Дживса, метод скорейшего спуска, метод Ньютона. Общее представление о методах сопряженных направлений и переменной метрики. Частный случай минимизации суммы квадратов: метод Гаусса - Ньютона.
Приближенное вычисление определенных интегралов. Общая структура интерполяционной квадратурной формулы, способы выбора узлов и определение весов. Порядок точности. Формулы Ньютона - Котеса и Гаусса; их частные случаи: формулы прямоугольников, трапеций, Симпсона. Алгоритм интегрирования с заданной степенью точности.
Численное дифференцирование. Суммарная погрешность и ее составляющие: ошибка дискретизации (усечения) и ошибка округления. Порядок точности. Способы уменьшения погрешности дифференцирования.
Численное интегрирование обыкновенных дифференциальных уравнений (ОДУ): решение задачи Коши. Локальная и глобальная ошибки. Понятие устойчивости решения. Явные и неявные схемы интегрирования (на примере метода Эйлера); их устойчивость. "Жесткие" уравнения. Количественный критерий жесткости. Общее представление о принципах построения методов для интегрирования жестких систем ОДУ.
Раздел 3. Решение различных математических задач в химии
Виды и цели математического моделирования. Моделирование как способ проверки гипотез. Обработка данных эксперимента как решение обратной задачи математического моделирования. Имитационное моделирование (вычислительный эксперимент).
Реализация принципов математического моделирования в прикладных программных комплексах для химиков. Неэмпирические и эмпирические методы расчета строения молекул (Gaussian, GAMESS, МОРАС). Моделирование кинетики химических реакций (KINET, PolyRate). Расчет равновесного состава по термодинамическим свойствам веществ (ИВТАНТЕРМО, СНЕТ).
Моделирования химических систем методами Монте-Карло и молекулярной динамики. Области применения, возможности и ограничения.
Раздел 4. Статистическая обработка экспериментальных данных
Интерполяция таблично заданной функции. Интерполяционный многочлен Лагранжа. Факторы, определяющие точность интерполяции. Сплайны, их свойства и применение.
Аппроксимация функций. Обобщенный метод наименьших квадратов (МНК). Линейный МНК. Статистические характеристики оценок параметров модели. Нелинейный МНК.
Элементы математической статистики. Распределения случайных величин: единичное, нормальное, экспоненциальное. Их характеристики, графическое представление. Статистики Стьюдента, хи-квадрат, Фишера. Их свойства и применение в аналитической химии, физической химии, химической технологии, биомедицинских приложениях.
Рекомендуемая литература:
а) Основная литература
Турчак численных методов. М.:Наука, 1987, 320с.
Бахвалов методы. М.:Наука, 1975.
Калиткин методы. М.:Наука, 1987.
Visual Basic 4. М.:Бином, 1989, 576с.
Компьютерное моделирование в физике. Т.1,2. М.: Мир, 1990.
б) Дополнительная литература
Самарский в численные методы. М.:Наука, 1982.
Численные методы в химии. М.: Мир, 1983.
Компьютерная химия. М.: Мир, 1990.


