2. Новиков Ф.А. Дискретная математика для программистов – СПб: Питер, 2000. – 304 с.: ил.
3. Яхо, Альфред, В., Хопкрофт Джон Э., Ульман, Джеффи Д.. // Структуры данных и алгоритмы.: Пер. с англ.: Уч. пособие – М: Издательство дом «Вильямс», 2000-384 с.: ил. – Парал. тит. англ.
4. Романовский И.В. Дискретный анализ. Учебное пособие для студентов, специализирующихся по прикладной математике и информатике. – Издание 2-е, исправленное. – СПб.: Невский диалект, 2000 г. – 240 с., ил.
5. Горбатов В.А. Основы дискретной математики: Учеб. Пособие для вузов. - М.: Высш. шк., 1986. - 312 с.
6. Нефедов В.Н., Осипова В.А. Курс дискретной математики. - М.: Изд-во МАИ, 1992. - 264 с.
7. Лекции по теории графов / Под ред. В.А. Емеличева., О.Н. Мельникова, В.И. Сарванова, Р.И. Тышкевич. - М.: Наука, Гл. ред. физ.-мат. лит., 1990. - 384 с.
8. Зыков А.А. Основы теории графов. - М.: Наука, 1987. - 381 с.
9. Белов В.В., Воробьев Е.М., Шаталов В.Е. Теория графов. Учеб. Пособие для вузов. - М.: Высш. шк., 1976. - 392 с.
10. Кристофиедес Н. Теория графов. Алгоритмический подход. - М.: Мир, 1978. - 432 с.
11. Татт У. Теория графов. - М.: Мир, 1988. - 308 с.
12. Оре О. Теория графов. - М.: Наука, 1980. - 336 с.
13. Евстигнеев В.А. Применение теории графов в программировании. - М.: Наука, 1985. - 352 с.
14. Гаврилов Г.П., Сапоженко А.А. Сборник задач по дискретной математике. - М.: Мир, 1982. - 416 с.
ПРИЛОЖЕНИЕ
Инструкция по использованию динамически подключаемой библиотеки
Функциональные возможности математической системы MathCAD могут быть существенно расширены за счёт использования динамически подключаемых библиотек (dll). Такие библиотеки могут быть легко разработаны с использованием языков высокого уровня (например С++). После получения файла соответствующей динамически подключаемой библиотеки необходимо скопировать этот файл в директорию USEREFI Mathad’a. Кроме того, необходимо изменить файл user.xml, который находится в директории …\doc\funcdoc\.
В этом файле регистрируются все пользовательские функции. В этот файл необходимо добавить следующий код:
<function>
<name>
multiply ----- здесь указываем имя функции для вызова в MathCAD-е
</name>
<params>
a, M -------указываем список аргументов функции
</params>
<category>
User defined---- Указываем категорию к которой можно отнести пользовательскую функцию
</category>
<description>
Returns the product of real scalar a and real array M ------ Описание функции для диалогового окна “Вставка функции”
</description>
</function>
Для использования dll в MathCAD из диалогового окна “Insert Function” необходимо вызвать функцию.
Для примера возьмём задачу перемножения двух матриц (Рис. 10,11).
Рис. 10. Вставка функции
Рис. 11. Сравнение результатов
Список функций dll
Эти действия реализованы на языке С++ и храняться в динамической библиотеке, подключаемой к математическому пакету MatchCad
Имя функции | Описание |
GCreate | Генерация графа случайным образом |
EccentList | Вычисление эксцентриситетов всех вершин графа |
GDiametr | Находит диаметр графа M |
GRadius | Находит радиус графа M |
CentralList | Находит центральные вершины графа M |
PeriphList | Находит периферийные вершины графа M |
GraphComplement | Дополнение графа |
DeleteVertex | Удаляет n-ую вершину графа M |
GCreateOr | Генерация ориентированного графа случайным образом |
GTranslate | Перевод матрицы смежности в матрицу инциденций |
X | Визуализация неориентированного графа по оси Х |
Y | Визуализация неориентированного графа по оси У |
X_Or | Визуализация ориентированного графа по Х без стрелок |
Y_Or | Визуализация ориентированного графа по У без стрелок |
StX_Or | Визуализация стрелок ориентированного графа по оси Х |
StY_Or | Визуализация стрелок ориентированного графа по оси У |
Пример использования некоторых функций
Таблица 2
Размерность матрицы | |
Генерация | |
Результат | |
Список эксцентриситетов вершин | |
Вычисление диаметра | |
Вычисление радиуса | |
Вычисление вектора, содержащего центральные вершины | |
Визуализация неориентированного графа. | |
Вычисление вектора содержащего переферийные вершины |
СОДЕРЖАНИЕ
Введение……………………………………………..………………………… 3
Лабораторная работа №1. Матричные представления и характеристики графов………………………………………………...………………………... 4
Лабораторная работа №2. Унарные и бинарные операции над графами…. 7
Лабораторная работа №3. Анализ свойств сетей Петри…..………….….... 11
Лабораторная работа №4. Вершинная и реберная независимости……..… 15
Лабораторная работа №5. Вершинная и реберная связность графов….…. 18
Лабораторная работа №6. Вершинная устойчивость и покрытия в графах…………………………………………………………………….…... 21
Лабораторная работа №7. Цепи и циклы в графах………...………...….… 23
Литература…………………………………………………………………… 27
Приложение………………………………………………………………….. 28
Анализ графов на ЭВМ