Кодирование алгоритма решения математической модели задачи visual studio

Обновлено: 07.07.2024

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

Проверка домашнего задания.

Основная часть урока.

Урок проводить при помощи презентации «Этапы решения задач на компьютере».

Решение задачи на компьютере - это процесс автоматического преобразования информации в соответствии с поставленной целью.

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

Решение задач на ЭВМ состоит из следующих этапов:

1. ПОСТАНОВКА ЗАДАЧИ.

2. ПОСТРОЕНИЕ МАТЕМАТИЧЕСКОЙ МОДЕЛИ.

3. РАЗРАБОТКА АЛГОРИТМА.

4. СОСТАВЛЕНИЕ ПРОГРАММЫ.

5. ОТЛАДКА И ТЕСТИРОВАНИЕ ПРОГРАММЫ.

6. ПОЛУЧЕНИЕ И АНАЛИЗ РЕЗУЛЬТАТОВ.

ПОСТАНОВКА ЗАДАЧИ

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

определить цель решения задачи;

определить необходимый объем информации;

дать точную формулировку задачи;

предложить идею решения задачи;

описать исходные данные и способы их хранения;

определить форму выдачи результатов.

ПОСТРОЕНИЕ МАТЕМАТИЧЕСКОЙ МОДЕЛИ

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

Этот этап выполняет человек , способный разработать математическое описание поставленной задачи. При этом он должен выполнить:

анализ похожих решённых задач;

анализ технических и программных возможностей;

анализ условий существования решения.

РАЗРАБОТКА АЛГОРИТМА

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

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

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

СОСТАВЛЕНИЕ ПРОГРАММЫ

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

Составление программы - это кодирование алгоритма для реализации его в компьютере.

ОТЛАДКА И ТЕСТИРОВАНИЕ ПРОГРАММЫ

Отладка программы - это проверка ее на наличие технических, грамматических и, возможно, алгоритмических ошибок. Отладка предполагает совершенствование (оптимизацию) программы.

Ошибки в ходе отладки исправляют путем контрольного тестирования.

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

Этот этап - совместная работа программиста и машины.

ПОЛУЧЕНИЕ И АНАЛИЗ РЕЗУЛЬТАТОВ

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

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

На этом этапе машина работает совместно с человеком, выдающим задание .

Пример задачи стр. 60.

Авторы - И. А. Гурин, Н. А. Спирин, В. В. Лавров, ФГАОУ ВО «Уральский федеральный университет имени первого Президента России Б.Н. Ельцина», г. Екатеринбург, Россия.

Введение

Создание математической библиотеки

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

Приложения и библиотеки, созданные с помощью MATLAB Compiler, используют свободно распространяемое исполняемое ядро, называемое MATLAB Compiler Runtime (MCR). Это позволяет запускать приложения, которые используют MATLAB-функции, без необходимости установки дорогостоящей копии MATLAB.

Одним из инструментов для создания математических библиотек или внешних компонентов является Deployment Tool, представляющий собой графический интерфейс. Вызов данного инструмента осуществляется командой deploytool. На рисунке 1 представлено стартовое окно Deployment Tool, на котором предлагается выбрать тип и создать новый проект.


Рис. 1. Стартовое окно инструмента Deployment Tool в MATLAB

Рассмотрим решение задачи линейного программирования в пакете MATLAB. Решение осуществляется с помощью функции linprog [3]. Функция linprog решает задачу линейного программирования в форме:


Основными входными данными функции linprog являются: вектор коэффициентов целевой функции f, матрица ограничений-неравенств A, вектор правых частей ограничений - неравенств b, матрица ограничений - равенств Aeq, вектор правых частей ограничений - равенств beq, вектор lb, ограничивающий план x снизу, вектор ub, ограничивающий план x сверху. На выходе функция linprog даёт оптимальный план x задачи (1) и экстремальное значение целевой функции fval.

Листинг функции MOptimaGaz решения задачи линейного программирования:

Стоит заметить, что при решении практической задачи не использовались ограничения - равенства, поэтому матрица Aeq и вектор beq не передаются как входные параметры, а принимают пустые значения.

Таким образом, в MATLAB был создан проект MOptimaGaz с классом MClassOptimaGaz и функцией MOptimaGaz. Для использования написанных функций проект компилируется в динамически подключаемую библиотеку DLL.

Подключение библиотеки и ее использование


Рис. 2. Окно добавления ссылки на сборку в Visual Studio

Отметим обязательность соблюдения разрядности MATLAB и создаваемого программного обеспечения. Также замечена нестабильность работы при работе с 64-разрядной архитектурой, поэтому при разработке использовалась 32-разрядная версия MATLAB.

Для использования библиотеки необходимо добавить описание пространства имен:

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

Из программы опущен блок, присваивающий переменным lb, ub, Aeq, beq и f значения. Если решение не найдено, то результат содержит пустой массив.

Заключение

Список использованной литературы

Кетков Ю.Л. "MATLAB 7: программирование, численные методы" – Спб.: БХВ- Петербург, 2005. – 752 с.

Расчетное задание защищено с оценкой ____________ Преподаватель ____________ Тушев А.Н.

“____”___________ 2015 г.

тема проекта (работы)

по дисциплине «Современные технологии программирования»

