Поиск

Полнотекстовый поиск:
Где искать:
везде
только в названии
только в тексте
Выводить:
описание
слова в тексте
только заголовок

Рекомендуем ознакомиться

'Документ'
Каждый из нас когда-либо совершал поступки, которые в то или иное время обществом характеризуются как преступление. Взять потихоньку небольшую сумму ...полностью>>
'Урок'
предметная - создать условия для определения особенностей протекания мирового экономического кризиса 1929 - 1933 гг. во Франции. Организовать совмест...полностью>>
'Курсовая'
Финансы являются одной из важнейших экономических категорий, отражающей экономические отношения в процессе создания и использования денежных средств....полностью>>
'Книга'
- Как же тебе защититься, Сократ, - сказал он, - если станут утверждать, что не слишком-то счастливыми делаешь ты этих людей, и притом они сами будут ...полностью>>

Концепция программно-методического продукта «Лабораторный практикум по вычислительной математике»

Главная > Практикум
Сохрани ссылку в одной из сетей:

Концепция программно-методического продукта
«Лабораторный практикум по вычислительной математике»

Для сотрудников кафедры выч. математики, участвующих в проекте

Содержание

1 Причины и цели разработки нового практикума 1

1.1 Недостатки старого практикума 1

1.2 Достоинства старого практикума, которые желательно сохранить 2

1.3 Новые цели разработки практикума 2

2 Общие концепции нового практикума 3

2.1 Использование различных трактовок понятия лабы 3

2.2 Аккуратный подход к использованию математического пакета 5

2.3 Методические материалы в практикуме 6

2.4 Разделение практикума на программы 7

2.5 Последовательность лаб и тем лекций разных лекторов 10

3 Технические средства реализации практикума 11

3.1 Java 11

3.2 С++ 12

3.3 МATLAB 13

3.4 MathCAD (возможен вместо MATLAB) 13

3.5 Распределение лаб между различными средствами 14

Для большинства методистов важно прочитать лишь выделенное желтым

Перечень изменений документа

Дата

Версия

Автор

Описание изменений

Измененные
разделы

25.06
.2006

0.1

Евдокимов

Создание структуры документа и ее первичное наполнение

все

28.06
.2006

0.2

Евдокимов

Добавление концепции справочных материалов.
Распределение лаб по средствам реализации

2.3; 3.5

29.06
.2006

0.3

Евдокимов

Небольшие изменения в наборе лаб. Добавления средств, связанных с подпроектом Source

3.5; 3.5 (старый), 2.1

04.07
.2006

0.4

Евдокимов

Структурирование набора лаб. Добавление разделов, описывающего лабы и их связь с темами

3.5, 2.4, 2.5

22.07
.2006

0.5

Евдокимов

Изменение последовательности и мелкая корректировка описаний лаб осеннего семестра

3.5, 2.4, 2.5

29.08
.2006

0.6

Евдокимов

Изменение набора/содержания лаб по замечаниям Пирогова; выставление приоритетов лаб

3.5, 2.4, 2.5, 1.1

22.10
.2006

0.7

Евдокимов

Учет замечаний, высказанных на методических семинарах, удаление связанного с Source

2.1, 3.5, 3.5 (удален)

1Причины и цели разработки нового практикума

1.1Недостатки старого практикума

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

  2. Мелкие недостатки, которые хочется исправить, но нельзя (так как их авторов давно уже нет, а нынешние студенты за доработку старых лаб не возьмутся)

  3. Недостатки методики исследования. Наиболее очевидные:
    а) невозможность или сложность сравнения расчетов на одном графике (по разным методам, с разными шагами и т.п.);
    б) невозможность показа зависимости результата расчетов от шага/параметра;
    в) невозможность сохранения в файл всех данных варианта задачи и дальнейшей загрузки из этого файла (в частности, было бы удобно накопить несколько вариантов, чтобы можно было показать их преподавателю);
    г) невозможность изменения времени расчета как одной из характеристик метода;
    д) ..

  4. Отсутствие поддержки написания программного кода студентами и других трактовок лабораторных работ, отличных от «готовой учебной программы».

