ВУЗ:
Составители:
107
цифр мантиссы обычной точности, как правило, семь, а двойной – один-
надцать.
Двойную точность желательно использовать только при решении сис-
темы уравнений равновесия. Но в этом случае увеличиваются используе-
мый объем оперативной памяти и время решения.
В пакете прикладных программ на Фортране [7], выполняющих опе-
рации над матрицами, имеется подпрограмма CONVT, предназначенная
для преобразования элементов матрицы из обычной точности в двойную
или из двойной точности в обычную. В этой подпрограмме одна матрица
содержит элементы в форме чисел обычной точности, а другая – в форме
чисел двойной точности, что крайне нерационально для оперативной па-
мяти ЭВМ: рабочий массив оперативной памяти для решения системы
уравнений увеличивается в три раза.
Предлагается более эффективный алгоритм преобразования коэффи-
циентов системы уравнений из обычной точности в двойную, при котором
обе матрицы коэффициентов с обычной и двойной точностью совпадают.
Преобразование выполняется с использованием внешней памяти ЭВМ и
заключается в следующем.
Пусть матрица коэффициентов системы линейных уравнений сфор-
мирована с обычной точностью (каждому элементу матрицы отведено
4 байта) и записана во внешнюю память в файл прямого доступа NF по
уравнениям узлов, т. е. число записей равно KNY – числу узлов расчётной
схемы конструкции, а длина одной записи равна NS·LENTA. Преобразова-
ние матрицы коэффициентов системы уравнений из обычной точности в
двойную выполняет подпрограмма DFORM, в которой каждая запись во
внешней памяти длиной NS·LENTA преобразуется в две записи, каждая из
которых тоже длиной NS·LENTA, но каждому элементу матрицы отводит-
ся по 8 байт.
Процесс преобразования в подпрограмме DFORM выполняется сле-
дующим образом.
В цикле 1 четные элементы массива FMG (обычной точности) зану-
ляются. В цикле 2 (по числу узлов в конструкции KNY, т. е. по числу запи-
Страницы
- « первая
- ‹ предыдущая
- …
- 105
- 106
- 107
- 108
- 109
- …
- следующая ›
- последняя »