Главная страница сайта  Российские промышленные издания (узловые агрегаты) 

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 [ 76 ] 77 78 79 80 81 82 83 84 85 86 87 88

С С С

С С С

С С С С

DO 400 NPR = l.NPROB REWIND NT4

Считывание исходных данных по геометрии и свойствам материалов

CALL GDATA NSZF = NP.NDF DO 200L1 = l.NLD

Считывание нагрузки

CALL LOAD 23

Формирование и решение системы алгебраических уравнений

С С С

CALL FORMK CALL SOLVE

Вычисление напряжений

CALL STRESS 200 CONTINUE 400 CONTINUE 1 FORMAT(915) STOP END

32 33 33 36 37

20.3. Ввод исходных данных

Для работы программы, реализующей метод конечных элементов, дополнительно требуются четыре основные системы исходных данных:

а) координаты и характеристики элементов;

б) свойства материала каждого элемента;

в) граничные условия;

г) нагрузки.

Подпрограммы ввода исходных данных могут иметь различную структуру, но в любом случае их основное назначение состоит в формировании массива исходных данных указанных четырех систем, характеризующих задачу. Для работы управляющей программы необходим полный набор исходных данных.

20.3.1. Координаты и характеристики элементов

Используемые координаты - это координаты всех узловых точек (например, координаты х, и j/j узла i в задаче о плоском напряженном состоянии), расположенные в определенном порядке. В большинстве случаев матрицы жесткости ие зависят- от положения начала координат, которое обычно выбирается произвольно.

Блок-схема програ.чмы МАШ

Начало

очитывание итрориации о ноличестВе решаемых . oadaif

Начало цикла по аадачам

Выаов подпрограммы ввода исходных данных

Начало цикла по нагруакам

Выгод поЗпрограммы ввода наеруэни

Вызов подпрограммы (рорма-рования матрицы жесткости

Выаов подпрограммы решения системы /равнений

Вывод подпрограммы напряжений

Конец цикла по нагруонам

Конец цикла по аадачам

Останов

14 19 21 22



К характеристикам элементов относятся информация о связи между элементами, содержащая номера всех узлов элемента, а также число, характеризующее свойства материала элемента. Эти характеристики также перечислены последовательно.

20.3.2. Свойства материала

В большинстве приложений свойства материала одинаковы для больших групп элементов. Поэтому удобно присвоить каждому элементу номер, определяющий материал элемента, и ин-фо()мацию о свойствах материала считывать отдельно.

20.3.3. Нагрузки

Для обеспечения максимальной простоты и гибкости программы нагрузки можно задавать в виде одного вектора, который затем непосредственно используется в программе. Во многих случаях, когда число точек, в которых задана нагрузка, составляет лишь небольшой процент от общего числа узлов системы, бывает предпочтительнее считывать только ненулевые значения нагрузки и номера соответствующих узлов. Вектор нагрузки должен быть, конечно, задан нулевым, чтобы его компоненты, соответствующие ненагруженным узлам, были нулевыми.

Однако в тех случаях, когда рассматриваются объемные силы, для формирования вектора нагрузки в зависимости от геометрии системы и свойств материала необходимо иметь специальную подпрограмму. Подпрограммы формирования вектора нагрузки можно также использовать для вычисления значений узловых сил при действии распределенной нагрузки. В результате работы таких подпрограмм получаются векторы нагрузки, идентичные по форме обычным векторам, считываемым с перфокарт.

20.3.4. Граничные условия

Граничные условия могут быть учтены либо при построении элементов, либо путем соответствующего изменения системы алгебраических уравнений непосредственно перед ее решением. Последний подход удобен для элементов простой формы, но становится сложным при использовании элементов высоких порядков или при необычных граничных условиях, как, например, при ограничениях, накладываемых в некотором произвольном направлении. В приведенной в этом разделе подпрограмме граничное условие для узла считывается в виде комбинации цифр О и 1, причем О означает отсутствие ограничений на данную степень свободы, а 1 - наличие ограничений. Таким образом,

01 означает свободу в направлении x и отсутствие перемещений в направлении У;

10 означает отсутствие перемещения в направлении x и свободу в направлении У;

И означает отсутствие перемещений в обоих направлениях.

Примеры подпрограмм. Ниже помещены тексты двух подпрограмм. Подпрограмма GDATA считывает основные исходные данные о геометрии, а подпрограмма LOAD считывает векторы нагрузки. Ни одна из них не может самостоятельно вырабатывать исходные данные. Блок-схемы этих подпрограмм приведены на стр. 470 и 471.

Обозначения переменных в подпрограмме GDATA П Вывод на печать введенных исходных данных

Обозначения переменных в подпрограмме LOAD

R(3) * Массив для временного хранения значений на-

грузки в узле NQ

Программа 20-2 SUBROUTINE GDATA ]

C0MM0N/C0NTR/TITLE(12),NP,NE,NB,NDF,NCN,NLD,NMAT, NSZF,LI,NT4

COMMON CORD(I00,2),NOP(200,4),IMAT(200),ORT(25,2),NBC(25), NFIX(25)

1,R1(200),SK(200,40) 2,R(3)

С Считыванне н печать заголовка и контрольных данных

READ(5,7)TITLE ц

WRITE(6,100)TITLE 13

READ(5,1)NP,NE,NB,NLD,NDF,NMAT,I1 WRITE(6,1)NP,NE,NB,NLD,NDF,NMAT,I1

С Считывание и печать характеристик материала

READ(5,8) (N,(0RT(N,I),I =« 1,2),N = I,NMAT) WRITE(6,108) 17

.WRITE(6,8) (N,(0RT(N,I),I= 1,2),N=. 1,NMAT)

С 35

С Считывание информации об узлах

С 37

READ(5,2) (N,(CORD(N,M),M= 1,2),N= 1,NP)



Блок-схема программы GDATA

Блок-схема подпрограммы LOAD

Начало

Считывание и печать тнтрольныя! данных

Считывание и печать харантеристик матиала

Считывание ноординат узлов

Считывание информации о свяои между элементами и типе алвмента

Считывание граничных условий

Нужно ли печатать

исходные даш1ые ?

Печать ноординат узлов

Печать информации о сВяви между злементами

Печать граничных условий

Возврат в основную программу

С С С

С С С

Начало

Задание нулевого вектора нагрузки

Печать заголовка

Считывание инд)ормаиии о нагрузке с пердзонарты и печать

Засылка значений в.вектор нагрузки

Меньше ли номер узла махсималькр возможного ?

Возврат в основную программу

Считывание информации об элементе

READ(5,3) (N,(NOP(N,M).M=. 1,3),IMAT(N).N=. 1,NE)

Считывание граничных условий

READ(5,4) (NBC(r).NFrX(I).r=. 1,NB) ГР(П.1ЧЕ.О) GO TO 500

С С С

Печать введенных данных WRrTE(6,102)

WRITE(6.2) N.(CORD(N,M),M=. 1,2).N= 1,NP) WRITE(6,103)

WRITE(6,3) (N,(NOP(N,M).M=- l,3),IMAT(N),N=i l.NE) WRrTE(6,104)

WRITE(6,4) (NBC(r),NFIX(I),I=i l.NB)

40 42

52 53



0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 [ 76 ] 77 78 79 80 81 82 83 84 85 86 87 88