Электронный лабораторный практикум по вычислительной математике icon

Электронный лабораторный практикум по вычислительной математике


Смотрите также:
Концепция программно-методического продукта «Лабораторный практикум по вычислительной...
Лабораторный практикум по микробиологии...
Кафедра безопасности жизнедеятельности и основ медицинских знаний...
Лабораторный практикум по курсу радиоэкология...
Лабораторный практикум Часть I одобрен методической комиссией факультета «Управление процессами...
Лабораторный практикум по дисциплине “Экономика отрасли” Одобрено методической комиссией фбо...
Методика и технологии работы социального педагога: лабораторный практикум...
Практикум по химии Анкудимова И. А., Гладышева И. В...
Славянский А. А., Вовк Г. А., Гаврилов А. М. Лабораторный практикум по технологии сахара...
Учебное пособие: лабораторный практикум Издательство Томского политехнического университета 2010...
Учебно-методический комплекс дисциплины «лабораторный практикум по бухгалтерскому учету...
К. В. Новиков лабораторный практикум по курсу «системы управления медицинскими базами данных»...



Загрузка...
скачать

                    Мицель А..А. , Веретенников М.В. 

Томский государственный университет

систем управления и радиоэлектроники

ЭЛЕКТРОННЫЙ ЛАБОРАТОРНЫЙ ПРАКТИКУМ ПО
ВЫЧИСЛИТЕЛЬНОЙ МАТЕМАТИКЕ




1.  Лабораторные работы по дисциплине «Вычислительная математика»


С развитием технологий дистанционного обучения возникает необходимость в программном и методическом обеспечении учебного процесса в удаленных филиалах вуза. На кафедре АСУ ТУСУР разрабатывается комплекс средств автоматизированного обучения дисциплине “Вычислительная математика”, включающий в себя лекционный курс, практикум и лабораторный практикум.

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

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

Лабораторный практикум содержит 8 лабораторных работ:

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

  2. Решение задач линейной алгебры (решение систем линейных алгебраических уравнений, вычисление определителей и обратных матриц);

  3. Вычисление собственных чисел и собственных векторов;

  4. Интерполирование и численное дифференцирование функций (полиномами Ньютона с равномерной и неравномерной сетками и полином Лагранжа);

  5. Приближение сплайнами (линейными, параболическими и кубическими);

  6. Численное интегрирование функций (по формулам прямоугольников, трапеций, Симпсона, квадратурным формулам Чебышева и Гаусса);

  7. Решение обыкновенных дифференциальных уравнений (дифференциальных уравнений первого порядка, систем дифференциальных уравнений первого порядка и дифференциальных уравнений n-го порядка);

  8. Решение интегральных уравнений.


2. Автоматизированный лабораторный практикум (рис. 1) содержит краткую теорию для всех лабораторных работ, содержащуюся в методическом пособии [1] и банк заданий по каждой работе. Так же, в программе реализованы все используемые в лабораторных работах численные методы: студент может выбрать любой из примеров из банка заданий, либо ввести произвольный пример (функции задаются в аналитическом либо табличном виде), решить его и посмотреть результаты, сравнив их со своими.


Для проверки знаний студентов в практикум предполагается встроить блок автоматизированного тестового контроля. Студент может выбрать проверку своих знаний по любой из тем, входящих в практикум, либо комплексный контроль – по всему предмету. Исходя из выбора студента, программа создает некоторое множество вопросов из своего банка данных. Тестовые вопросы могут задаваться с ограничением времени на ответ и без него. Решая предложенные задачи, студент самостоятельно оценивает свои знания и одновременно закрепляет усвоенный материал.

Программа автоматизированного практикума создана на основе системы визуального проектирования Delphi 1 (16 bit) и выполняется на компьютерах, оснащенных операционной системой MS Windows 3.1 и выше. Для ввода функций был создан транслятор математических формул с возможностью аналитического дифференцирования, что позволило вводить формулы в привычном для пользователей виде.

^ Автоматизация проверки компьютерных программ студентов

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

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

  1. Р
    аспознавание языка программирования, на котором написана программа, и ее компиляция. Если компилятор возвращает ошибку, программа написана неверно.

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

  3. Проверка программы на предмет фальсификации. Не секрет, что многие студенты пользуются чужими программами, либо фальсифицируют работу программ:

  • Для проверки «индивидуальности» текст программы приводится к стандартному виду – удаляются все комментарии, лишние символы и имена функций и переменных заменяются на стандартные. Приведенная к стандартному виду программа сравнивается с программами в банке студенческих работ. Если процент совпадений слишком велик, автор программы подозревается в «плагиате». С другой стороны, следует помнить, что небольшие, простые в реализации программы часто создаются разными авторами очень похожими (например, если попросить нескольких программистов независимо друг от друга написать программу типа ”Hello, world!”, большинство программ будут практически идентичны).

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

