aboutsummaryrefslogtreecommitdiff
path: root/tools.ml
diff options
context:
space:
mode:
Diffstat (limited to 'tools.ml')
-rwxr-xr-xtools.ml8
1 files changed, 5 insertions, 3 deletions
diff --git a/tools.ml b/tools.ml
index 0cf8fe6..f4befa5 100755
--- a/tools.ml
+++ b/tools.ml
@@ -268,19 +268,21 @@ module Date = struct
+ day
+ b
+ 1720995
-(* + 2415019 (* Shift to 30/12/1899 *) *)
+ - 2415019 (* Shift to 30/12/1899 *)
|> Num.num_of_int
end
let date_from_julian_day day = begin
+ let shift_day = Num.floor_num day
+ |> Num.add_num (Num.num_of_int 2415019) in
- let z = Num.int_of_num (Num.floor_num day) in
+ let z = Num.int_of_num shift_day in
let f =
if z >= 2299161 then
(* We use the Num module here to prevent overflow *)
- let day' = Num.(((num_of_int 4) */ day +/ (num_of_int 274277)) // (num_of_int 146097))
+ let day' = Num.(((num_of_int 4) */ shift_day +/ (num_of_int 274277)) // (num_of_int 146097))
|> Num.floor_num
|> Num.int_of_num in
z + 1401 + ((day' * 3) / 4) - 38