diff --git a/ocaml/out/samples b/ocaml/out/samples index c452ddf0..5f5b9ad8 100755 Binary files a/ocaml/out/samples and b/ocaml/out/samples differ diff --git a/ocaml/out/samples.cmi b/ocaml/out/samples.cmi index 82788a54..ffb67565 100644 Binary files a/ocaml/out/samples.cmi and b/ocaml/out/samples.cmi differ diff --git a/ocaml/out/samples.cmx b/ocaml/out/samples.cmx index b2147475..ace4eda3 100644 Binary files a/ocaml/out/samples.cmx and b/ocaml/out/samples.cmx differ diff --git a/ocaml/out/samples.o b/ocaml/out/samples.o index b81ec268..497aca0d 100644 Binary files a/ocaml/out/samples.o and b/ocaml/out/samples.o differ diff --git a/ocaml/samples.ml b/ocaml/samples.ml index 83b2a540..0f171f82 100644 --- a/ocaml/samples.ml +++ b/ocaml/samples.ml @@ -61,7 +61,7 @@ let sampleTo low high = let loglow = log(low) in let loghigh = log(high) in let logmean = (loglow +. loghigh) /. 2.0 in - let logstd = (loghigh -. loglow) /. (2.0 -. normal_95_ci_length ) in + let logstd = (loghigh -. loglow) /. (2.0 *. normal_95_ci_length ) in sampleLognormal logmean logstd let mixture (samplers: (unit -> float) list) (weights: float list): (float, string) result = @@ -92,11 +92,11 @@ let () = let p3 = p1 *. p2 in let weights = [ 1. -. p3; p3 /. 2.; p3 /. 4.; p3/. 4. ] in let sampler () = mixture [ sample0; sample1; sampleFew; sampleMany ] weights in - let n = 1_000_000 in + let n = 1_000 in let samples = List.init n (fun _ -> sampler ()) in match unwind samples with | Error err -> Printf.printf "Error %s\n" err | Ok(xs) -> ( let mean = sumFloats xs /. float_of_int(n) in - Printf.printf "Mean: %f" mean + Printf.printf "Mean: %f\n" mean )