Учитывая то, что основная задача преподавателя – научить студента, а не поймать его на фальсификации, проверка на фальсификацию включается опционально.

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

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

Литература


1.  Мицель А.А. Вычислительная математика. Лабораторный практикум. Томск: Изд-е ТУСУР. 1999. – 106 с.


Небогатикова С.М.

Уральский государственный педагогический университет


^ ФОРМАЛИЗАЦИЯ НАВЫКОВ ПРОГРАММИРОВАНИЯ КАК СРЕДСТВО ФОРМИРОВАНИЯ ИНФОРМАЦИОННОЙ КУЛЬТУРЫ ШКОЛЬНИКА

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

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

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

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

Однако в школе до сих пор главенствующее место занимает практика программирования на основе построения математических моделей и их алгоритмов и, чаще всего, не подкрепленная деятельностью на компьютере. И теория, и практика обучения программированию подтверждают мысль о том, что учащимся сложно изучать математические модели на основе алгоритмизации. Создание математической модели – абстрактной модели в формализованной математической среде (например, тригонометрические вычисления) – и представление ее с помощью языка программирования, являющегося другой формализованной средой, представляет для учащихся особенную трудность. Им необходимо хорошо знать и образно воспроизводить математическую модель, дифференцировать ее на составляющие логические этапы, чтобы еще раз образно представить эти части через язык программирования и получить правильный результат. Задача становится абстрактной дважды. При этом важно не забывать, что ребенку интереснее изучать, создавая реальный мир в красках и динамике, а не выполнять на компьютере, алгоритмические упражнения для создания абстрактной математической модели этого мира. Например, достаточно нарисовать виртуальную модель гор и произвести «на местности» необходимые тригонометрические вычисления. Это становится возможным благодаря высокому уровню развития объектно-ориентированных языков программирования и мультимедиа технологий. Составление алгоритма в таком языке имеет свои преимущества. Благодаря более глубокой формализации языка программирования, ребенок не отвлекается на сложные логические и математические операции. Вместе с тем и логические, и математические операции присутствуют в познании, но к ним ребенок обращается уже как к средствам, а не цели познания, т.е. овладевает этими операциями на уровне применения. Таким образом, глубокая формализация языков программирования позволяет ребенку с интересом и посильно познавать мир с помощью компьютера.

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

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

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

  • научное программирование, сюда входит теория алгоритмизации, математическое моделирование, научно-исследовательское программирование, связанное с решением больших задач, для которых нужны суперЭВМ, кластеры и многопроцессорные системы и т.д.

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

Обучение языкам программирования изначально основано на формальной логике. Если формальная логика реализуется в наглядной среде языков объектно-ориентированного характера, то она легче воспринимается и изучается в школе, являясь пропедевтикой профессионального и научного программирования.

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

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

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

Цель программирования совершенствуется на междисциплинарном уровне. Это определяется доступностью виртуальных моделей различных учебных дисциплин в виде учебных компьютерных программ на компакт-дисках. Точно также моделированием в объектно-ориентированной среде учащиеся могут сами создать свою виртуальную модель. Для учащихся не составит особых трудностей обработка объектов изучения в графических, анимационных и других редакторах. А задание объекту средствами свойств самого объекта динамичных характеристик поможет им творчески подойти к созданию сюжета и сценария исследования объекта, самостоятельно изучить его в занимательной интерактивной форме.

Готовые компьютерные модели, обучающие биологии, географии, химии и т.д. – это один из способов познания, направленный на изучение мира. Модель, созданная самим учащимся доступными средствами компьютерных технологий, – это такой же способ познания. Только в основе этого познания лежит не просто интерес учащегося к возможностям языка и визуальному программированию, позволяющим представлять многообразие мира, а интерес творца, созидателя модели этого мира. При правильной организации процесса обучения доступность применения теоретических знаний и правил объектно-ориентированного языка программирования к воссозданию многообразия мира приводит, с одной стороны, к выработке соответствующих умений и навыков в языке программирования. А, с другой, – к более глубокому осмыслению и усвоению применяемых таким образом знаний уже на междисциплинарном уровне, что способствует формированию научной картины мира, развитию познавательных, творческих способностей, формированию информационной культуры школьников.




Скачать 121.01 Kb.
оставить комментарий
Дата02.10.2011
Размер121.01 Kb.
ТипДокументы, Образовательные материалы
Добавить документ в свой блог или на сайт

Ваша оценка этого документа будет первой.
Ваша оценка:
Разместите кнопку на своём сайте или блоге:
rudocs.exdat.com

Загрузка...
База данных защищена авторским правом ©exdat 2000-2017
При копировании материала укажите ссылку
обратиться к администрации
Анализ
Справочники
Сценарии
Рефераты
Курсовые работы
Авторефераты
Программы
Методички
Документы
Понятия

опубликовать
Загрузка...
Документы

Рейтинг@Mail.ru
наверх