1.2Достоинства старого практикума, которые желательно сохранить

  1. Отлично организованная справка, причем из любого места интерфейса (справку следует сделать еще лучше за счет гиперссылок).

  2. Возможность пошагового выполнения расчета (есть не во всех лабах).

  3. «Демо-версии» с показом последовательности действий пользователя (сделать это снова будет сложно, так что пока эту возможность следует лишь «иметь ввиду»).

  4. Достаточно продуманная структура меню (она превратится в структуру «закладок», «панелей с разделителями» и т.п. частей современного интерфейса)

  5. Показ настроек текущего варианта задачи в любой момент времени.

  6. Заставки, иллюстрирующие смысл лабы (может быть, другие, но заставки должны быть – это важно для демонстрации проекта).

1.3Новые цели разработки практикума

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

  2. Хотя бы часть лаб должна быть доступна из Интернет (реклама продукта на словах гораздо менее эффективна, чем реклама продукта в действии)

  3. Необходим компромисс между двумя трактовками лаб – между
    а) точкой зрения В.В.Демченко, который заставляет студентов «с нуля» писать 3 программы в каждом семестре, и
    б) точкой зрения половины сотрудников кафедры, которые считают, что программы студентам писать вообще не нужно, достаточно проиллюстрировать теорию в готовых программах.

  4. Более того, практикум должен быть разнообразным. Это намного увеличивает интерес студентов, ведь для многих интерес делать лабы заключается не в изучении вычислительной математики, а в том, что им интересно копаться в различных программах, изучать новые технологии (если эти технологии современные и востребованные, например, – математические пакеты). Кроме того, различный взгляд на близкий материал (из мат. пакета, из готовой программы, из исходного кода собственной программы) позволяет глубже и быстрее понять этот материал. С точки зрения преподавателя, разнообразие лаб позволяет выбрать из них наиболее близкие к его личному подходу. Однако слишком большое разнообразие тоже мешает, так как теряется много учебного времени на освоение новых лаб студентами.

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

  6. Кроме обновления программного кода, нужна возможность преподавателю многое обновлять в лабе (без обращения к программистам). Это предполагается за счет хранения в XML структуры интерфейса и данных задачи (по умолчанию).

2Общие концепции нового практикума

2.1Использование различных трактовок понятия лабы

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

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

  2. Большинство лаб будет оформлено в виде готовой программы на языке Java или C++, что позволит студентам освоить максимальное количество тем за год. При этом будут реализованы стандартные возможности типа сравнения результатов и производительности расчетов при разных численных методах и при разных шагах/параметрах. Однако в этом подходе никаких возможностей отклонения от «учебного маршрута» не предусматривается.

Кроме этих крайностей самих по себе, будут использоваться следующие приемы:

  1. Надо, чтобы студенты почаще сами писали вычислительные алгоритмы, но при этом не тратили время на визуализацию, ввод/вывод, создание общей структуры программы и т.п. При этом они должны иметь возможность видеть понятный написанный за них код, который реализует другие куски программы (и при необходимости его поменять). Для этой цели идеально подходит использование математического пакета (по причине компактности и наглядности кода). Другими словами, несколько лабораторных надо сделать так, чтобы студенты программировали алгоритмы и получали результаты в математическом пакете (подробнее в разделе 2.2).

  2. Как альтернативный вариант, можно также предложить давать студентам недоделанные программы на каком-либо языке программирования (не в пакете). Но в текущей ситуации этот подход нецелесообразен: лабораторные такого типа имеются лишь на Fortrane и на Java (используются в базовом курсе, а также отчасти в курсе «Нелинейные вычислительные процессы» – в его рамках этот подход и будет развиваться). Однако студентам, проходящим вычислительную математику, однозначно нужен язык С/С++, а по этому языку у нас нет подходящих специалистов, готовых заняться разработкой подобных «недоделанных программ» (здесь требуется очень высокое качество кода и очень подробные комментарии к нему).

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

  4. Желательно предусмотреть в практикуме возможность выделиться для студентов, наиболее толковых в плане вычислительного программирования. Таких студентов обычно бывает от 0 до 3 в каждой группе, и персональный подход к ним позволяет: а) дать им гораздо больше полезных знаний/навыков, чем среднестатистическому студенту; б) избежать ситуаций, когда эти лучшие студенты делают задания за всю группу (при этом группа совершенно расслабляется и не осваивает программу даже по минимуму). Здесь есть две основные возможности:
    а) Для студентов, имеющие большое желание именно программировать, можно иногда давать задание по разработке/улучшению того или иного численного метода к лабе (это один из механизмов постепенного обновления практикума, см. раздел 1.3).
    б) Для студентов, знакомых с выбранным для практикума математическим пакетом (MATLAB или MathCAD), можно предусмотреть задания по решению задачи «с нуля» в этом пакете, причем без использования подробных указаний (которые сделать затруднительно). При условии знания студентом пакета трудозатраты на решение задачи «с нуля» почти такие же, как при решении задачи в готовой программе. Требование использовать именно «выбранный для практикума пакет» обусловлено тем, что результат должен быть по возможности применен для создания в пакете новой лабораторной работы по соответствующей теме.

