ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 01.04.2021

Просмотров: 1295

Скачиваний: 16

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
background image

2. Внешний цилиндр неподвижен:
Функция

p

(

e

)

линейноубывает на отрезке [0,1], принимая на его

концах значения, равные соответственно 1 и 0. Функция является моно-
тонно убывающей с постоянным углом наклона, равным

1

.

> p := e -> 1-e;

plot(p(e), e=0..1);

> b := 6; a := 3;
> V := xi -> -1/4*xi^2+(b+5*a)

/(4*a*ln(b/a))*ln(xi)+5/4;

plot(V(xi), xi=1..b/a);

121


background image

Пример № 3

Заданы условия

x

=

r

2

, m

1 = 1

, m

2 = 2

, m

5 = 4

, c

= 40

, t

0 = 0

,

y

0=0

.

1

, v

0=7

.

Определить частоту и период малых, свободных колеба-

ний механической системы с одной степенью свободы, пренебрегая сила-
ми сопротивления и массами нитей. Найти уравнение движения груза

1

,

приняв за начало отсчета положение покоя груза

1

(при статической

деформации пружины). Найти также амплитуду колебаний груза

1

.

Воспользуемся уравнением Лагранжа 2-го рода для консервативной

системы. Приняв за обобщенную координату системы вертикальное от-
клонение

y

груза

1

от положения покоя соответствующей статической

деформации пружины, имеем:

> Diff(Diff(T,Diff(y,t)),t)-Diff(T,y)=-Diff(P,y);

где

Т

— кинетическая энергия системы, а

Р

— потенциальная энергия

системы. Кинетическую энергию

Т

вычислим с точностью до величины

2-го порядка малости относительно обобщенной координаты

y

.

Найдем кинетическую энергию системы равную сумме кинетиче-

ских энергий тел

1

,

2

,

5

.

Поскольку нить, соединяющая тела

1

и

5

,

невесома, нерастяжима и не проскальзывает, а тело 5 также движется
без скольжения, то, как видно из рисунка:

> restart;

v1 = Diff(y,t);
omega2 = v1/r;
omega5 = v1/(3*r);
v5 = 2*v1/3;

> T1 := (m1*v1^2)/2;

T2 := (m2*v1^2)/4;
T5 := (m5*v1^2/3);
T := T1+T2+T5;

122


background image

Потенциальная энергия определяется работой силы тяжести и ра-

ботой силы упругости пружины.

> g := 9.81:

y := ’y’:

P1 := -m1*g*y;

P2 := c*(f[ст]+lambda[k])^2/2-c*f[ст]^2/2;
P := P1+P2;

> lambda[k] := 2*y/3:

m1 := 1:

m2 := 2:

m5 := 4:

c := 40:

sas := {diff(P, y), y=0};

> solve(sas);
> f[ст] = -.367875:

diff(T, v1);

> T := 14/3*Diff(y, t):
> k := sqrt((4*c)/(9*m1+9*m2/2+6*m5));

Diff(y,t$2)+(k^2)*y=0;
y0 := 0.1;

v0 := 7;

> k := 4/21*sqrt(105):

y := C1*cos(k*t)+C2*sin(k*t);

> C1 := y0:

C2 := v0/k: y := y;

> a := sqrt(C1^2+C2^2): b := arctan(C1/C2):

sol := 3.587826640*sin(4/21*10.25*t+0.028);

> plot(sol, t=-5..5, title="Решение");

> with(plots):

with(plottools):

> pruzh := proc(x1,x2,y,r,K)

local d,l:
l := (x2-x1): d := l/K:
PLOT(CURVES([[x1,y],

seq([x1+j*d,r*sin(Pi*j/2)+y],j= 0..K),
[x2,y]])):

end:

123


background image

> Колесо := proc(xk, yk, R, w::anything)

‘plottools/disk‘([xk,yk], R, color=w):

end proc:

> Опора := proc(x,y,R)

local x0, x1, y0, h, N:
x0 := x-R*0.7:

x1 := x+R*0.7:

y0 := y-R*0.7:

h := 3*R:

N := 2:

display(PLOT(circle([x,y],R,color=green)),

PLOT(CURVES([[x0,y0],[x-h,y-h]],

[[x1,y0],[x+h,y-h]],
[[x0-h,y-h],[x1+h,y-h]],
seq([[x0-h*(-j/N+1),y-h],

[x0-h*(-j/N+1)-h/4,y-h*1.3]],

j=0..2*N+1)))):

end:

> Поверхность := proc(x, y, L, h)

local N:N:=round(abs(L/h))-3:
display(PLOT(CURVES([[x,y],[x+L,y]],

seq([[x+L*j/N/2,y],

[x+L*j/N/2-h,y-h]],

j=0..2*N)))):

end:

> Стенка := proc(x, y, L, h)

local N:
N := round(abs(L/h))-3:
display(PLOT(CURVES([[x,y],[x,y+L]],

seq([[x,y+L*j/N/2],

[x-h,y+L*j/N/2-h]],

j=0..2*N)))):

end:

> Cir := proc(x, y, R)

global CLR:
PLOT(circle([x,y], R, color=CLR))

end:

> box := proc(x, y, A, B)

local X, Y:
X := x;

Y := y;

PLOT(POLYGONS([[X-A,Y+B],[X+A,Y+B],

[X+A,Y-B],[X-A,Y-B]],

COLOR(RGB,0,1,0))):

end:

124


background image

> CLR := BLACK:
> pdif := proc(eq, T)

local rec, i, dt, cadr, TT;

cadr := T*50;
dt := T/cadr;
for i from 0 to cadr do

rec := box(16,-3-eval(eq,t=dt*i),.8,0.4);
TT := ‘plots/textplot‘
([18,5,cat("t=",convert(evalf(dt*i,4),string))]);
q||i:=‘plots/display‘(

{rec,TT,

Поверхность(-0.1,0.1,13,0.1),
Cir(15,2.1,1),
Опора(15,2.1,0.08),
Стенка(0,0,5,0.1),
line([16,2.1],[16,-2.6-eval(eq,t=dt*i)]),
Cir(7+eval(eq,t=dt*i),2.1,1),
Cir(7+eval(eq,t=dt*i),2.1,2),
line([7+eval(eq,t=dt*i),3.1],[15,3.1]),
pruzh(0,7+eval(eq,t=dt*i),2.1,0.2,75),
Колесо(7+eval(eq,t=dt*i),2.1,0.05,GREEN)},
scaling=constrained);

end do;
‘plots/display‘([seq(q||i,i=0..cadr)],

insequence=true,
scaling=constrained, axes=none);

end proc:

> pdif(sol,5);

125