LEC-27 (1014371), страница 4
Текст из файла (страница 4)
рассмотрим элементарную конструкцию, состоящую из двух прямоугольных пластин, работающих каждая в своей плоскости и двух жестко скрепленных стержней 1-3 и 2-5, работающих на растяжение-сжатие и изгиб в вертикальной плоскости. Узел 3 жестко заделан.
При заданной нумерации узлов и обобщенных координат матрица типов узлов будет иметь вид:
Из рассмотрения, например, пятой строки матрицы Т следует, что в пятом узле конструкции присутствуют линейные перемещения в направлении осей x, y, z и угловое перемещение вокруг оси , соответствующее углу .
Запись булевых матриц в ЗУ ЭВМ может выполняться с использованием процедуры приведения массива к линейной последовательности элементов, которая применялась для записи вещественных матриц. Как правило, алгоритмические языки высокого уровня включают в себя такие процедуры для многомерных булевых матриц и позволяют непосредственно обращаться к их элементам по индексам. Следует отметить, что эти универсальные процедуры часто бывают неэффективными. Для записи элемента булевой матрицы достаточно одного бита памяти, в то же время для этой цели выделяется иногда целое машинное слово. Так, транслятор с языка FORTRAN для некоторых ЭВМ предусматривает хранение логической переменной или элемента массива логического типа в нулевом разряде 37 разрядного машинного слова, остальные разряды не затрагиваются. Таким образом, в данном случае полезно используется менее 3% объема памяти. При относительно малом удельном весе данных логического типа в общем объеме данных задачи примитивность такой организации может быть оправдана упрощением рабочей программы и увеличением скорости ее действия. При расчетах по МСЭ в рассмотрение вводятся булевы матрицы, содержащие тысячи и десятки тысяч элементов, поэтому следует очень внимательно относиться к выбору способа их хранения. Представляется целесообразной запись булевой матрицы в виде сплошной строки битов. При этом нужно помнить, что в большинстве серийных ЭВМ отсутствует аппаратура для извлечения отдельных битов информации, поэтому необходимо создание соответствующих программных средств. В некоторых алгоритмических языках, таких как PL/1, эти средства имеются. Они предусматривают:
а) настройку процедуры по размерности конкретной матрицы;
б) расчет по значениям индексов элемента матрицы адреса машинного слова, содержащего элемент, и номера бита в слове;
в) обращение (запись, чтение, выполнение логической операции) к элементу.