НОВОСИБИРСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ
Физико-технический факультет
Кафедра ЭФУ и У
УТВЕРЖДАЮ
Декан ФТФ
________________ А. К. ДМИТРИЕВ
«_____»_________________ 2006 г.
РАБОЧАЯ ПРОГРАММА учебной дисциплины
Элементы компьютерной математики
ООП по направлению 010700 Физика
ФИЗИКО-ТЕХНИЧЕСКИЙ ФАКУЛЬТЕТ НГТУ
Курс 4 семестр 7
Лекции 17
Практические занятия 17
Контрольные работы:
Самостоятельная работа 30 час
Экзамен: 7
Зачет:
Всего 64 часов.
Новосибирск, 2006
Рабочая программа составлена на основании Государственного образовательного стандарта высшего профессионального образования по направлению 010700 (510400) Физика
Регистрационный номер № 000 ен/бак, дата утверждения ГОС – 17.03.2000 г.
Шифр дисциплины в ГОС – ЕН.В.00
Рабочая программа обсуждена на заседании кафедры ЭФУ и У
27 сентября 2006 года
Программу разработали:
к. ф.-м. н., доцент ___________
Заведующий кафедрой
д. ф.-м. н., профессор ___________
Ответственный за основную
образовательную программу: д.ф-м.н, проф.
Общая характеристика направления 010700 физика
1.1 Направление утверждено приказом Министерства образования Российской Федерации от
02. 03. 2000 № 000.
1.2 Степень выпускника - бакалавр физики.
1.3 Квалификационная характеристика выпускника.
Деятельность бакалавра направлена на исследование и изучение структуры и свойств природы на различных уровнях ее организации от элементарных частиц до Вселенной, полей и явлений, лежащих в основе физики, на освоение новых методов исследований основных закономерностей природы. Виды профессиональной деятельности бакалавра:
• научно-исследовательская: экспериментальная, теоретическая и расчетная;
• педагогическая.
Бакалавр подготовлен к решению следующих задач:
а) научно-исследовательская (экспериментальная, теоретическая и расчетная деятельность):
• научные исследования поставленных проблем;
• выбор необходимых методов исследования;
• освоение новых методов научных исследований;
• освоение новых теорий и моделей;
• обработка полученных результатов научных исследований на современном уровне и их анализ;
• работа с научной литературой с использованием новых информационных технологий, слежение за научной периодикой;
• написание и оформление научных статей;
составление отчетов и докладов о научно-исследовательской работе, участие в научных
конференциях;
б) педагогическая деятельность:
• подготовка и ведение семинарских занятий;
• ведение занятий в учебных лабораториях;
• руководство научной работой студентов;
• проведение учебных занятий в среднем учебном заведении.
2. Особенности курса
Предмет курса - особенности и рациональные приемы организации вычислительных процессов на современных компьютерах.
Задачи курса:
Научить учитывать в вычислениях особенности, связанные с конечной точностью представления чисел в ЭВМ, а также с возможной неустойчивостью вычислительных процессов. Освоить приемы рациональной организации программ, их отладки и тестирования, организации обмена информацией и повышения эффективности работы программ (компьютерное ноу-хау) Обучение, по возможности, ведется с использованием примеров из практики решения различных физических задач. В частности, обращается внимание на важность использования знания физики проблемы (например, законов сохранения) для контроля надежности вычислений, для выяснения возможных "узких" мест, на грамотное обезразмеривание исходной задачи, на выбор языка програмирования и т.д.Схема построения курса
Учет в процессе вычислений особенностей машинного представления чисел. |
| |
Приемы рациональной организации простых вычислений (циклы, разветвления, употребление переменных с индексами и т.п.). |
| |
Упорядочение, хранение, исправление, пополнение и использование массивов информации. |
| |
Структурирование больших программ. Приемы отладки и тестирования. |
| |
Этапы постановки и решения вычислительных задач. |
Программа курса
Двоичная система счисления и представление чисел в ЭВМ. Фиксированная и плавающая запятая. Особености вычислений, связанные с конечностью разрядной сетки. Переполнение, машинный нуль, потеря точности. Как обнаружить и устранить эти ситуации. Численная неустойчивость. Примеры организации вычислений без потери точности и численной неустойчивости. Важность знания "обычной" математики и соответствующих вычислительных алгоритмов. Лекции+семинары+самост. работа: 3+3+6 Организация циклов как элементарной основы вычислительных процессов. Рекуррентность. Чистка циклов. Типичные простые ситуации (рекуррентное задание функций, суммирование рядов с нужной точностью и т.д.). Рациональная организация разветвлений вычислительных процессов. Работа с индексируемыми переменными (векторами и матрицами). Употребление динамических массивов. Лекции+семинары+самост. работа: 5+5+4 Приемы упорядочения, хранения, исправления и пополнения массивов информации. Организация поиска, выборки, построение гистограмм. Рациональные приемы ввода и вывода данных. Средства машинной графики. Лекции+семинары+самост. работа: 3+3+6 Структурирование больших программ. Блок-схемы. Приемы отладки и тестирования. Обкатка. Требования легкой модифицируемости и удобства отладки программ. Важность вывода сигнальной и аварийной информации. Рациональные приемы обмена данными между подпрограммами. Лекции+семинары+самост. работа: 3+3+6 Этапы постановки и реализации вычислительной задачи. Обезразмеривание, оценки степени малости входных параметров, последовательное включение в рассмотрение разных процессов. Четыре необходимых условия успешного применения компьютеров в исследованиях: знание области науки, откуда возникла задача, общей математики, вычислительных методов и умение программировать. Приемы отладки. Выбор языка программирования. Уровни оптимизации работы транслятора. Использование автокодов и языка ассемблера. Лекции+семинары+самост. работа: 3+3+6Примечание: для наглядности при изложении материала используется (там, где это нужно) алгоритмический язык FORTRAN, преимущественно употребляемый в базовом институте. Но подчеркивается универсальность рассматриваемых приемов, т.е. их применимость независимо от конкретного языка программирования.
3. Список литературы (указаны первые издания)
1. Ж.-П.Ламуатье. Упражнения по программированию на Фортране, 1978
2. и др. Задачник-практикум по программированию и вычислительной математике, 1973
3. ,. Вычислительная математика в примерах и задачах, 1972
ПРИЛОЖЕНИЕ
Контроль усвоения (помимо текущего).
В последней трети семестра - контрольная работа.
Задачи, дающие представление о требуемой степени овладения материалом.
1. Составить подпрограмму-функцию для вычисления f(x)=sin(x)/x-1 с относительной погрешностью, не превышающей 0.000001, если стандартная функция sin(x) вычисляется с абсолютной погрешностью, не превышающей 0.0000001.
2. Оценить, при каких положительных аргументах перестает "работать" алгортитм вычисления функции exp(-x) с помощью разложения в ряд Тейлора, если требуемая относительная погрешность результата не должна превышать 0.00001, а вычисления проводятся на персональном компьютере с обычной (не двойной!) точностью.
3. Функция f(x) задана в виде бесконечного произведения f(x)=П(1+x**2k/k**2) , k=1,2,3, ....... Составить подпрограмму для вычисления этой функции с относительной точностью до 0.000001.
4. Выпуклый многоугольник задан массивами декартовых координат своих вершин. Упорядочить эти массивы в порядке следования вершин по периметру многоугольника и вычислить его площадь. Оформить алгоритм в виде подпрограммы.
5. Задан массив первых N коэффициентов разложения функции в ряд по полиномам Лежандра. Составить подпрограмму для вычисления полинома p(x) степени N для наилучшего среднеквадратичного приближения к этой функции на интервале -1 <x< 1.
6. Пусть x и y соответственно действительная и мнимая части комплексной переменной z, так что z=x+iy. Составить подпрограмму для суммирования с точностью eps ряда w(x,y)=a(1)+a(2)+a(3)+ ............, где a(k)=z**2k/k**3. Примечание: переменных типа complex не употреблять, поскольку в некоторых старых версиях FORTRANа этого типа нет.


