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 @@ -
- - - - - - - - - - - - - - - -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