scalar M=1 [ kg ]; scalar l=0.2 [ m ]; point point_start_rod=point( 0 [ m ], 0 [ m ], 0 [ m ] ); point point_start=point( -1 [ m ], 0 [ m ], 0 [ m ] ); point point_end=point( 1 [ m ], 0 [ m ], 0 [ m ] ); line line_ground=polyLine( list( point_start, point_end ) ); point point_end_rod=point( l, 0 [ m ], 0 [ m ] ); line line_rod=polyLine( list( point_start_rod, point_end_rod ) ); solid solid_pendulum=sphere( point_end_rod, 0.01 [ m ], mass = M ); body ground=body( color = RGB( 229, 229, 229 ) ); set ground = ground; body ground < ( point_start, point_end, line_ground ); body pendulum=body( color = RGB( 255, 153, 153 ) ); body pendulum < ( solid_pendulum, line_rod, point_end_rod ); gravity gravity=parallel( reverse( projectY ) ); body motion_block=body( color = RGB( 229, 229, 229 ) ); body motion_block < ( point_start_rod ); joint joint_moveX=translational( ground, motion_block, point_start_rod, projectX ); joint joint=rotational( motion_block, pendulum, point_start_rod, projectZ ); sensor sensor_omega=rotVelocity( motion_block, projectZ, pendulum ); vector vector_rod=vectorPP( point_start_rod, point_end_rod ); body pendulum < ( vector_rod ); vector vector=reverse( projectY, point = point_start_rod ); sensor sensor_vector_rod=angleVV( vector_rod, vector ); scalar answer=-2*sqrt(9.810000e+000 [ m/ s2 ]/l)*1[ rad ]; sensor sensor_delta=sensor_omega-answer; solid solid_motion_block=sphere( point_start_rod, 0.01[ m ], mass = M ); body motion_block < ( solid_motion_block ); reform reform_stop=stop( ); event event_stop=reformsBySensor( list( stop( ), reform_stop ), sensor_vector_rod, 0.01[ rad ] ); /\/////////////////////////////////////////////////////////////////////////////////// /\ Единицы измерения; set units = SI;