open Core open Qptypes let test_prim () = let p = { GaussianPrimitive.sym = Symmetry.P ; GaussianPrimitive.expo = AO_expo.of_float 0.15} in GaussianPrimitive.to_string p |> print_string let test_gto_1 () = let in_channel = open_in "/home/scemama/quantum_package/data/basis/cc-pvdz" in ignore (input_line in_channel); let gto = Gto.read_one in_channel in print_endline (Gto.to_string gto); In_channel.seek in_channel 0L; ignore (input_line in_channel); let gto2 = Gto.read_one in_channel in print_endline (Gto.to_string gto2); let gto3 = Gto.read_one in_channel in print_endline (Gto.to_string gto3); if (gto2 = gto) then print_endline "gto2 = gto"; if (gto3 = gto) then print_endline "gto3 = gto"; if (gto3 = gto3) then print_endline "gto3 = gto3"; let test_gto_2 () = let in_channel = open_in "/home/scemama/quantum_package/data/basis/cc-pvdz" in ignore (input_line in_channel); let basis = Basis.read in_channel (Nucl_number.of_int 1) in List.iter basis ~f:(fun (x,n)-> Printf.printf "%d:%s\n" (Nucl_number.to_int n) (Gto.to_string x)) let test_gto () = let in_channel = open_in "/home/scemama/quantum_package/data/basis/cc-pvdz" in let basis = Basis.read_element in_channel (Nucl_number.of_int 1) Element.C in List.iter basis ~f:(fun (x,n)-> Printf.printf "%d:%s\n" (Nucl_number.to_int n) (Gto.to_string x)) let test_module () = test_gto_1() test_module ()