РЗ 09.03.01.22.000 О

1.jpg

Студентка группы ИВТ – 22 Анна Дмитриевна Ускова

2.jpg

Руководитель

проекта (работы) к.т.н., доцент Александр Николаевич Тушев

должность, ученое звание и.о., фамилия

ЗАДАНИЕ НА РАСЧЕТНУЮ РАБОТУ

3.jpg

По дисциплине Современные технологии программирования

Выдано студентке группы ИВТ-22 Усковой Анне Дмитриевне

4.jpg

1. Получение заданий

1 — 2 недели семестра

2. Описание предметной области

2 — 4 недели семестра

3. Создание программ

5 — 11 недели семестра

4. Тестирование программ

12 — 13 недели семестра

Оформление и сдача работы на проверку 14 — 15 -я недели семестра

Срок представления работы к защите 16 — 17 -я недели семестра

Руководитель работы Тушев Александр Николаевич

фамилия, имя, отчество

Подпись руководителя Подпись студента

Дата выдачи задания « 10 » февраля 2015 г.

1 Описание предметной области………………………………………………. 5

2 Обработка статических и динамических изображений .…………………. 6

3 Алгоритмы обработки матриц…………………………………………………7

4 Алгоритмы обработки слов или текста………………………………………..8

5 Комбинаторика и динамическое программирование…………………………9

6 Переборные алгоритмы…………………………… ………………………… 10

Список использованных источников…………………………………………. 12

Задачи курсовой работы:

Реализовать 5 задач по темам:

1. Обработка статических и динамических изображений.

2. Алгоритмы обработки матриц.

3. Алгоритмы обработки слов или текста.

4. Комбинаторика и динамическое программирование.

5. Переборные алгоритмы.

1 Описание предметной области

2 Обработка статических и динамических изображений

Задача. Движение окружности.

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

Внешний вид до нажатия кнопки «Start»

7.jpg

Задали радиус и нажали кнопку «Start»

8.jpg

3 Алгоритмы обработки матриц

9.jpg

10.jpg

11.jpg

4 Алгоритмы обработки слов или текста.

12.jpg

13.jpg

Дан текст из слов, разделенных одним пробелом. Найти слова, оканчивающиеся на ------онок или -енок и заменить их множественным числом по правилам или приведенным исключениям.

14.jpg

15.jpg

5 Комбинаторика и динамическое программирование.

16.jpg

Внешний вид до нажатия кнопки «подобрать» представлен на рисунке 5.1

17.jpg


Рисунок 5.1

Внешний вид после нажатия кнопки «подобрать» представлен на рисунке 5.2

18.jpg

Требуемая расстановка знаков невозможна:

19.jpg

6 Переборные алгоритмы.

20.jpg

Задача решается простым тройным циклом:

Внешний вид до нажатия кнопки «найти решения» представлен на рисунке 6.1

Результат работы программы представлен на рисунке 6.2

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

Преимущества приложений – простой, понятный для пользователя интерфейс, высокое быстродействие, простота редактирования.

Недостатки – приложения не кроссплатформенные и не могут быть запущены на других операционных системах, кроме Windows.

Список использованных источников

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

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

Процесс построения любой математической модели можно представить последовательностью этапов:

  1. Обследование объекта моделирования и формулировка технического задания на разработку модели (содержательная постановка задачи);
  2. Концептуальная и математическая постановка задачи;
  3. Качественный анализ и проверка корректности модели;
  4. Выбор и обоснование выбора методов решения задачи;
  5. Поиск решения;
  6. Разработка алгоритма решения и исследование его свойств, реализация алгоритма в виде программ;
  7. Проверка адекватности модели;
  8. Практическое использование построенной модели.

Обследование объекта моделирования

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

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

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

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

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

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

Концептуальная постановка задачи моделирования

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

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

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

Математическая постановка задачи

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

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

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

Выбор и обоснование выбора решения задачи

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

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

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

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

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

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

Естественным требованием для конкретного вычислительного алгоритма является согласованность в порядках величин перечисленных трех видов погрешностей.

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

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

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

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

Реализация математической модели в виде компьютерной программы

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

Процесс создания программного обеспечения можно разбить на несколько этапов:

  • составление технического задания на разработку программного обеспечения;
  • проектирование структуры программного комплекса;
  • кодирование алгоритма;
  • тестирование и отладка;
  • сопровождение и эксплуатация.

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

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

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

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

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

Проверка адекватности модели

Адекватность математической модели - степень соответствия результатов, полученных по разработанной модели, данным эксперимента или тестовой задачи.

Проверка адекватности модели преследует две цели:

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

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

Решение вопроса о точности моделирования зависит от требований, предъявляемых к модели, и ее назначения. При этом должна учитываться точность получения экспериментальных результатов или особенности постановок тестовых задач. В моделях, предназначенных для выполнения оценочных и прикидочных расчетов, удовлетворительной считается точность 10-15%. В моделях, используемых в управляющих и контролирующих системах, требуемая точность может быть 1-2% и даже более.

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

Практическое использование модели и анализ результатов моделирования

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

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

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

Независимо от области применения созданной модели группа разработчиков обязана провести качественный и количественный анализ результатов моделирования.

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

Читайте также: