ВУЗ:
Составители:
Полезно визуально соотнести позиции элементов в таблице со связанной графикой
(например, элемент в верхнем правом углу таблицы соответствует верхнему правому
квадрату в Raster Array). Это можно сделать с помощью команды RasterArray, в
качестве аргумента которой можно взять Reverse [r], или r.
Show[Graphics[RasterArray[Reverse[r]/.
{1→RGBColor[1,0,0],0→RGBColor[0,1,0]}]],AspectRatio→1]
Мы можем также идентифицировать кластеры в цифровой форме, где каждый занятая
ячейка решетки имеет значение целого числа, указывая, какой группе она принадлежит.
Например, вручную при маркировке групп в r. Но для ячеек больших размеров работа
вручную слишком утомительна
Кстати, для кластеров, которые уже определены с помощью цифровых маркеров,
появляется возможность определения пространственных характеристик, таких как,
например, фрактальной размерности как функции от
p; значения p, при котором возникает
соединяющий кластер и ряда других характеристик. Напишем фрагменты программы,
реализующую маркировку кластеров. Мы будем использовать метод Хошена - Копельмана,
который позволяет просмотреть решетку
r в один прием.
Этот алгоритм использует цикл Do. Поскольку Do используется для организации циклов в
большинстве процедурных языках программирования, целесообразно использовать его и в
Mathematica. Однако Do работает медленнее по сравнению с другими командами
Mathematica, позволяющими организовать цикл: Map, Fold, Nest.
▪ Алгоритм Хошена – Копельмана. Маркировка кластеров
Мы будем маркировать вложенный список r, состоящий из m строк, содержащих m
элементов, которые являются нулями или единицами.
1. Список u создается с помощью добавления строки и столбца из нулей к таблице r.
2. Список ul создается такого же размера, что и u, но все элементы этого списка являются
нулями.
3. Создается пустой список ulp.
90
Страницы
- « первая
- ‹ предыдущая
- …
- 88
- 89
- 90
- 91
- 92
- …
- следующая ›
- последняя »