D | ||||
t | v | H | ||
0,001 | ||||
0,001 | 0,00981 | |||
0,002 | 0,01962 | m*g | ||
0,003 | 0,02943 | 784,8 | ||
0,004 | 0,03924 | k2 | ||
0,005 | 0,04905 | 0,55083 | ||
0,006 | 0,05886 |
, , , , ( ). . : - . . , , , . , . : 75 ( ), 33 /. 37,76 / . , : , ; ( ) , ? -: ( k2), ? , .
, .
. α v0, , , , . . :
, - ; . vy = v -gt; vy = 0,
|
|
2 ; , v ,
x t:
,
(7.11)
(7.11) - .
, , . . , , - - , . ; . , r ≈ 0,1 , ~ 1 /, ()
F1 F2 ( , , , 5 ). F2 , F1 (F1 ~ r, F2 ~ r2), F2 , F1 (F1 ~ v, F2 ~ v2). , , , , , , , . ,
, ,
θ - . , , vx, vy.
(7.12)
, (7.12)
(7.13)
, (7.12), : vx(t), vy(t), x(t), y(t).
, , , . (), . , . 15 / - ? , . - , . , , .. , , . . , l, h, t, ; ,
|
|
- , - 0 1, . , x v0:
, , , (7.12). :
( ). ,
, ,
(7.12), (7.13) ( ).
(7.14)
:
- . , , (7.12), (7.13) : k1, k2, m, g, v0, . - a, b, α - . , , , b α , . ( ), , . , , Vx, Vy, X, Y, τ , , , . , , . (7.14) b = 0 :
(7.14)
, :
, , , , (7.11), , .
. 7.8. α = 45
α, 0,01; 0,1; 1 10 ( - )
. 7.8 α, . , - , . b .
: . , b α, . (.. ) , ( b).
148. ,
Program Pod Uglom;
Uses Crt, Graph;
Type G = Array[1..4] Of Real;
|
|
Const A = 0; =0.1; ( )
Al = Pi / 4; ( - }
= 0.001; r = 0.1; ( )
Var N, I, J, M, L, : Integer;
Y0, Y: G; 0, X, Xpr, A1, B1, Cosinus, Sinus: Real; LS: String;
Function Ff(I: Integer; X: Real; Y: G): Real;
{ }
Begin
Case I Of
1: Ff:=-A1*Sinus*Y[l]-Bl*Sinus*Sqrt(Sqr(Y(l])+Sqr(Y[2]))*Y[1];
2: Ff:=-Sinus-A1*Sinus*Y[1]-B1*Sinus*Sqrt(Sqr(Y(1])+Sqr(Y[2]))*Y[2];
3: Ff:=Y[1]/(2*Cosinus);
4: Ff:=2*Y[2]/Sinus
End
End;
Procedure Runge_Kut (N: Integer; Var X: Real; Y0: G; Var Y: G; : Real);
( - )
Var I: Integer; Z, K1, K2, , 4: G;
Procedure Right(X: Real; Y: G; Var F: G);
{ }
Var I: Integer;
Begin
For I: = 1 To N Do F[I]:= Ff(I, X, )
End;
Begin Right(X, Y0, K1); X:= X + / 2;
For I:= 1 To N Do Z[I]:=Y0[I]+H*K1[I]/2; Right(X, Z, K2);
For I:= 1 To N Do Z[I]:=YO[I]+H*K2[I]/2; Right(X, Z, ); :=+/2;
For I:= 1 To N Do Z[I]:= Y0[I] + H * [I]; Right (X, Z, 4);
For I:= 1 To N Do
Y[I]:=Y0[I]+H*(K1[I]+2*K2[I]+2*K3[I]+K4[I])/6;
End;
{ - }
{Begin
Sinus:= Sin(Al); Cosinus:= Cos(Al); Al:= A; Bl:= B; ClrScr;
N:=4; X0:=0; Y0[l]:=Cosinus; Y0[2]:=Sinus; Y0[3]:=0; Y0[4]:=0;
WriteLn(' ');
WriteLn; X:= 0; Xpr:= 0; Y[4]:= Y0[4];
While Y[4] >= 0 Do
Begin
If X >= Xpr Then
Begin
WriteLn ('t=', X: 6: 3, ' Vx='. Y0[l]: 6: 3, ' Vy=',
Y0[2]: 6: 3. ' X=', y0[3]: 6: 3, ' Y=', Y0[4]: : 3);
Xpr:= Xpr + Hpr
End;
Runge_Kut(N, X, Y0, Y, H); Y0:= Y
End;
WriteLn; WriteLn(' ');
Repeat Until KeyPressed
End.}
{ - )
Begin
DetectGraph (J, M); InitGraph (J, M, '');
L:= 1; Al:= A; Bl:= ; Sinus:= Sin(Al); Cosinus:= Cos(Al);
While L < 5 Do
Begin
N:= 4; ( )
0:= 0; Y0[l]:= Cosinus; ( }
Y0[2]:= Sinus; Y0[3]:= 0; Y0[4]:= 0:
SetColor(L); Line(400, 50 + 20 * (L - 1), 440, 50 + 20 * (L - 1));
OutTextXY(450, 50 + 20 * (L - 1), '1 = ');
Str(L, LS); OutTextXY(480, 50+20*(L-l), LS); X:=X0; Y[4]:=Y0[4];
While Y[4] >= 0 Do
Begin
Runge_Kut(N, X, Y0, Y, H); Y0:= Y;
PutPixel(Abs(Trunc(Y0[3]*500)), GetMaxY-Abs(Trunc(Y0[4]*500)), L);
End;
Bl:= Bl * 10; L:= L + 1
End;
OutTextXY(10, 50, ' ');
Repeat Until KeyPressed; CloseGraph
End.
. R=0,07 , v0 = 60 / α = 45 . , , , , . , . b, . , ρ = 7800 /3.
, 0,1, - .. ( ), , 10-3. , , , .. Y 0. - . 7.9. . , (. 7.10).
|
|
. 7.9. V(τ) Y(X) .
V .
V < 1 .
. 7.10. V(τ) Y(X) , , ( 1 1; - ) ( 1, - ) ( = 1, b = 1)
. . 7.11,7.12.
. 7.11. , , b = 0,1 () b = 1 (); α = π /4 ( = 0,01; 0,1; 1; 10; )
. 7.12. b , , a = 0,1 () = 1 (); α = π /4 (b = 0,01; 0,1; 1; 10; )