Top-level
+Top-level Top-level
Table of Contents
-
diff --git a/gaussian/lib/primitive_shell_pair.ml b/gaussian/lib/primitive_shell_pair.ml
index cc13fe0..d3aa31b 100644
--- a/gaussian/lib/primitive_shell_pair.ml
+++ b/gaussian/lib/primitive_shell_pair.ml
@@ -39,6 +39,13 @@ let cmp a b =
hash a - hash b
+let compute_norm_scales p_a p_b =
+ Array.map (fun v1 ->
+ Array.map (fun v2 -> v1 *. v2) (Ps.norm_scales p_b)
+ ) (Ps.norm_scales p_a)
+ |> Array.to_list
+ |> Array.concat
+
let create_make_of p_a p_b =
let a_minus_b =
@@ -49,13 +56,9 @@ let create_make_of p_a p_b =
Co.dot a_minus_b a_minus_b
in
- let norm_scales = lazy (
- Array.map (fun v1 ->
- Array.map (fun v2 -> v1 *. v2) (Ps.norm_scales p_b)
- ) (Ps.norm_scales p_a)
- |> Array.to_list
- |> Array.concat
- ) in
+ let norm_scales =
+ lazy (compute_norm_scales p_a p_b)
+ in
let ang_mom =
Am.( Ps.ang_mom p_a + Ps.ang_mom p_b )
@@ -126,7 +129,10 @@ let make p_a p_b =
let norm_scales x =
- Lazy.force x.norm_scales
+ try
+ Lazy.force x.norm_scales
+ with Lazy.Undefined -> (Printf.printf "UNDEFINED\n%!" ; compute_norm_scales x.shell_a x.shell_b
+ )
let exponent_inv x = x.exponent_inv
-1 Summary
+
+
+
+1 Summary
+
+