Сегерлинд Л. Дж. - Применение метода конечных элементов (1051193), страница 46
Текст из файла (страница 46)
Подпрограммы для ленточной матрицы Матрица коэффициентов [~Ц в уравнении [К)(Ф) = (Р) яв. ляется ленточной матрицей, и эффективные программы хранят ее в машинной памяти в виде прямоугольного массива вместо квадратного. Такой способ запоминания [К) приводит к необходимости составления ряда подпрограмм, которые выполняют умножение матрицы [К1 на другие матрицы, модифицирование, разложение матрицы и решают соответствующую систему уравнений.
Набор подпрограмм, которые выполняют указанные операции, представлен н обсуждается в этом разделе. Все эти подпрограммы используются с программами, данными в равд. 18.4 — 18.8. 18.2.1. В11УЪ'А1. Подпрограмма ВРУЪ'А1. считывает заданные значения компонент (Р) и (Ф) и модифицирует [К], используя процедуру вычеркивания соответствующих строк и столбцов, обсужденную в гл. 7. Ввод заданных значений следует формату из шести целых чисел, двух интервалов и шести чисел с плавающей запятой (613, 2Х, бР10.4).
Шесть чисел с плавающей запятой соответствуют по порядку шести целым числам, которые представляют собой заданные глобальные степени свободы. Считывание данных в этом формате повторяется до тех пор, пока не встретится нулевое или отрицательное значение глобальной степени свободы. Варианты входных данных показаны в примерах, связанных с конкретными областями применения. 18.2.2. ВСМРВ11 и 81Л'ВВ Подпрограмма ВСМРВ12 преобразует ленточную матрицу [К),' в верхнюю треугольную матрицу, используя процедуру гауссовского метода исключения, обсужденную в гл.
7. Подпрограмма БЕЧВР связана со вторым этапом решения системы уравнений; она используется совместно с подпрограммой РСМРВР для получения решения системы [К)(Ф)=(г). Подпрограмма 81.ЧВ0 прежде всего разлагает вектор (Р), а затем вычисляет методом обратной прогонки значения компонент вектора (Ф). Кроме того, подпрограмма 81ЧВР осуществляет вывод искомых величин на печать.
Значения компонент вектора (Ф), соответствующие каждому варианту нагрузки, выводятся иа печать, если целочисленная переменная 1Р равна нулю. 18.2.3. М1Л.ТВР Подпрограмма М1Л.ТВР выполняет умножение ленточной матрицы [К) на прямоугольный массив [Р). В обозначениях переменных, используемых в данной программе, это произведение за- Глава та 18.3.
Обозначения В почти парам ных и А ммах, приведенных в равд. 18.4 — 18.8, используются чные обозначения для описания основных переменных Ниже даны некоторые из наиболее общих переменращенные обозначения. Вектор-столбец, содержащий матрицы (Ф), (Р) и [К] из уравнения [К](Ф) =(Р) Номера узлов элемента Степени свободы элемента (используются только в БТКЕЬБ) Матрица жесткости (теплопроводности) элемента Вектор нагрузки для элемента Узловые значения для отдельного элемента Описательное утверждение, характеризующее решаемую задачу. Это утверждение печатается на каждой странице выдачи Номер входного устройства; используется в операторах КВАТ ( ) Номер выходного устройства; используется в операторах %рс1ТЕ ( ) Номер перфорационного устройства; используется в операторах %ц1ТЕ ( ), если производится перфорация карт Число глобальных степеней свободы для задачи в целом Общее число элементов Ширина полосы матрицы системы уравнений Номер отдельного элемента Номер варианта нагружения х-координаты узлов элемента (узлы обходятся против часовой стрелки) у-координаты узлов элемента (узлы обходятся против часовой стрелки) Коэффициенты, которые встречаются при вычислении матриц элемента Учетверенная площадь элемента Удвоенная площадь элемента Величина, значение которой определяет адрес последней ячейки памяти, отводимой для (Ф) в одномерном массиве А програ иденти етрон.
их сок ЕЗМ ЕР РН1 Т1ТЕЕ 10 ИЕ НВ% НЕ1. ИС1. Х1, Х2, ХЗ Х (1), Х(2), Х (3) У1, У2, УЗ У(1), У(2), У(3) ВиС АК4 Ац2 ЖР писывается в виде [цР]'= [68М] [ОР]. Подпрограмма М(Л.ТВО необходима для решения нестационарных задач. 357 Учебные программы Величина, значение которой определяет адрес последней ячейки памяти для (Р) в одномерном массиве А Величина, значение которой определяет адрес последней ячейки памяти, отводимой для [К~ в одномерном массиве А .?ЕХ?1 18.4. Программа Т01хо10Х Программа ТОКЫО?4 вычисляет сдвиговые напряжения в уп.
ругом стержне некругового сечения. Теоретической основой программы служит материал, изложенный в равд. 6.1. При составлении программы использовались положения, обсужденные в гл. 7. Входные данные представлены титульной картой, картой с параметрами программы, исходными данными элементов, значениями узловых сил и граничными значениями искомой величины, считываемыми подпрограммой ВьгУЧА?., а также дополнительным комплектом исходных данных элементов.
Титульная карта.считывается в 18-й строке, а карта параметров программы — в 20-й строке. Переменные ИР, ХЕ, ?4В% и 1РСН были определены выше в списке обозначений. Другие переменные, содержащиеся в карте параметров, следующие: О Модуль сдвига, Н/сма Б?. Длина стержня, см ТОЩ??Е Прикладываемый крутящий момент, Н.см РСТ Удвоенное число осей симметрии. РСТ равно 1.0, если осей симметрии не существует Исходные данные элемента считываются в строке 46. Формат этих данных совпадает с форматом данных, перфорируемых программой ОК?О. Подпрограмма ВОУЧА1, обращение к которой происходит в строке 82, также имеет операторы ввода данных.
Эти операторы обсуждаются в равд. 18.2. Исходные данные элемента, необходимые для вычисления сдвиговых напряжений, очи. тываются в строке 92. Эти данные для элементов должны быть точной копией данных, используемых при составлении глобальной матрицы жесткости. Величины, указывающие где именно внутри одномерного мас. сива А хранятся узловые значения искомой величины, узловые силы и глобальная матрица жесткости, находятся в строках 26, 27 и 28. Эти величины были определены в списке обозначений.
Входные данные для варианта задачи о кручении, показанного на фиг. 18.9, представлены полностью, за исключением исходных данных элементов, в табл. 18.2. Карта узловых сил, которая считывается при обращении к программе ВОЛА?„состоит только из одного числа — 1, так как узловые силы отсутствуют в задаче \С о о Х и ь й и 4 а~ о а о о а о о о о о ~О Ф Ю о о О ю о о о О Ю й а Ю о о с» о О о о о а о Ю Ю о а о Э о Ю СЭ о о Ю Ъ о о о о 15 20 »О 50 ЬО то 75 во Рйосйан 1005!Ои<!Иго!,Во!Рот.анмсн,тайеаа=!мнит,тайеаа*оотгот,тайе 162 Ринси> 01НЕИ$10И И5(3> Е5Н(вч31 ЕГ<3> В(3> С<31,РН1<3> Отнеивтвн А<гввв> сонном/11$/т!<11(гв» АЕАС ИОНЕМТ оата !и/60/,!о/61/,<Р/62/,исс/1/,!01/1/,ке/в/.номен!/0.0/,!донах/в 5.0/ с оег!м!т!Ом ог тме сом!нос Райанетей5 с ий - ионвей ог саоваа отвйсасенеи<5 ° ие - ионвей ог с еаенеи<5 с - 5неай н000105 ° тойоое АРРА!$0 тойоое с 51 - Вмагт Ченстм.
Рот - тм!се тне нонвей ог Ахев ог' с 5тннетач Рот = 1.0 мней ио !тине!От ехтвт5 с 1РСН - СОНТХ01 ГОХ РОИСН<ис 5ТХЕ55Е5 с тмгот ог тме ттт<е садо ямо тне Раханетей сайо ХЕЯО(ти 3>Т!ТСЕ 3 Гоамат(года> йеао<ти 1> мй.ме,ивн.<йсн.с.51,<оаоне.гст > Гойнат<й<3.67(а.а> С!=С'(3.19!57/150,>/5С с с са<сосат<ам ог Ратмтейв амо !и!т!АА<гаттои ог тме сосцмм честой а ЗСГ=НР ИСА зс5н=зсГ г ЗЕИО ЗСВН>ИР ИВМ 00131*1 ° ЗЕМО 13 А(!>*0.0 с с очтйит ог т!(11 аио вата не!отис! с мй1<е<!О 26> т1<<е 6,5<,тойсое гч гойндт<>й(//////!х' гада//<х.!ВН5неай ноао105 Г»г. 1/!Х.(тм<емстн о (Г 5магт =Гт.г/>х.»йнааастео тоеоое *Ге.»//»х.(гмесеиеит оята//(х.
279НИЕА ИООЕ ИОЙВЕй5 Х(1> Г<1> Х<2> Ч(2» 3 х(3> т<з> с ° ° ° ° ° ° ° ° ° с Я55емвачтнс ог тне с<ова< 5ттггн155 Мати!К дио ссоВАА Гойсе ната!х с. ° ° . ° ° ° ° ° <ийот дио есно Рйтмт ог е<енеит одтд ОО 7 КК-"1,ИЕ йеяо <!и.»> иес.нт. К»,т», хг, тг, к».чз ма<те<то.гз> ме<.й5,х».ч»,хг.чг,ч»,ч» г> Гоамат<>х,<т,гч.»!Я,тх,'6<гхга.а» од<со<я<том ог тне 1<енеит 5<>ГГИ155 натйтх дио е<енеит Ройсе мдтй<х в<» =тг-чз В(г>=тт-т! 5<!> =ч<-тг с<(>=х»-хг с<г>.х>-х» с<3> хг-х( айч (хг чтчх»'ч>>х> ° чг-хг т<-ч> чг-х< 93> ° г.