Таким образом, как при использовании языка программирования, так и при использовании математического пакета можно выделить 3 методических подхода:

    • расчеты на полностью законченной программе;

    • редактирование студентом имеющейся программы (выше обосновано, что для языка программирования, в отличие от пакета, это нецелесообразно, – за исключением персональных заданий особо толковым студентам);

    • требование к студенту написать свою программу и уже затем проводить расчеты.

2.2Аккуратный подход к использованию математического пакета

Общепризнано, что писать вычислительные программы в мат. пакетах на порядок быстрее, чем на языках программирования (при условии, что пакет известен человеку в той же мере, что и язык). Преимущество наблюдается не только во встроенных в пакеты высокоуровневых средствах визуализации и ввода/вывода, но и в библиотеках математических функций, которые делают реализацию численных методов очень компактной. Соответственно, использование мат. пакета сильно экономит как время на разработку лаб (типа «готовая программа»), так и учебное время (на написание или редактирование программ студентами). Есть также очень полезные возможности мат. пакетов, которые вообще невозможно хорошо реализовать в обычных программах; к ним относятся, прежде всего, символьные вычисления. Кроме того, в случае использования пакета автоматически обеспечивается общность «лабораторной среды», благодаря которой студентам не надо учиться каждой программе-лабе. Открытость кода программ в мат. пакете позволяет студентам лучше разобраться с тем, как реализуется предлагаемая им теория. Сами по себе навыки работы в широко известном мат. пакете многие студенты признают полезными и с удовольствием их приобретают (чего нельзя сказать о навыках использования «самодельных» программ кафедры). Работа в пакете является также крайне полезной для подготовки студентов к выполнению НИР на многих базовых кафедрах (пакеты используются при выполнении 15-30% бакалаврских дипломов – как в МФТИ, так и в других вузах).

Тем не менее, нецелесообразно использовать математический пакет в качестве единственного средства реализации лаб. Это обусловлено следующими факторами:

  1. В вузах России существует большое количество практикумов по вычислительной математике на математических пакетах, поэтому показать новизну данного практикума будет затруднительно (если не использовать ничего кроме мат. пакета).

  2. Лицензии на мат. пакеты являются очень дорогими даже для учебных заведений, поэтому их применение может быть ограничено финансово-политическими факторами.

  3. Мат. пакеты изменяются (а также теряют конкурентоспособность) намного быстрее, чем обычные языки программирования, поэтому практикум, сделанный в формате определенной версии какого-либо пакета, во-первых, требует довольно частого перевода на новые версии пакета (раз в 3-4 года), а во-вторых, может через несколько лет потерять привлекательность вместе с потерей пакетом своего места на рынке.

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

  5. Достаточно большое время необходимо на освоение пакета в той мере, в которой это необходимо для написания студентом своей программы и даже для редактирования существующей программы (а такие формы лаб, как упоминалась выше, являются необходимыми для полноценного практикума).

  6. Для решения многих практических задач (на базовых кафедрах) мат. пакеты принципиально не подходят, поэтому не следует лишать студентов возможности познакомиться с вычислительными программами на обычном языке программирования.

Таким образом, мат. пакет как средство реализации практикума имеет как очень большие преимущества (в основном, с точки зрения скорости разработки и возможностей «красивой» демонстрации практикума), так и очень большие недостатки (в основном, с точки зрения дальнейшего использования практикума). Поэтому планируется достичь компромисса путем разработки лишь части практикума в мат. пакете, а остальной части – на обычном языке программирования. Более подробно распределение лаб практикума между этими двумя средствами обосновывается в разделе 3.5

2.3Методические материалы в практикуме

