scalar R=1[ m ]; scalar h0=0.9[ m ]; scalar m=1[ kg ]; scalar v0=0.5[ m/ s ]; scalar h=0.6[ m ]; scalar g=9.81[ m/ s2 ]; point point1=point( R, 0 [ m ], 0 [ m ] ); point point2=point( -R, 0 [ m ], 0 [ m ] ); point point3=point( 0 [ m ], R, 0 [ m ] ); line line1=circlePPP( point2, point1, point3 ); point M=point( sqrt(R*R-h0*h0), h0, 0 [ m ] ); solid solid1=sphere( M, 0.01 [ m ], mass = m ); gravity gravity1=parallel( reverse( projectY ) ); point point4=point( 0 [ m ], 0 [ m ], 0 [ m ] ); vector vector1=vectorPP( M, point4 ); vector vector2=rotate( vector1, projectZ, 90[ deg ] ); body body1=body( color = RGB( 229, 229, 229 ) ); set ground = body1; body body1 < ( point1, point2, point3, point4, line1 ); body body2=body( color = RGB( 255, 153, 153 ) ); body body2 < ( M, solid1 ); condition condition1=transVelocity( body1, vector2, body2, M, v0 ); joint joint1=contactPointLine( M, line1 ); point point6=point( sqrt(R*R-h*h), h, 0 [ m ] ); sensor teor=m*g/R*(3*h-2*h0-v0*v0/g); vector vector4=vectorPP( point4, M ); sensor sila=jointForce( force:, body2, M, vector4, joint1, fixing = unlock: ); sensor vish=displacement( point4, M, projectY ); event event1=reformsBySensor( list( stop( ) ), vish, h ); sensor delta=abs(teor-sila); /\/////////////////////////////////////////////////////////////////////////////////// /\ Единицы измерения; set units = SI;