blob: fc10147590ecb803dd6104e76a87a187a446bd2a (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
# ===-- mat2.py -----------------------------------------------------------===##
#
# The KLEE Symbolic Virtual Machine
#
# This file is distributed under the University of Illinois Open Source
# License. See LICENSE.TXT for details.
#
# ===----------------------------------------------------------------------===##
import vec2
def det(m):
((m00,m01),(m10,m11))= m
return m00*m11 - m01*m10
def mul(a,b):
b_trans= zip(* b)
return tuple([transmulvec2(b_trans, a_r) for a_r in a])
# multiple vector v by a transposed matrix
def transmulvec2(m_trans,v):
return tuple([vec2.dot(v, m_c) for m_c in m_trans])
def mulvec2(m,v):
return transmulvec2(zip(* m), v)
def mulN(m,N):
return tuple([vec2.mulN(v,N) for v in m])
|