Методические материалы практикума (прежде всего, указания студентам по выполнению лаб) формируются на базе существующего (печатного) сборника лабораторных работ по вычислительной математике. Материалы (тексты) разрабатываются в некотором смысле отдельно от реализующих лабы программ, чтобы можно было использовать их независимо (в частности, при переиздании сборника или при публикации в виде электронного учебника/задачника на сайте). Однако оформляются они в том формате, в котором их можно непосредственно использовать в справочной системе лаб (программ). Таким форматом (пригодным как для справочной системы, так и для сайта) служит формат HTML.

Предлагается в каждой лабораторной иметь следующие разделы справки:

  • «Учебник» – краткое описание задачи и теории ее решения, предваряемое абзацем аннотации к задаче и завершаемое списком литературы, на которую должны быть ссылки в тексте теории.

  • «Задание» – часть старого «задачника», содержащая общую постановку задачи студентам без указания конкретных названий методов, значений параметров и т.п.

  • «Варианты» – а) четко выделенные из старого «задачника» и из других источников перечни методов и параметров задачи/методов, которые подлежат варьированию (в зависимости от варианта или в рамках одного варианта);
    б) 2-4 перечня вариантов, каждый из которых может быть либо перечнем отличий данного варианта от других (часто варианты различаются решаемой системой уравнений), либо перечнем указаний о том, что и как нужно варьировать (какие из всех методов использовать, какие параметры в каком диапазоне изменять);
    в) перечни «учебных маршрутов», каждый из которых представляет собой комбинацию из пунктов перечней пункта б); (этот пункт необязателен, поскольку преподаватель может легко получить сам большое число комбинаций вариантов). Пункты б) и в) принципиально не включаются в данный раздел, если лаба носит «не слишком учебный» («профессиональный») характер – см. разделы 2.1 и 3.5.

  • «Решение» – раздел справки, не относящийся к методическим материалам и получаемый из «математического» описания требований к программе.

  • «Интерфейс» – раздел справки, не относящийся к методическим материалам и получаемый из «интерфейсного» описания требований к программе.

  • «Вопросы» – требуемые при сдаче контрольные вопросы по темам «учебника».

2.4Разделение практикума на программы

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

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

Кроме того, вводится понятие «циклов лабораторных работ», чтобы программы были лучше структурированы. Для удобства программы ниже имеют двухуровневую нумерцию, а лабы упорядочены линейно. Ниже номер лабы указывается жирным для каждой программы, хотя это соответствие зависит от потока (факультета) и от личных предпочтений преподавателя. Условно возможные варианты последовательности лаб можно разделить на три типа: «потоками типа 1» ниже называются варианты курса, где алгебраические уравнения рассматриваются первыми лабами (потоки Пирогова, Косарева и Демченко, учебник Рябенького); «потоками типа 2» – где решение алгебраических уравнений идет ПОСЛЕ приближения функций, но ДО численного дифференцирования и интегрирования (пока это гипотетический вариант курса); «потоками типа 3» – где решение алгебраических уравнений идет непосредственно перед дифференциальными уравнениями (потоки Петрова и Лобанова, учебник Бахвалова). Есть и другие варианты (например, в учебнике Самарского линейные системы идут первыми, а нелинейные – последними, т.е. непосредственно перед дифф. уравнениями).

