X-Git-Url: https://scm.cri.ensmp.fr/git/Faustine.git/blobdiff_plain/fc2ec49c325b99370170789886b4be4f43e16d68..b8e89a384896a4f8ce3e1990a10c88e7164af55c:/documentation/code_VALValue.v_mul.html diff --git a/documentation/code_VALValue.v_mul.html b/documentation/code_VALValue.v_mul.html deleted file mode 100644 index 05ad0b5..0000000 --- a/documentation/code_VALValue.v_mul.html +++ /dev/null @@ -1,69 +0,0 @@ - - - - - - - - - - - - - - - - -Value.v_mul - - -let rec v_mul v1 v2 = match v1 with
-        |Vec (size1, vec1) -> 
-                (
-                        match v2 with
-                        |Vec (size2, vec2) -> 
-                                if size1 = size2 then 
-                                  make_vector size1 (fun i -> v_mul (vec1 i) (vec2 i))
-                                else raise (Value_operation "vector size not matched.")
-                        |Zero -> make_vector size1 (fun i -> v_mul (vec1 i) Zero)
-                        |-> raise (Value_operation "Vector_Scalar vec1 *~ sca2")
-                )
-        |N i1 ->
-                (
-                        match v2 with
-                        |N i2 -> normalize (return_N (i1 * i2))
-                        |R f2 -> normalize (return_R ((float_of_int i1) *. f2))
-                        |Vec (size2, vec2) -> 
-                            raise (Value_operation "Vector_Scalar i1 *~ vec2")
-                        |Zero -> return_N 0
-                        |W -> if i1 = 0 then N 0 else fail
-                )
-        |R f1 ->
-                (
-                        match v2 with
-                        |N i2 -> normalize (return_R (f1 *. (float_of_int i2)))
-                        |R f2 -> normalize (return_R (f1 *. f2))
-                        |Vec (size2, vec2) -> 
-                            raise (Value_operation "Vector_Scalar f1 *~ vec2")
-                        |Zero -> return_R 0.
-                        |W -> if f1 = 0. then R 0. else fail
-                )
-        |Zero -> 
-                (
-                        match v2 with
-                        |N i2 -> return_N 0
-                        |R f2 -> return_R 0.
-                        |Vec (size2, vec2) -> make_vector size2 (fun i -> v_mul Zero (vec2 i))
-                        |Zero -> Zero
-                        |W -> Zero (* Danger! *)
-                )
-        |W ->
-                (
-                        match v2 with
-                        |N i2 -> if i2 = 0 then N 0 else fail
-                        |R f2 -> if f2 = 0. then R 0. else fail
-                        |Vec (size2, vec2) -> 
-                            raise (Value_operation "Vector_Scalar W +~ vec2")
-                        |Zero -> Zero
-                        |W -> fail
-                )
\ No newline at end of file