, , , . () ().
: , , alpha omega, : L, 1, mu, alphaPin, g alpha0. (. . 23.2), alphao . main. , ( long), ( short) . . .
d(alpha)/dt = omega,
, alpha Model.
. 0, + Pin. (), (>) Pin , -(2 Pin). long short: (alpha >= alphaPin) && omega>0 || (alpha <= -(2*Math.PI-alphaPin) && omega <0)
.
, ,
. .
, Pendulum. (x,Y) :
X: L*Math.sin(alphaPin) : L*Math.cos(alphaPin)
sin cos Math.sin Math.cos , sin cos , Math Java, AnyLogic. Java , , Math .
23.3. (Billiard _ Ba! ls)
, , . , , , Java. Billiard_Balls Model Examples\Part V.
|
|
() .
23.3 . , : . , . , . . , , , . , (vr) , , . . (. 23.3).
. , . Root, .
Ball, , Xm Ymax , , v , r . r g ( Java ), , ( ). .
, Ball , uniform_discr(255). , . , , 0 255. : (). color color : new Color((), (), ())
new Color((), (), ())
.
: X , vx vy (. . 23.3). :
d(x)/dt = vx d(y)/dt = vy
g, :
d(vy)/dt = -g
Ball owner Root.
(Root)getOwner()
|
|
. , Ball Root.
, vx vy. , . : , , , , . . 23.3. , . (. 23.4) , , , .
, , . , ( , ) r .
.
checkHit (), , . , null. Ball. , vx vy , , .
Ball Java, . , . ( Java) . , m color, checkHit , , . Ball.
checkHit ()
return (owner.Check (this));
check Root, , . check this . this (. . 7.7). , Ball check (), , Ball, , Root.
Ball , . ( v ), ( , ): do {
x=uniform(r, Xmax-r);
y=uniform(r, Ymax-r); } while (CheckHit()!= null);
. Ball ( 10) , . check () Ball, , b, . , .
. r (, , , r). (. . ), color, .
|
|
, , ( 10) r , , , , X 0 Xm Y 0 Ym, .