В нижеприведенном описании программ (курсивом) указывается также степень близости программы к старому практикуму и приоритет лабы (приоритет основан на наличии прототипов некоторых программ и на возможности апробировать лабы на занятиях со студентами, которое возможно не ранее чем весной).

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

    1. «Линейные системы уравнений. Спектр матриц». Лаба №2 для потоков типа 1, №4 для потоков типа 2 и №6 для потоков типа 3. Сюда входят четыре части: прямые методы решения линейных систем, быстрые прямые методы для n-диагональных матриц, итерационные методы, расчет спектра матриц. Число методов больше, чем в старом практикуме. Размерность матриц не ограничивается, предусматривается возможность автоматического заполнения n-диагональных матриц большой размерности. Приоритет: высокий (т.к. на базе этой программы должна делаться лаба по эллиптическим уравнениям, необходимая к апрелю).

    2. «Нелинейные уравнения. Локализация корней». Лаба №3 для потоков типа 1, №5 для потоков типа 2 и №7 для потоков типа 3. Уравнения можно задавать как в виде коэффициентов полинома (в этом случае иллюстрируются методы локализации корней), так и в виде произвольной функции одной переменной (в этом случае проще иллюстрировать различия между методами). Старый практикум использовал только второй подход. Приоритет: средний (к сентябрю 2007).

    3. «Нелинейные системы. Поиск минимума». Лаба №4 для потоков типа 1, №6 для потоков типа 2 и №8 для потоков типа 3. Эта программа в старом практикуме отсутствовала. Методы решения систем предполагают произвольное число уравнений, однако пока предлагается задавать лишь два уравнения, каждое из которых может быть кривой второго порядка или, в вырожденном случае, прямой линией. Выбор начального приближения (локализация корней) проводится пользователем графически (на основе двумерной визуализации). С помощью трехмерной визуализации иллюстрируется как процесс поиска минимума (функции двух переменных, заданной независимо от системы), так и методы решения нелинейных систем типа градиентного или случайного спуска (в этом случае минимизируемая функция равна квадрату вектор-функции системы уравнений). Приоритет: низкий.

  2. Цикл «Приближение функций» (осень).

    1. «Интерполяция». Включает алгебраическую интерполяцию и сплайн-интерполяцию. Эта лабу желательно давать до численного дифференцирования и интегрирования (поскольку полиномиальная интерполяция используется там при выводе формул). То есть рекомендуемый номер лабы – №5 для потоков типа 1 и №2 для потоков типа 2,3. Приоритет: средний.

    2. «Среднеквадратичное приближение. Переопределенные системы уравнений». Как и в старом практикуме, здесь стоит сделать упор на самое распространенное приложение теории переопределенных систем – на среднеквадратичное приближение одномерных дискретных функций. В потоках типа 1 лаба идет под №6 (хотя есть и другой вариант – давать ее сразу после линейных систем под №3). В потоках типа 2 эта лаба под №3 может служить переходным звеном между интерполяционным приближением (которая в большинстве учебников рассматривается вместе со среднеквадратичным приближением) и линейными системами уравнений. В потоках типа 3 данная лаба тоже имеет №3 (здесь есть нелогичность: переопределенные системы отделяются от обычных систем другими лабами).
      Какую приближающую функцию использовать (y = k*x+b или? y = ak*xk+ak-1*xk-1+..+a0 или? произвольная функция) – выносится на обсуждение. Приоритет: низкий.

  3. Цикл «Дискретные функции» (осень). Цикл объединяет лабы, которые рассматривают дискретизацию функций одной переменной и их преобразование в дискретном виде. Следует заметить, что тема «Погрешности вычислений», несмотря на ее выделение в отдельную программу – лабу №1, проходит красной нитью через многие лабы первых трех циклов (программы этих циклов позволяют исследовать погрешность, в том числе, в зависимости от разрядности чисел). Особенно подробно эта тема может быть рассмотрена на программах по дифференцированию, по интерполяции и по решению систем линейных уравнений (и даже в программе по интегрированию можно убедиться, что неустранимая погрешность мала).

    1. «Погрешности вычислений». Включает численное дифференцирование (простейшая аппроксимация) и приближение функции с помощью ряда. Лаба имеет №1 для всех потоков. Аналогично старому практикуму. Приоритет: средний (к сентябрю 2007).

    2. «Численное дифференцирование». Данная программа обычно соответствует лабе №7 для потоков типа 1,2 и №4 для потоков типа 3. Лабу по дифференцированию в потоках типа 3 можно давать также под №2 (это является логичным продолжением лабы №1, но не очень удобно по другой причине: в начале семестра студенты не могут понимать величину погрешности с точки зрения интерполяционных формул). В старом практикуме данная программа отсутствовала, однако она желательна для придания практикуму законченного вида (для покрытия им 100% тем лекций). Кроме того, данная лаба дает дополнительные методические возможности по изучению погрешности. Приоритет: низкий.

    3. «Численное интегрирование». Данная лаба обычно следует за лабой по дифференцированию (то есть рекомендуется №8 для потоков типа 1,2 и №5 для потоков типа 3; см. выше). По сравнению со старым практикумом, предлагается сделать данную программу более похожей на другие лабы цикла. Это предполагает показ значения интеграла не только в последней точке, но и на всем отрезке интегрирования (на графике). Приоритет: низкий.

  4. Цикл «Обыкновенные дифференциальные уравнения» (зима). Режим пошагового выполнения в данном цикле отсутствует (так как результаты шагов по времени хорошо видны на графиках). Исключением являются «шаги», понимаемые как приближение к решению на всем отрезке (однократное решение задачи Коши) – это может показываться в пошаговом режиме.

    1. «Задача Коши для нелинейной системы ОДУ». Лаба №9 (для всех потоков). Сюда включаются не только разнообразные методы решения ОДУ (одношаговые и многошаговые, в том числе для жестких систем), но и методы вычисления шага, разные методы решения системы алгебраических уравнений на шаге. Приоритет: очень высокий (к ноябрю 2006).

    2. «Краевая задача для линейного ОДУ 2-го порядка. Спектральная задача Штурма-Лиувилля». Часть лабы №10. Метод прогонки (в обе стороны) и все другие методы для линейных задач. Приоритет: высокий (к ноябрю 2006).

    3. «Краевая задача для системы ОДУ». Часть той же лабы №10. Программа с точки зрения интерфейса расширением программы для задачи Коши. Она рассматривает те методы/эффекты (в т.ч. отсутствующие в старом практикуме), которые используются/проявляются в случае нелинейной системы и в случае порядка системы уравнений, превышающего 2 (в частности, рассматривается жесткая краевая задача). Приоритет: низкий (к февралю 2007 все равно некоторые методы не успеть).

  5. Цикл «Одномерные эволюционные уравнения в частных производных» (весна).

    1. «Уравнение переноса». Лаба №11. Приоритет: высокий (к марту 2007).

    2. «Волновое уравнение». Лаба №12. Программа будет являться расширением предыдущей программы. Выносится на обсуждение: что лучше вводить, волновое уравнение или систему из двух уравнений? Приоритет: высокий (к марту 2007).

    3. «Уравнение теплопроводности». Лаба №13. Теперь в этой лабе будет не только линейное уравнение, как в старом практикуме, но и нелинейное уравнение с коэффициентом ~uk. Приоритет: высокий (к марту 2007).

    4. «Конвективно-диффузионное уравнение». Лаба №14. Иллюстрирует метод расщепления по физическим процессам. Здесь же нелинейные уравнения, в т.ч. Хопфа. Приоритет: низкий (скорее всего, в 2007 не будет использоваться преподавателями).

  6. Цикл «Многомерные уравнения в частных производных» (весна).

    1. [«Двумерное уравнение теплопроводности». Иллюстрируется метод расщепления по координатам (метод дробных шагов, метод переменных направлений). Лаба №15 возможна в перспективе]

    2. «Уравнение Пуассона». Лаба №16. Здесь рассматриваются разные шаблоны, а также многочисленные методы решения сеточных уравнений. [В перспективе, возможно, превратится из «чисто учебной» в «профессиональную» программу, дополнившись большой частью (или отдельной лабой №16?) «Вариационные и проекционно-сеточные методы» или «Метод конечных элементов»] Приоритет: высокий (к апрелю 2007).



