38
мирование» Математической палитры. В частности, нами были задей-
ствованы операторы циклов while и for, а также условный оператор if
(назначение операторов очевидно, так как они полностью соответст-
вуют аналогичным операторам из других распространенных языков
программирования). Программные операторы, функции и выражения
объединены в программный модуль с помощью оператора Add Line.
Расширение области подпрограммы фиксируется удлинением верти-
кальной черты программных блоков или их древовидным расширени-
ем, т.е. в принципе можно создавать сколь угодно большие програм-
мы. Присваивание внутри программного модуля осуществляется опе-
ратором локального действия (Shift+[).
2.3. Алгоритм определения множества особых разрываемых
технологических потоков
После идентификации контуров составляют матрицу контуров
ППГ (К), число строк которой равно числу контуров, число столбцов
равно числу дуг, а элементы равны:
случае. противном в 0
контур; й- в входит дуга я- если 1, ij
k
ij
(7)
Очевидно, что число единиц в столбце матрицы равно числу
контуров, в которые входит соответствующая дуга. Число контуров, в
которые входит дуга, называется контурной степенью дуги. Если па-
раметричности всех дуг одинаковы, то предпочтительной для разрыва
является дуга с наибольшей контурной степенью. Если несколько дуг
имеют одинаковую контурную степень, то вопрос о целесообразности
разрыва той или иной дуги решается исходя из технологических сооб-
ражений (например, при наличии информации о приближенных зна-
чениях параметров какого-нибудь потока этот поток разрывать пред-
почтительнее).
При разрыве определенного потока размыкается контур, в кото-
рый этот поток входил, поэтому соответствующие строка и столбец
матрицы контуров исключаются из рассмотрения, а контурные степе-
ни оставшихся дуг пересчитываются. Процесс продолжается до тех
пор, пока в матрице не останутся лишь дуги с нулевыми контурными
степенями.
Пример определения оптимального множества разрываемых дуг
представлен ниже.