Основы информатики: Учебник для вузов - Лариса Малинина
Шрифт:
Интервал:
Закладка:
Все это говорит о том, что моделирование, рассматриваемое в целом, представляет собой скорее искусство, чем сформировавшуюся науку с самостоятельным набором средств отображения явлений и процессов реального мира.
Процесс исследования поведения какого-либо объекта или системы объектов на компьютере можно разбить на следующие этапы:
• построение содержательной модели;
• построение математической модели;
• построение информационной модели и алгоритма;
• кодирование алгоритма на языке программирования;
• компьютерный эксперимент.
Этапы и цели компьютерного моделированияРассмотрим процесс компьютерного математического моделирования, включающий численный эксперимент с моделью.
Моделирование занимает центральное место в исследовании объекта, процесса, явления. Оно позволяет обоснованно принимать решение: как совершенствовать объекты (процессы), надо ли создавать новые, как изменять процессы управления и, в конечном итоге, как менять окружающий мир в лучшую сторону.
Прежде чем браться за какую-либо работу, нужно четко представить себе отправной и конечный пункты деятельности, а также примерные ее этапы. То же можно сказать о моделировании.
Отправной пункт здесь – прототип. Им может быть существующий или проектируемый объект либо процесс.
Конечный этап – принятие решения. На этом этапе мы либо создаем новый объект (процесс), модель которого мы исследовали, либо улучшаем существующий, либо получаем о нем дополнительную информацию.
Рассмотрим процесс решения задачи на компьютере на следующем примере: изучим полет ядра, вытолкнутого легкоатлетом. Построим содержательную модель, в которой рассмотрим движение ядра в поле тяготения Земли. В этой модели рассматриваются только те параметры, которые характеризуют движение ядра (скорость и координаты), и отвлекаемся от других параметров (температура ядра, его цвет и т. д.).
Теперь построим математическую модель, которая основана на некоторых упрощениях, и это делает этап построения математической модели весьма ответственным, ведь неправильно выбранная модель приведет к неверным результатам.
Существующая физическая система описывается с помощью упрощенной математической модели. Ядро является материальной точкой, сопротивлением воздуха, скоростью ветра и параметрами спортсмена пренебрегаем, ускорение свободного падения считаем постоянным g= 9,8 м/с2. Ядро выталкивается спортсменом со скоростью V под углом к горизонту.
Математическая модель описывает объект моделирования с помощью уравнений.
Получим формулы зависимости координат снаряда от времени, учитывая, что по оси X движение равномерное, а по оси Y – равноускоренное:
Теперь построим информационную модель и алгоритм. На этом этапе необходимо определить, какие величины являются аргументами, а какие – результатами алгоритма, а также определить тип этих величин. В нашем случае аргументами являются: угол вылета снаряда а, его начальная скорость V и время полета t. Результатом являются координаты X и Y. Все они являются переменными вещественного типа. Построим алгоритм, который позволяет определять значения результатов при различных значениях аргументов. Построенный алгоритм записываем в виде блок-схемы:
Рисунок 9.5. Блок-схема алгоритма расчета координат полета снаряда
Теперь можно проводить компьютерный эксперимент. Для этого необходимо загрузить программу в оперативную память компьютера и запустить на выполнение. Компьютерный эксперимент обязательно включает в себя анализ полученных результатов, на основании которого могут корректироваться все этапы решения задачи (математическая модель, алгоритм, программа).
Контрольные вопросы
1. Что такое модель?
2. Для чего используются модели?
3. Что такое моделирование?
4. Как классифицируются модели?
5. Какие этапы проходит процесс создания модели?
6. Какие виды моделирования различают?
7. Какие модели характеризуют информационное моделирование?
8. Что такое формализация?
9. Какими чертами должен обладать знак?
10. В чем заключается цель компьютерного моделирования?
11. Что понимается под компьютерной моделью?
12. Каковы основные функции и этапы компьютерного моделирования?
Глава 10
Компьютерные сети
10.1. Введение в компьютерные сети
Наряду с автономной работой значительное повышение эффективности использования компьютеров может быть достигнуто объединением их в компьютерные сети (network).
Под компьютерной сетью в широком смысле слова понимают любое количество компьютеров, связанных между собой каналами связи для передачи данных.
Существует ряд веских причин для объединения компьютеров в сети. Во-первых, совместное использование ресурсов позволяет нескольким ЭВМ или другим устройствам осуществлять совместный доступ к отдельному диску (файл-серверу), дисководу CD-ROM, стримеру, принтерам, плоттерам, к сканерам и другому оборудованию, что снижает затраты на каждого отдельного пользователя.
Во-вторых, кроме совместного использования дорогостоящих периферийных устройств, имеется возможность аналогично использовать сетевые версии прикладного программного обеспечения. В-третьих, компьютерные сети обеспечивают новые формы взаимодействия пользователей в одном коллективе, например при работе над общим проектом.
В-четвертых, появляется возможность использовать общие средства связи между различными прикладными системами (коммуникационные услуги, передача данных и видеоданных, речи и т. д.). Особое значение имеет организация распределенной обработки данных. В случае централизованного хранения информации значительно упрощаются процессы обеспечения ее целостности, а также резервного копирования.
В компьютерной сети существует 7 уровней взаимодействия между компьютерами: физический, логический, сетевой, транспортный, уровень сеансов связи, представительский и прикладной. Данную взаимосвязь между компьютерами описывает модель взаимодействия открытых систем (Open System Interconnection, OSI), которая определяет различные уровни взаимодействия систем в сетях с коммутацией пакетов, дает им стандартные имена и указывает, какие функции должен выполнять каждый уровень.
Физический уровень (Physical Layer) определяет электрические, механические, процедурные и функциональные спецификации и обеспечивает для канального уровня установление, поддержание и разрыв физического соединения между двумя компьютерными системами, непосредственно связанными между собой с помощью передающей среды, например, аналогового телефонного канала, радиоканала или оптоволоконного канала.
Канальный уровень (Data Link Layer) управляет передачей данных по каналу связи. Основными функциями этого уровня являются разбиение передаваемых данных на порции, называемые кадрами, выделение данных из потока бит, передаваемых на физическом уровне, для обработки на сетевом уровне, обнаружение ошибок передачи и восстановление неправильно переданных данных.
Сетевой уровень (Network Layer) обеспечивает связь между двумя компьютерными системами сети, обменивающимися между собой информацией. Другой функцией сетевого уровня является маршрутизация данных (называемых на этом уровне пакетами) в сети и между сетями (межсетевой протокол).
Транспортный уровень (Transport Layer) обеспечивает надежную передачу (транспортировку) данных между компьютерными системами сети для вышележащих уровней. Для этого используются механизмы для установки, поддержки и разрыва виртуальных каналов (аналога выделенных телефонных каналов), определения и исправления ошибок при передаче, управления потоком данных (с целью предотвращения переполнения или потерь данных).
Сеансовый уровень (Session Layer) обеспечивает установление, поддержание и окончание сеанса связи для уровня представлений, а также возобновление аварийно прерванного сеанса. Уровень представления данных (Presentation Layer) обеспечивает преобразование данных из представления, используемого в прикладной программе одной компьютерной системы в представление, используемое в другой компьютерной системе. В функции уровня представлений входит также преобразование кодов данных, их шифровка/расшифровка, а также сжатие передаваемых данных.
Прикладной уровень (Application Level) отличается от других уровней модели OSI тем, что он обеспечивает услуги для прикладных задач. Этот уровень определяет доступность прикладных задач и ресурсов для связи, синхронизирует взаимодействующие прикладные задачи, устанавливает соглашения по процедурам восстановления при ошибках и управления целостностью данных. Важными функциями прикладного уровня является управление сетью, а также выполнение наиболее распространенных системных прикладных задач: электронной почты, обмена файлами и других.