Beispiel #1
0
void testSimpleVectorClone() {
    SimpleVector v = createSimpleVector(3);

    Vector* c = v.clone();
    v.setElement(0, 7);
    v.setElement(1, 7);
    v.setElement(2, 7);

    BOOST_CHECK( c->getElement(0) == 0 );
    BOOST_CHECK( c->getElement(1) == 1 );
    BOOST_CHECK( c->getElement(2) == 2 );
}
Beispiel #2
0
void testSimpleMatrixMultiplyRight() {
    SimpleVector v = SimpleVector(3);
    SimpleMatrix m = createSimpleMatrix(2, 3);

    v.setElement(0, 3);
    v.setElement(1, 2);
    v.setElement(2, 1);

    // [0,1,2] * [3] = [4]
    // [0,1,2]   [2]   [4]
    //           [1]
    Vector* res = m.multiplyRight(v);

    BOOST_CHECK( res->size() == 2 );
    BOOST_CHECK( res->getElement(0) == 4 );
    BOOST_CHECK( res->getElement(1) == 4 );

    delete res;
}
Beispiel #3
0
void testSimpleMatrixMultiplyLeft() {
    SimpleVector v = SimpleVector(3);
    SimpleMatrix m = createSimpleMatrix(3, 2);

    v.setElement(0, 3);
    v.setElement(1, 2);
    v.setElement(2, 1);

    // [3,2,1] * [0,1] = [0,6]
    //           [0,1]
    //           [0,1]
    Vector* res = m.multiplyLeft(v);

    BOOST_CHECK( res->size() == 2 );
    BOOST_CHECK( res->getElement(0) == 0 );
    BOOST_CHECK( res->getElement(1) == 6 );

    delete res;
}