Скачать документ

Похожие документы:

  1. Практикум по химии Анкудимова И. А., Гладышева И. В

    Практикум
    Развитие советской экономической системы. 1917 - 1991 годы: Рабочая тетрадь для студентов 1-2 курсов по базовой дисциплине "Отечественная история"
  2. Математика (6)

    Программа
    Настоящая программа рассчитана на 800 часов трудоемкости, из которых не менее 400 часов (50% от 800) должно быть отведено для аудиторных занятий со студентами.
  3. Практикум по психологии по общей, экспериментальной и прикладной психологии

    Практикум
    Главный редактор Зав. психологической редакцией Руководитель проекта Ведущий редактор Художественный редактор Обработка иллюстраций Корректоры Л. Оригинал-макет подготовила
  4. Методические рекомендации для студентов по изучению дисциплины 29 1

    Методические рекомендации
    Рабочая программа составлена на основании ГОС направлений и специальностей высшего профессионального образования, утвержденного приказом Министерства образования и науки РФ от 31.
  5. Методические указания к выполнению контрольной работы по дисциплине «Информатика» Новочеркасск 2007

    Методические указания
    Методические указания к выполнению контрольной работы по дисциплине «Информатика» / Сост. А.Н. Свиридова; Шахтинский ин-т (филиал) ЮРГТУ (НПИ). – Новочеркасск: ЮРГТУ, 2007.

Другие похожие документы..