Реферат: Компьютерное моделирование
Издавна человек применяет модели. Это полезно при изучении сложных процессов или систем, конструировании новых устройств или сооружений. Обычно модель более доступна для исследования, чем реальный объект (а есть такие объекты, экспериментировать с которыми невозможно или недопустимо). Как вы уже знаете, модель -- это некоторый материальный или идеальный (мысленно представляемый) объект, замещающий объект-оригинал, сохраняя его характеристики, важные для данной задачи.
Процесс построения модели называют моделированием. Все способы моделирования можно разделить на две большие группы. В одном случае моделью является предмет, воспроизводящий те или иные геометрические, физические и т.п. характеристики оригинала. Это -- материальное (физическое) моделирование. Исследование таких моделей -- реальные эксперименты с ними.
По иному происходит работа с информационными (идеальными) моделями, являющимися описаниями объектов-оригиналов с помощью схем, графиков, формул, чертежей и т.п. Одним из важнейших видов информационного моделирования является математическое -- когда описания формулируются на языке математики. Соответственно, и исследование таких моделей ведется с использованием математических методов. Именно математическим моделированием вы пользуетесь при решении количественных задач на уроках физики и химии.
Математические модели, используемые при решении современных практических задач, настолько сложны, что исследовать их вручную практически невозможно. Приходится прибегать к помощи компьютера. Как же происходит процесс компьютерного моделирования?
Всякая модель создается для вполне определенной цели, и это в значительной степени определяет ее выбор. Поэтому первое, что необходимо сделать, -- поставить задачу, т.е. определить вопросы, ответы на которые мы хотим получить, и необходимые для этого исходные данные.
Во-вторых, нужно выбрать среди законов, которым подчиняется моделируемая система, существенные для поиска ответов на поставленные вопросы. Возможно, придется выдвигать и какие-то предположения. Найденные закономерности следует представить в форме математических соотношений.
Рассмотрим простой пример22.
Для производства вакцины на заводе выращивают культуру бактерий. Экспериментально установлена скорость размножения бактерий. Известно также, что при увеличении числа бактерий начинается самоотравление, причем количество погибающих бактерий пропорционально квадрату биомассы. Определенную массу забирают ежедневно на нужды производства. Требуется установить, как будет меняться масса бактерий с течением времени.
Начнем с того, что сформулируем задачу математическим языком. Итак, из эксперимента известно, что, если масса бактерий - X грамм, то за сутки появится AX и погибнет BX2 грамм бактерий. Коэффициенты A и B определяются опытным путем для каждого вида бактерий. Ежедневно забирается M грамм. Таким образом, к началу следующего дня масса будет равна
X+(AX-BX2)-M = X (A+1-BX)-M.
Этой формулы нам достаточно, чтобы рассчитать массу бактерий через день, если мы знаем начальную; затем -- пользуясь этой же формулой -- найдем массу через 2 дня; используя уже это значение как исходное -- то, что будет через 3 дня и так далее. Такой способ вычисления последовательности называется рекуррентным23.
Исходными данными будут:
X0 -- начальная масса бактерий;
A, B -- экспериментально определенные коэффициенты;
M -- масса бактерий, забираемая ежедневно на нужды производства.
Результат -- масса бактерий через 1, 2, 3... дня. Обозначим ее "X". Для определенности будем вести расчет для 100 дней.
Итак, модель построена. Что дальше?
На следующем этапе нужно разработать алгоритм ее исследования (либо подобрать готовый). Потом -- составить программу, реализующую этот алгоритм.
Напишем программу для нашего примера. Как обычно, все начнется со ввода исходных данных, после чего нужно будет выполнить вычисления и вывести результаты. Поскольку нам нужно знать биомассу для каждого из ста дней, очевидно, что вычисления ее и вывод результатов нужно будет выполнять циклически. Представим все сказанное на языке Лого:
это биомасса
спроси [Коэффициент А]
пусть “A ответ
спроси [Коэффициент B]
пусть “B ответ
спроси [Ежедневный расход M]
пусть “M ответ
спроси [Начальная масса X0]
пусть “X0 ответ
пусть “X :X0
--> ЧИТАТЬ ПОЛНОСТЬЮ <--