Читайте также:
|
|
%task41
clear
[y1,y2]=dsolve('D2y1+n^2*y1+d*D2y2=0,D2y2+n^2*y2+d*D2y1=0','y1(0)=y0','Dy1(0)=v0','y2(0)=y0','Dy2(0)=v0','t');
y1
y2
l=1;EI=1;M=1;s11=4/243*l^3/EI;s22=s11;s12=7/486*l^3/EI;s21=s12;
n=sqrt(1/(M*s11));
d=s12/s11;
y0=1;v0=0;
ezplot(subs(y1),[0 2])
figure
ezplot(subs(y2),[0 2])
>> task41
y1 =
(d+1)^(1/2)*v0/n*sin(n/(d+1)^(1/2)*t)+y0*cos(n/(d+1)^(1/2)*t)
y2 =
(d+1)^(1/2)*v0/n*sin(n/(d+1)^(1/2)*t)+y0*cos(n/(d+1)^(1/2)*t)
второй график такой же…а частоту можно взять прямо из найденного dsolve решения..и проверить с теоретической))
>> n/(d+1)^(1/2)
ans =
5.6921
идея понятна..теперь по аналогии с 3 ст.свободы))
грубо говоря, так..
%task41with3
clear
[y1,y2,y3]=dsolve('D2y1+n^2*y1+d*D2y2+d*D2y3=0,D2y2+n^2*y2+d*D2y1+d*D2y3=0,D2y3+n^2*y3+d*D2y2+d*D2y1=0','y1(0)=y0','Dy1(0)=v0','y2(0)=y0','Dy2(0)=v0'...
,'y3(0)=y0','Dy3(0)=v0','t');
y1
y2
y3
l=1;EI=1;M=1;s11=4/243*l^3/EI;s22=s11;s12=7/486*l^3/EI;s21=s12;
n=sqrt(1/(M*s11));
d=s12/s11;
y0=1;v0=0;
ezplot(subs(y1),[0 2])
figure
ezplot(subs(y2),[0 2])
figure
ezplot(subs(y3),[0 2])
вроде работает..))
4.2. Построить и исследовать аналитическое решение задачи о вынужденных колебаниях механической системы с двумя и тремя степенями свободы при гармоническом возмущении.
%task42
clear
[y1,y2]=dsolve('D2y1+n^2*y1+d*D2y2=P1*cos(w*t),D2y2+n^2*y2+d*D2y1=…
P2*cos(w*t)','y1(0)=y0','Dy1(0)=v0','y2(0)=y0','Dy2(0)=v0','t');
y1
y2
l=1;EI=1;M=1;P1=1;P2=1;w=1;
s11=4/243*l^3/EI;s22=s11;s12=7/486*l^3/EI;s21=s12;
n=sqrt(1/(M*s11));
d=s12/s11;
y0=1;v0=0;
ezplot(subs(y1),[0 2])
figure
ezplot(subs(y2),[0 2])
короче-добавили правые части в уравнения))
4.3. Реализовать и визуализировать средствами MATLAB численное решение задачи о колебаниях механической системы с двумя и тремя степенями свободы.
function task43
d = 0.5; n =1.; p1=1;p2=1;w=1;
[t y] = ode45(@right, [0 3], [0 0 0 0],[], d, n, p1,p2, w);
plot(t, y(:,3))
function res = right(t, y, d, n, p1,p2, w)
A = p1*cos(w*t)-n^2*y(1);
B = p2*cos(w*t)-n^2*y(3);
x1dot = y(2);
x2dot = (A-d*B)/(1-d^2);
x3dot = y(4);
x4dot = (B-d*A)/(1-d^2);
res = [x1dot; x2dot; x3dot; x4dot];
это решение нужно модернизировать в плане учета своих значений из таблицы, ну и потом для 3-х степеней свободы. А может кто хочет поработать с Simulinkом?!….))
Для рассмотренной выше задачи это выглядит, например, так
Дата добавления: 2015-07-19; просмотров: 31 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Задание2 | | | ФУНКЦИЙ С ПОМОЩЬЮ КАРТ КАРНО |