21 lines
466 B
Text
21 lines
466 B
Text
let g = 9.81
|
|
let y0 = 0.0
|
|
let y'0 = 10.0
|
|
|
|
let hybrid ball (y0, y'0) = (y, y', z) where
|
|
rec der y = y' init y0
|
|
and der y' = -. g init y'0 reset z -> -0.8 *. (last y')
|
|
and z = up(-. y)
|
|
|
|
let hybrid main () =
|
|
let der t = 1.0 init 0.0 in
|
|
let s = period(0.01) in
|
|
let (y, y', z) = ball (y0, y'0) in
|
|
present z | s -> (
|
|
print_float t;
|
|
print_string "\t";
|
|
print_float y;
|
|
(* print_string "\t";
|
|
print_float y'; *)
|
|
print_newline ()
|
|
); ()
|