Аналитическая динамика и теория колебаний. Исследование динамики мех
.pdfПрограмма численного решения нелинейного уравнения (21) методом парабол (алгоритм представлен на языке программирования PASCAL [5])
Const n=5;
axrarray [l..n,l..n] of real=((10,l,2,3,4),(l,9,-l,2,-3), (2,-1,7,3,-5),(3,2,3,12,-1),(4,-3,-5,-1,15)); {=((5,1,-2,0,-2,5),(1,6,-3,2,0,6),(-2,-3,8,-5,-6,0), (0,2,-5,5,1,-2),(2,0,-6,1,6,-3),(5,6,0,-2,-3,8));}
Var mi,tt,kj,i,w,ic0,icl,ic2,icm,minc:integer; zx,x,x0,xl ,x2,xm,d0,dl ,d2,dm,f0,fl ,f2,eps:real; Hl,H2,B2,C2,G2,GS,BM:real;
mas:array [1..100] of real; axl:array [l..n,l..n] of real; label ler;
{Процедура приведения числа к виду а • 2Ь} procedure rain(Var ddl :real;Var el integer); Var fi:integer;
begin
while abs(ddl)>l do begin
ddl :=ddl/l 6; el:=el+4; end;
while abs(ddl)<=0.0625 do begin
ddl :=ddl*16; el :=el-4; end;
end;
{Процедура приведения матрицы к треугольному виду} procedure matrix(xxx:real);
Var ixjx,kx:integer; tx:array [l..n,l..n] of real;
detAireal; begin
For kx:=l to n do For ix:=l to n do
axl[kx,ix]:=ax[kx,ix];
For kx:=l to n do For ix:=l to n do tx[kx,ix]:=0;
For kx:=l to n do
axl [kx,kx]:=axl [kx,kx]-xxx;
For kx:=l to n-1 do begin
For ix:=kx+l to n do begin
tx[ix,kx]:=axl [ix,kx]/axl [kx,kx]; For jx:=kx+l to n do
axl [ixjx]:=axl [ixjx]-tx[ix,kx]*axl [kx,jx]; end;
end;
end;
{Процедура расчета значения функции в точке хх} procedure func(Var xx:real;Var dd:real;Var e:integer); Var kx,ix,il jj:integer;
begin e:=0; il:=0; dd:=0;
If mi=l then begin
dd:=(xx-1)*(xx+100)*(xx-0.0001 )*(xx+4567)*(xx+15); rain(dd,e);
end;
If mi=2 then begin
dd:=l;
matrix(xx);
for jj:=1 to n do begin dd:=dd*axl[ijjj]; rain(dd,e);
end;
end;
I f i o l then begin
If mi=l then begin il:=i-l;
For jj:=l to il do begin dd:=dd/(xx-mas[jj]); rain(dd,e);
end;
end;
end;
end;
begin
mi:=2;
k:=5;
If mi=2 then k:=n; eps:=0.0000001; xm:=0;
For i:=l to к do begin
If mi=l then begin
xl :=-2; x2:=l; xm:=0.5; end;
If mi=2 then
begin
xl :=xm-l; x2:=xm+i-l; xm:=xm+2*i; end; func(xl,dl,icl); func(x2,d2,ic2); j:=0;
repeat begin incG);
func(xm,dm,minc);
xO:=xl; xl :=x2; x2:=xm; icO:=icl; icl:=ic2; ic2:=minc; dO:=dl; dl:=d2; d2:=dm; minc:=0;
Hl:=xl-xO;
H2:=x2-xl;
B2:=H2/H1;
C2:=l+B2;
{Отыскание минимального показателя b значения функ
ции}
If (ic0<=icl)and(ic0<=ic2) then minc:=icO; If (icl<=ic0)and(icl<=ic2) then minc:=icl; If (ic2<=ic0)and(ic2<=icl) then minc:=ic2;
{Приведение значений функций к одному показателю 6=minc}
fO:=dO; fl:=dl; f2:=d2;
For tt:=l to icO-minc do fO:=fD*2;
Fortt:=l toicl-minc do fl :=f] *2;
Fortt:=l to ic2-minc do f2:=f2*2;
{Реализация метода}
G2:=fO*B2*B2-fl *C2*C2+f2*(B2+C2); GS:=sqrt(abs(G2*G2-4*f2*C2*B2*(f0*B2-fl*C2+f2))); If G2<=0 then w:=-l
else w:=l; BM:=(-2*f2*C2)/(G2+w*GS); xm:=x2+BM*H2;
If xm=0 then goto ler; end;
{Условия выхода из цикла итераций} unti I (abs((x2-xm)/xm)<eps)or(j>=50);
ler:
w riteln('I-,i,'j-j,' xm-,xm:3:8,' F-,f2:3:6,' *2A(',minc,')'); zx:=sqrt(abs(xm));
writeln(i,'-ja sobstvennaja chastota = ’,zx:4:6); mas[i]:=xm;
end; readIn; end.
Список идентификаторов:
•mi - параметр выбора объекта расчета (1 - аналитически заданная функция, 2 - квадратная матрица);
•к - количество отыскиваемых корней;
•/ - счетчик, номер текущего корня;
•у - счетчик, число итераций при определении корня уравнения;
•хт - текущее значение zi на каждой итерации;
•*о, х2 ~ начальные приближения;
• fo, fu h - значения функции в трех точках;
•mas - массив корней уравнений;
•а х - заданная матрица;
•ах1- вспомогательная матрица-двойник;
•eps - точность определения корней;
•d d - аналитически заданная функция.
Пример 1. Методом парабол отыскать корни уравнения
Fix) = (х - 2)(х - 2){х - 3)(JC- 0,001 )(* - 0,1).
Решение уравнения получено с использованием программы, описанной выше, с указанием вида функции (идентификатор dd) и значения параметра im= 1.
Результат вычислений - значение корней и количество ите раций (/), необходимое для нахождения каждого корня.
Пример 2. Определить собственные значения матрицы А [6]:
10 |
1 |
2 |
3 |
4 |
1 |
9 |
-1 |
2 |
-3 |
2 |
-1 |
7 |
3 |
-5 |
3 |
2 |
3 |
12 |
-1 |
|
4 -3 -5 -1 15 |
|
Результаты расчета собственных значений: |
||
Я]= |
1,65526610°; ^2=6,994838 |
10°;Я3 = 9,365555 10°; |
Я4= |
1,580892 101; Я5 = 1,917542 |
101 |
При вычислении значений функции fiz) используется под |
программа «rain», которая представляет число в форме b = а ■2к, где а - мантисса числа, заключенная в интервале [0,0625, 1,0]; к - показатель степени, кратный четырем.
Для работы непосредственно с функцией (пример 1) такая процедура является лишней. Но опыт использования алгоритма показал, что в основном приходится иметь дело с матрицами высоких порядков. Примером может служить метод конечных элементов [7]. Значение определителя может достичь очень
больших порядков, превосходящих возможности ЭВМ даже с учетом нестандартной длины представления переменных. По этому процедура «rain» становится необходимой.
При решении примера 2 была использована подпрограмма вычисления определителя методом Гаусса с учетом процедуры «rain» [4].
4. ПРИБЛИЖЕННЫЕ МЕТОДЫ РАСЧЕТА КОЛЕБАНИЙ
Применение простых приближенных формул (например формулы Релея) позволяет успешно рассчитывать колебания сложных систем. В этом случае задают форму колебаний систе мы, сводя ее таким образом к системе с одной степенью свобо ды. При удачной аппроксимации получают достаточно точное значение низшей собственной частоты системы, однако другие ее динамические характеристики остаются нераскрытыми.
Схематизация реальной системы как имеющей несколько степеней свободы достигается в методе Релея-Ритца, при ис пользовании которого форма колебаний системы задается в виде выражения, включающего несколько параметров.
Другим приемом, позволяющим свести реальную систему к системе с конечным числом степеней свободы, является метод прямой дискретизации. Чем больше число элементов, на кото рые разбита система при применении этого метода, тем ближе расчетная схема к исходной системе. Вместе с тем, если элемен ты выбраны однотипными, при большом их числе реализовать расчет колебаний возможно с использованием ЭВМ, применяя, например, метод начальных параметров в форме матриц пере хода или метод прогонки [3, 4].
Втом случае, когда сложную колебательную систему мож но разделить на несколько подсистем, динамические характери стики которых определяются сравнительно просто, полезными являются методы динамических податливостей и жесткостей. Эти методы представляют собой обобщение подходов к реше нию динамических задач метода сил и метода перемещений строительной механики.
Вметоде последовательных приближений задача об опре делении собственных частот и форм колебаний сводится к мно гократному расчету деформаций системы под действием из вестной статической нагрузки.
Выбор того или иного метода для динамического расчета сложной механической системы зависит от структуры этой сис темы и задачи расчета.
4.1. Дискретизация систем с распределенными параметрами
В большинстве случаев расчет систем с сосредоточенными параметрами оказывается более простым, чем расчет систем с распределенной массой. Поэтому при составлении расчетной схемы конструкции ее распределенную массу часто заменяют некоторым количеством сосредоточенных масс. При этом воз никает вопрос о точности, которая при этом достигается, и наи более рациональных приемах замены распределенной массы сосредоточенными массами.
Рассмотрим балку постоянного сечения длиной / и распре деленной массой mol. Не нарушая симметрии, можно предста вить ее в виде: 1) невесомой балки с сосредоточенной массой mol в центре; 2) невесомой балки с двумя грузами на концах, массой mol/2 (типа гантели). Анализируя влияние той или иной схематизации на результат расчета, нетрудно установить, что в первом случае инерция поворота элемента относительно его центра не учитывается, во втором случае эта инерция переоце нивается. Поэтому при схематизации балки участками, массы которых сосредоточены в их центрах, как правило, получают завышенные значения собственных частот, а при схематизации гантелями - заниженные. Впрочем, с увеличением числа участ ков разница между различными схематизациями исчезает.
Чем мельче дискретные элементы, на которые разбита уп ругая система (и чем больше их число), тем ближе решение за дачи для дискретной системы к решению задачи для заданной системы. Однако увеличение числа элементов ведет к усложне нию решения. Вместе с тем уточнение, получающееся при очень мелких элементах, является кажущимся. В самом деле, исход ные уравнения для системы с распределенной массой являются приближенными и теряют силу при деформациях, локализован ных на коротких участках. Так, уравнения продольных и изгибных колебаний стержня справедливы только до тех пор, пока длина полуволны колебания хотя бы в несколько раз превышает
размеры поперечного сечения. Поэтому дробить стержень при дискретизации на элементы более короткие, чем размеры попе речного сечения, бессмысленно.
4.2. Простейшие приближенные формулы для оценки низшей собственной частоты
Формула Релея. Пусть упругая система совершает собст венные колебания с частотой р, причем смещение х, массы т, от равновесного положения изменяется по закону
|
ж, =UjSin(pt). |
|
(28) |
||
Кинетическая энергия системы |
|
|
|||
1 п |
\2 |
= \р2cos^pOXw/W? |
|
||
xi |
(29) |
||||
|
|||||
2 i=i V J |
2 |
,=i |
|
Потенциальная энергия системы изменяется пропорцио нально квадратам перемещений и может быть записана в форме
U = U0sm2(pt), |
(30) |
где UQ- энергия системы при амплитудных перемещениях х, = щ. Из закона сохранения энергии следует
Т + U = const,
поэтому должно быть
Таким образом, частота колебаний может быть определена по формуле Релея
Р |
2 |
(31) |
|
где М - обобщенная масса системы при данной форме колебаний.
Если при вычислении формулы (31) задаваться формой к-го собственного колебания системы, то будет рассчитана к-я собственная частота. Если задать форму колебаний, не слишком сильно отличающуюся от первой собственной формы, то фор мула Релея (31) позволяет определить приближенное значение первой частоты собственных колебаний системы. Причем при нимая форму колебаний, подобную статическим прогибам сис темы от некоторой подходящей нагрузки, можно существенно увеличить точность расчета за счет исключения операции диф ференцирования.
Метод Граммеля. Позволяет повысить точность расчета путем замены дифференцирования интегрированием. Последо вательность операций этого метода следующая:
1. Задают форму колебаний и подсчитывают максимальную кинетическую энергию движения
Tmn = -Xp 2i m r f |
(32) |
2 /=1 |
|
|
л |
2.Определяют максимальные силы инерции масс Ft - р т,и,.
3.Определяют внутренние силы в элементах системы, вы зываемые нагрузками F,.
4.По внутренним силам вычисляют максимальную потен циальную энергию деформации Щ.
5.Из равенства Tmax = Uo пределяют частоту колебаний. Формула Донкерлея. Так как метод Релея приводит к за
вышенному значению частоты колебаний, полезным является применение формулы, дающей заниженную частоту. Простей шей из такого рода формул является формула Донкерлея.
Точное значение собственной частоты многомассовой сис темы выразится формулой
(33)
п 2
Частота колебаний той же системы, но с одной массой т„ будет определяться по формуле