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 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
|
//////
// $Id: dot.yts,v 1.2 2006/03/26 12:49:15 ayalpinkus Exp $
// Tests for Dot
//////
Testing("-- Dot");
// vector . vector
Verify(Dot({},{}),0);
Verify(Dot({},a),Hold(Dot({},a)));
Verify(Dot(a,{}),Hold(Dot(a,{})));
Verify(Dot({a},{}),Hold(Dot({a},{})));
Verify(Dot({},{a}),Hold(Dot({},{a})));
Verify(Dot({a},{b}),a*b);
Verify(Dot({a},{b,c}),Hold(Dot({a},{b,c})));
Verify(Dot({a,b},{c}),Hold(Dot({a,b},{c})));
Verify(Dot({a,b},{c,d}),a*c+b*d);
Verify(Dot({a,b},{c,{d}}),Hold(Dot({a,b},{c,{d}})));
Verify(Dot({a,{b}},{c,d}),Hold(Dot({a,{b}},{c,d})));
Verify(Dot({a,b},{c,d,e}),Hold(Dot({a,b},{c,d,e})));
Verify(Dot({a,b,c},{d,e}),Hold(Dot({a,b,c},{d,e})));
Verify(Dot({1,2,3},{4,5,6}),32);
// matrix . vector
Verify(Dot({{}},{}),{0});
Verify(Dot({{}},{1}),Hold(Dot({{}},{1})));
Verify(Dot({{},{}},{}),{0,0});
Verify(Dot({{a}},{b}),{a*b});
Verify(Dot({{a},{b}},{c}),{a*c,b*c});
Verify(Dot({{1},{2}},{2}),{2,4});
Verify(Dot({{1,2,3},{4,5,6}},{7,8,9}),{50,122});
// vector . matrix
Verify(Dot({},{{}}),Hold(Dot({},{{}})));
Verify(Dot({},{{},{}}),Hold(Dot({},{{},{}})));
Verify(Dot({1},{{}}),Hold(Dot({1},{{}})));
Verify(Dot({1},{{},{}}),Hold(Dot({1},{{},{}})));
Verify(Dot({a,b},{{c},{d}}),{a*c+b*d});
Verify(Dot({1,2,3},{{4,5},{6,7},{8,9}}),{40,46});
// matrix . matrix
Verify(Dot({{}},{{}}),Hold(Dot({{}},{{}})));
Verify(Dot({{a}},{{}}),Hold(Dot({{a}},{{}})));
Verify(Dot({{}},{{b}}),Hold(Dot({{}},{{b}})));
Verify(Dot({{1,2},{3,4},{5,6}},{{1,2,3},{4,5,6}}),{{9,12,15},{19,26,33},{29,40,51}});
Verify(Dot({{1,2,3},{4,5,6}},{{1,2},{3,4},{5,6}}),{{22,28},{49,64}});
//////
|