Cтраница 2
Директива THREADPRIVATE список имен соммом-блоков) определяет глобальную политику в отношении переменных, входящих в именованные comoN - блоки. Переменные этих COMMON-блоков, оставаясь глобальными в рамках одного подпроцесса, будут недостижимы из других подпроцессов. Директива THREADPRIVATE должна размещаться в области последовательного кода, вне блоков действия директив параллелизации. Так как параметрами этой директивы являются имена coMMON - блоков, она должна находиться в области их видимости. [16]
Позволяет тиражировать не полные COMMON-блоки, а только необходимые переменные из них. [17]
Областными объектами могут быть объявлены скаляры, массивы, сменные объекты. Областные скаляры оформляются как COMMON-блоки, длина которых равна количеству областей в задаче. Областные массивы допускают кроме пообластной нумерации элементов также и сквозную нумерацию по всем областям. Отметим, что уравнения состояний и пробеги оформляются как областные формальные подпрограммы. [18]
В этот пакет включены программы, связанные с вводом, выводом, преобразованием и обменом информации между носителями. Программа начального ввода данных осуществляет подготовку массивов и COMMON-блоков для последующей работы вычислительного пакета. [19]
Все важные переменные неизменяемой части программы объединены в COMMON-блоки, которые используются в различных подпрограммах CONDUCT. Во избежание повторов этих блоков в каждой подпрограмме все COMMON-блоки записаны в файл с именем COMMON, который подключается к соответствующим подпрограммам с помощью оператора INCLUDE. Синтаксис, использованный для INCLUDE в приведенном в конце книги листинге программы ( см. прил. [20]
Длина именованного COMMON-блока, описанного в нескольких подпрограммах, должна быть одинаковой во всех этих подпрограммах. В фортране - Дубна можно, например, описать именованный COMMON-блок в головной подпрограмме на максимальную длину, а в остальных подпрограммах указать меньшую или равную ей. [21]
Передача значений экспоненциальной части функции f в подпрограмму градиента осуществляется через неименованный COMMON-блок. [22]
Блок-схема программы решения линейной граничной задачи методом конечных разностей. [23] |
Подпрограмма PQR имеет формальные параметры: X - текущее значение аргумента х; Р, Q, R - коэффициенты уравнения. Значения параметра Р1 дифференциального уравнения Бесселя передаются в подпрограмму PQR через неименованный COMMON-блок. [24]
Интерполяционная таблица формируется подпрограммой TAB, в которую исходная матрица В и интервал поиска собственных значений ALC, AL9 передаются из основной программы с помощью неименованного COMMON-блока. Левая часть характеристического уравнения вычисляется с помощью подпрограммы-функции PN, в которую через COMMON-блок с именем XFAL передаются узлы и коэффициенты полинома Ньютона, найденные собственные значения, номер искомого корня и степень полинома. [25]
Заголовки перечисленных подпрограмм-функций фиксированы, список нч формальных параметров не меняется при различных случаях нагружения стержня. Для передачи данных, требуемых при описании особенностей нагружения стержня, в подпрограммах-функциях используются COMMON-блоки. [26]
Вспомогательные программы. [27] |
Вопросы управления модулями / Связь между отдельными модулями осуществляется через иерархическую структуру, в вершине которой находится. Основная программа обычно содержит следующие четыре элемента: 1) описание многомерных массивов и COMMON-блоков; 2) вызов модуля зада-лня начальных условий ( или чтения с ВЗУ контрольной точки); 3) вызов модуля, управляющего счетпой частью; 4) вызов модуля обработки ( записи на ВЗУ) результатов. При обработке результатов сделанного ранее расчета 3 - й элемент может отсутствовать. Основная программа может также содержать любые другие элементы, необходимые для расчета, анализа и обработки численных реализаций. [28]
В качестве базового языка программирования для счетных модулей ОК принят Фортран. Этот выбор ( помимо исторических причин - транслятор с Алгола в составе мониторной системы Дубна [4] появился позднее начала работ над ОК) в значительной мере обусловлен тем, что Фортран представляет удобный способ обмена информацией с помощью COMMON-блоков, которые используются как для внутренних потребностей счетных модулей, так и для обмена с программами сервисной системы. К тому же это в значительной мере обеспечивает независимость ОК от ЭВМ, так как трансляторы с Фортрана есть на всех универсальных ЭВМ. [29]
Автономный пакет прикладных подпрограмм построен как пакет, открытый для включения новых подпрограмм. Передача данных в пакете осуществляется в основном с помощью механизма формальных параметров. Аппарат COMMON-блоков используется для передачи данных, отражающих особенности конкретных условий нагружения стержня. [30]