II. Теоретические сведения.
I. Цель работы.
Решение плоской задачи теории упругости о напряженном состоянии в плоской пластине методом конечных разностей с применением ЭВМ.
II. Теоретические сведения.
В случае двумерных задач теории упругости, при отсутствии объемных сил и при заданных усилиях на границе, напряжения определяются функцией напряжения , которая удовлетворяет бигармоническому уравнению
(1)
и граничным условиям
, (2)
где – направляющие косинусы нормали к границе;
– компоненты поверхностных сил, отнесенных к единице площади в данной точке границы;
– нормальные напряжения;
– касательное напряжение.
Величины , выражаются через функцию напряжения по формулам
. (3)
Поэтому граничные условия (2) принимают вид
. (4)
Зная усилия, распределенные вдоль границы, можем с помощью интегрирования уравнений (4) найти функцию на границе.
Таким образом, задача о напряженном состоянии в плоской пластинке сводится к определению функции , которая удовлетворяет уравнению (1) в каждой точке внутри области, а на границе принимает вместе со своими первыми производными заданные значения.
Используя метод конечных разностей, запишем бигармоническое уравнение (1) для случая квадратной сетки с шагом в конечно-разностной форме.
Производные можно заменить по формулам
; ;
;
; ;
; .
Откуда
.
Аналогичным образом
и
.
Используя полученные формулы численного дифференцирования, преобразуем выражение (1) к виду
. (5)
Это уравнение должно удовлетворятся в каждой узловой точке сетки внутри пластинки.
Чтобы найти граничные значения функции , проинтегрируем уравнение (4).
Учитывая, что
;
где – элемент дуги границы, запишем уравнение (4) в следующей форме:
(6)
После интегрирования этих равенств получим
(7)
Теперь воспользуемся уравнением
,
которое после интегрирования по частям дает
. (8)
Подставляя в равенство (8) значения производных, определяемых формулами (6) и (7), можем найти граничные значения . Следует заметить, что при определении первых производных по формулам (7) появятся две постоянные интегрирования и , а интегрирование в равенстве (8) введет третью постоянную , в силу чего окончательное выражение для будет содержать линейную функцию . Поскольку компоненты напряжений представляются вторыми производными от функции , эта линейная функция не повлияет на распределение напряжений, и постоянные можно выбрать произвольно.
Отыскав приближенные значения в узловых точках границы (или вблизи границы) и выписав для остальных узловых точек, расположенных внутри области, уравнения в форме (5), получим систему линейных уравнений, достаточную для определения всех узловых значений функции . Затем для приближенного вычисления напряжений по формулам (3) можно использовать разностные отношения
(9)
Рассмотрим квадратную пластинку, нагруженную, как показано на рисунке.
В рассматриваемой задаче имеет место симметричное нагружение пластинки. Выбрав координатные оси согласно рисунку, определим граничные значения функции .
От до к границе пластинки не приложено усилий. Отсюда и =0, т.е.
.
Интегрирование этих уравнений дает
.
Здесь – постоянные вдоль оси и, как отмечалось ранее, их можно выбирать произвольно. Положим
.
Тогда функция вдоль ненагруженной части стороны пластинки обращается в нуль, что обеспечивает симметрию функции относительно оси у.
От и до на нижней стороне пластинки действует равномерно распределенная нагрузка интенсивностью , и уравнения (7) дают
Повторное интегрирование дает
.
Постоянные интегрирования определим из условия, что для точки ( ), общей для обеих частей границы, значения и , вычисленные слева и справа, должны совпадать. Отсюда
,
и получаем .
На участке нижней границы от до имеем
. (10)
В углу пластинки получаем
, .
Вдоль вертикальной стороны пластинки усилий не приложено, и, исходя из уравнений (7), заключаем, что вдоль этой стороны значения и должны быть такими, как и в нижнем левом углу, т.е.
, . (11)
Отсюда следует, что вдоль вертикальной стороны пластинки функция остается постоянной. Эта постоянная должна быть равна , как было найдено выше для нижнего угла.
Вдоль ненагруженной части верхней стороны пластинки первые производные от остаются постоянными и будут иметь те же значения (11), которые вычислены для верхнего угла. Таким образом, на ненагруженной верхней части пластины имеем
.
Поскольку в верхнем левом углу , приходим к выводу, что , и тогда
. (12)
Рассматривая теперь нагруженную часть верхней стороны пластинки, и учитывая, что для этой части ; , из уравнения (7) получаем
, .
При эти величины должны совпадать с величинами, определяемыми по формулам (11). Отсюда и
.
При функция должна принимать значение, равное полученному по формуле (12). Отсюда и
.
Таким образом, определили значения функции и ее первых производных на границе пластинки, так как для правой части границы все эти величины определяются по симметрии.
Так как рассматриваемая задача является осесимметричной относительно оси у, то достаточно рассмотреть лишь половину пластинки.
Покроем пластинку квадратной сеткой. Далее с помощью экстраполяции найдем значения для узловых точек, расположенных вне границы. Начиная вновь с нижней стороны пластинки и учитывая, что вдоль этой стороны обращается в нуль. Примем для внешних точек те же значения , что и для внутренних точек, смежных с границей. Вдоль вертикальной стороны пластинки имеем значение производной
и можем в качестве приближенных значений получить величины функции для точек вне пластины из формулы
,
которая дает
,
где - значения для внутренних точек, смежных с границей.
Теперь можем начать вычисление значений функций для внутренних узлов сетки. Для этого необходимо в симметричном случае выписать уравнение (5) для 15 внутренних точек, показанных на рисунке. Решение этих уравнений с использованием значений функции в граничных и внешних узлах дает искомое значение .
Зная функцию внутри рассматриваемой области, напряжения можно определить с помощью формул (3) и (9).
III. Решение задачи в математическом пакете Maple 6.0.
> restart;
a:=1:
k:=3:
N:=4:
p:=N+k:
Digits:=6:
For i from -2 to 2 do
u[i,0]:=0;
od;
For j from -6 to 0 do
u[3,j]:=-0.02*p*a^2;
u[-3,j]:=-0.02*p*a^2;
od;
> for i from -2 to 2 do
u[i,-6]:=-1/2*p*(i*a/6)^2+0.1*p*a^2;
od;
> c:={}:
> for i from -2 to 2 do
For j from -5 to -1 do
c:=c union {20*u[i,j]-8*(u[i-1,j]+u[i+1,j]+u[i,j-1]+u[i,j+1])+2*(u[i-1,j-1]+u[i+1,j-1]+u[i-1,j+1]+u[i+1,j+1])+u[i-2,j]+u[i+2,j]+u[i,j-2]+u[i,j+2]=0};
od;
od;
> for j from -6 to -0 do
u[4,j]:=u[2,j]-2/15*p*a^2;
u[-4,j]:=u[-2,j]-2/15*p*a^2;
od;
> for i from -2 to 2 do
u[i,1]:=u[i,-1];
u[i,-7]:=u[i,-5];
od;
> b:={}:
> for i from -2 to 2 do
For j from -5 to -1 do
b:=b union {u[i,j]};
Od
od;
> d:=solve(c,b);
Определение нормальных и касательных напряжений
> for i from -3 to 3 do
sigma_y[i,0]:=36/a^2*(u[i+1,0]-2*u[i,0]+u[i-1,0]):
sigma_y[i,-6]:=36/a^2*(u[i+1,-6]-2*u[i,-6]+u[i-1,-6]):
od;
> for j from -6 to 0 do
sigma_y[3,j]:=36/a^2*(u[4,j]-2*u[3,j]+u[2,j]);
sigma_y[-3,j]:=36/a^2*(u[-2,j]-2*u[-3,j]+u[-4,j]);
od;
> for i from -3 to 3 do
sigma_x[i,0]:=36/a^2*(u[i,1]-2*u[i,0]+u[i,-1]);
sigma_x[i,-6]:=36/a^2*(u[i,-5]-2*u[i,-6]+u[i,-7]);
od;
> for j from -6 to 0 do
sigma_x[3,j]:=36/a^2*(u[3,j+1]-2*u[3,j]+u[3,j-1]);
sigma_x[-3,j]:=36/a^2*(u[-3,j+1]-2*u[-3,j]+u[-3,j-1]);
od;
> for i from -3 to 3 do
sigma_xy[i,0]:=36/(4*a^2)*(u[i+1,1]-u[i-1,1]-u[i+1,-1]+u[i-1,-1]);
sigma_xy[i,-6]:=36/(4*a^2)*(u[i+1,-5]-u[i-1,-5]-u[i+1,-7]+u[i-1,-7]);
od;
> for j from -6 to 0 do
sigma_xy[3,j]:=36/(4*a^2)*(u[4,j+1]-u[2,j+1]-u[4,j-1]+u[2,j-1]);
sigma_xy[-3,j]:=36/(4*a^2)*(u[-2,j+1]-u[-3,j+1]-u[-2,j-1]+u[-4,j-1]);
od;