Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
Анализ напряженного состояния металла в точке деформируемого тела ⇐ ПредыдущаяСтр 3 из 3
Расчет главных напряжений и направляющих косинусов Для главных осей тензора напряжений
Рассмотрим применение численных методов решения нелинейных уравнений для расчета главных напряжений и направляющих косинусов для главных площадок. Главными площадками называют площадки, на которых отсутствуют касательные напряжения, то есть на этих площадках действуют только нормальные напряжения. Главными осями тензора напряжений называют нормали к главным площадкам. Главными напряжениями называют нормальное напряжение на главных площадках [1, 12]. Напряжённое состояние в окрестности точки М деформируемого тела характеризуется тензором напряжений . (2.29) Напряжения действуют на координатных площадках xoy, xoz и yoz (рис. 2.8). Главные оси тензора обозначают 1, 2, 3. Угол между этими осями составляет 90˚ и система координат, связанная с главными осями, повернута в пространстве относительно прямоугольной системы координат xyz (рис. 2.8). Рис. 2.8. Прямоугольная система координат x y z и главные оси тензора напряжений 1, 2, 3
Необходимо по заданному тензору напряжений найти главные площадки, положение которых определяют направляющие косинусы , , . Это косинусы углов, образованных главными осями 1, 2, 3 и осями координат x, y, z. Необходимо также определить главные напряжения . Значения можно определить из решения кубического уравнения , (2.30) где ; (2.31) (2.32) . (2.33) Уравнение (2.30) называют характеристическим многочленом. Уравнение имеет три действительных корня, которые являются главными нормальными напряжениями. Будем их обозначать , , . Индексы назначают по правилу: . Главных напряжений оказалось три. Они действуют на трех главных взаимно ортогональных площадках. Их положение определяется косинусами углов, образованных нормалями к площадкам (главными осями 1, 2, 3) и осями координат x, y, z (рис. 2.8). Для определения направляющих косинусов для первой площадки необходимо в систему уравнений (2.34) подставить вместо значение . Подставив , определим . Подставив , определим . При решении системы (2.34) следует использовать два уравнения из первых трёх и четвёртое уравнение. Одно из трех первых уравнений в (2.34), неиспользуемое в расчетах, можно применить для проверки решения системы. После расчета главных нормальных напряжений инварианты тензора напряжений можно записать так: (2.35) (2.36) . (2.37) Инварианты – это параметры, которые не изменяются с поворотом системы координат. Тензор напряжений в главных осях 1, 2, 3: . (2.38) Программа численного расчета главных напряжений И направляющих косинусов Заданы компоненты тензора напряжений (МПа): = 7, = 8, = -9, = 12, = -12, = 3. Необходимо рассчитать главные напряжения , , и направляющие косинусы , , для главных осей тензора. Сначала рассчитаем инварианты по формулам (2.31) … (2.33), сформируем кубическое уравнение (2.30) и в результате его решения получим значения главных напряжений , , . Каждый корень уравнения (2.30) будем определять численно методом хорд. Для вычисления направляющих косинусов из системы (2.34) используем первые два уравнения и четвертое уравнение. Систему из полученных таким образом трех нелинейных уравнений будем решать численно методом Ньютона. При этом вместо необходимо последовательно подставить , и . Алгоритм численного решения системы из трех уравнений методом Ньютона аналогичен алгоритму для системы из двух уравнений, описанному в п. 2.2.2 и 2.2.3. Отличие в том, что для определения трех неизвестных x, y и z необходимо сформировать четвертый определитель . Все определители ( , , , ) имеют размерность 3х3. Вычисление главных напряжений и направляющих косинусов реализовано в программе, написанной в среде программирования VBA (Visual Basic for Applications). На рис. 2.9 приведен лист Excel с исходными данными и результатами расчетов. На рис. 2.10 представлен код программы. Программа
Рис. 2.9. Лист Excel с исходными данными и результатами расчетов
состоит из трех процедур (подпрограмм): «Кнопка1_Щелчок», «METOD_HORD», «TRI_UR_NUTON» и функции «FUN». Процедура «Кнопка1_Щелчок» является главной. Она осуществляет запуск всей программы при щелчке на кнопку «Решить» на листе Excel, ввод исходных данных с листа Excel в редактор Visual Basic, вычисление инвариантов , организацию цикла для просмотра большого интервала с границами и с шагом, равным единице. При просмотре этого интервала выделяют три отрезка , на каждом из которых имеется один корень кубического уравнения (2.30). Для вычисления значений функции, входящей в уравнение (2.30) используется процедура-функция «FUN». Процедура «Кнопка1_Щелчок» организует циклы для вызова вспомогательных процедур «METOD_HORD» и «TRI_UR_NUTON». Каждая из
Рис. 2.10. Код программы для расчета главных напряжений и направляющих косинусов
Рис. 2.10 (продолжение). Код программы для расчета главных напряжений и направляющих косинусов
Рис. 2.10 (окончание). Код программы для расчета главных напряжений и направляющих косинусов
этих процедур вызывается трижды. Все циклы организованы с использованием оператора . В процедуре «Кнопка1_Щелчок» выполняется также вывод результатов расчета в ячейки листа Excel. Процедура «METOD_HORD» выполняет последовательное вычисление трех корней кубического уравнения методом хорд. За каждое обращение к процедуре вычисляется один корень. При отладке программы проверка правильности вычисления корней производилась путем подстановки найденных значений в исходное уравнение (2.30). После расчета всех трех корней (главных напряжений , и ) проверку решения можно также выполнить путем сравнения результатов расчета инварианта по формулам (2.31) и (2.35). Процедура «TRI_UR_NUTON» выполняет последовательное вычисление направляющих косинусов, определяющих положение главных осей 1, 2, 3 тензора напряжений. Оси являются нормалями к главным площадкам. За каждое из трех обращений к процедуре вычисляются три направляющих косинуса путем решения системы из трех нелинейных уравнений методом Ньютона. Из системы (2.34) используются два первых и четвертое уравнение. Третье уравнение использовали для проверки правильности решения. Для обозначения переменных в программе по возможности применяли те же символы, что и при обозначении величин, приведенных в описании численных методов и формулах для расчета напряжений. Приведем краткое описание основных операторов VBA, использованных в программе. Option Explicit – инструкция, указывающая на то, что все переменные в программе должны быть описаны явно, т.е. явно должен быть указан тип переменных. Sub Кнопка1_Щелчок ()... End Sub – начало и конец процедуры под именем Кнопка1_Щелчок ( Sub – процедура, End – оператор). В данном примере Кнопка1_Щелчок является главной процедурой. По отношению к ней процедуры METOD_HORD и TRI _ UR _ NUTON являются подпрограммами. Dim – инструкция, указывающая на описание типа переменной: As Double – число с дробной частью (с плавающей точкой); As Integer – целое число. Переменные I 1, I 2 и другие, тип которых описан перед всеми процедурами и функциями, являются глобальными переменными для данного модуля. Они доступны во всех процедурах. sg (3) – одномерный массив, состоящий из четырех элементов (по умолчанию нумерация элементовначинается с нуля). Worksheets (“Лист1”). Select – рабочий лист Excel по имени Лист1 сделать активным (Worksheet – объект приложения Excel, Select – метод объекта Worksheet). sxx = Cells (2, 3) – значение переменной sxx считывается с активного рабочего листа из ячейки, расположенной во 2-й строке и в 3-ем столбце (Cells – свойство объекта Range (ячейка)); возможно также использование эквивалентной записи sxx = Range (“С2”). For shag = A_lev + 1 To B_prav … Next shag – организация цикла с помощью операторов Fo r … Next (переменная shag изменяется с шагом, равным единице, от значения A_lev + 1 до B_prav). f_x_predv(i) = FUN(shag) – i-му элементу массива присваивается значение, вычисляемое процедурой-функцией FUN (в скобках указано значение переменной, которое передается в процедуру). If… Then… End If – условныйоператор, используемый для изменения хода программы в зависимости от результатов проверки условия. METOD_HORD a(i), b(i), x(i), eps1, kol_it(i) – вызов процедуры METOD_HORD (после имени процедуры указаны имена массивов и переменных, значения которых передаются в процедуру). Cells(i + 3, 6) = x(i) – запись значения i-го элемента массива x в ячейку рабочего листа Excel. Range(" J4: J6" ).Sort key1: =Range(" J4" ), order1: =xlDescending - применение метода Sort объекта Range для сортировки данных по убыванию. Function FUN(x As Double) As Double – процедура-функция под именем FUN (переменная х передает в функцию числовое значение; описание As Double в правой части определяет тип данных, который возвращает функция; Function – процедура). Sub METOD _ HORD ( a As Double, b As Double, x As Double, eps As Double, kol _ it As Integer ) - процедура под именем METOD _ HORD (в скобках указаны имена переменных и их тип данных; количество и тип переменных должны соответствовать записи в операторе, который вызывает эту процедуру в головной программе). Metka_1: - имя метки, на которую должно быть передано управление. GoTo Metka_1 - передача управления на метку с именем Metka_1 (GoTo – оператор безусловного перехода). |
Последнее изменение этой страницы: 2019-10-04; Просмотров: 151; Нарушение авторского права страницы