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