Package mikera.vectorz

Examples of mikera.vectorz.AVector


    assertTrue(r.epsilonEquals(v));
  }
 
  private void doInverseTest(AMatrix m) {
    assert(m.rowCount()==m.columnCount());
    AVector v = Vectorz.createUniformRandomVector(m.rowCount());
   
    AMatrix mi=m.inverse();
    assertEquals(1.0,m.determinant()*mi.determinant(),0.001);
   
    assertTrue(mi.epsilonEquals(Inverse.calculate(m)));
   
    AVector mv=m.transform(v);
    AVector mimv=mi.transform(mv);
   
    assertTrue(mimv.epsilonEquals(v));   
   
    // composition of matrix and its inverse should be an identity transform
    MatrixTransform mt=new MatrixTransform(m);
    ATransform id=mt.compose(new MatrixTransform(mi));
    AVector idv=id.transform(v);
    assertTrue(idv.epsilonEquals(v));   
  }
View Full Code Here


 
 
  @Test
  public void testIdentity() {
    for (int i=1; i<10; i++) {
      AVector v=Vectorz.newVector(i);
      for (int j=0; j<v.length(); j++) {
        v.set(j,j+1.3);
      }
     
      AVector tv=v.clone();
     
      AMatrix m=Matrixx.createImmutableIdentityMatrix(i);
     
      m.transform(v, tv);
     
View Full Code Here

  }
 
  private void doLeadingDiagonalTests(AMatrix m) {
    int dims=m.rowCount();
    assertEquals(dims,m.columnCount());
    AVector v=m.getLeadingDiagonal();
   
    for (int i=0; i<dims; i++) {
      assertEquals(v.get(i),m.get(i, i),0.0);
    }
  }
View Full Code Here

    int rc=m.rowCount();
    int cc=m.columnCount();
    if ((rc==0)||(cc==0)) return;
   
    for (int i=0; i<rc; i++) {
      AVector row=m.getRow(i);
      assertEquals(row,m.cloneRow(i));
      assertEquals(cc,row.length());
    }
   
    for (int i=0; i<cc; i++) {
      AVector col=m.getColumn(i);
      assertEquals(rc,col.length());
    }
   
    AVector row=m.getRowView(0);
    AVector col=m.getColumnView(0);
   
    row.set(0,1.77);
    assertEquals(1.77,m.get(0,0),0.0);
   
    col.set(0,0.23);
    assertEquals(0.23,m.get(0,0),0.0);
   
    AVector all=m.asVector();
    assertEquals(m.rowCount()*m.columnCount(),all.length());
    all.set(0,0.78);
    assertEquals(0.78,row.get(0),0.0);
    assertEquals(0.78,col.get(0),0.0);
   
    new TestArrays().testArray(row);
    new TestArrays().testArray(col);
View Full Code Here

    // TODO: consider what to do about out-of-range bands?
    //assertNull(m.getBand(bandMin-1));
    //assertNull(m.getBand(bandMax+1));
   
    for (int i=bandMin; i<=bandMax; i++) {
      AVector b=m.getBand(i);
      assertEquals(b.length(),m.bandLength(i));   
      assertEquals(mc.getBand(i),b);
     
      // wrapped band test
      if (rc*cc!=0) assertEquals(Math.max(rc, cc),m.getBandWrapped(i).length());
    }
View Full Code Here

    assertEquals(m,BandedMatrix.create(m));
  }
 
  private void doVectorTest(AMatrix m) {
    m=m.clone();
    AVector v=m.asVector();
    assertEquals(v,m.toVector());
   
    assertEquals(m.elementSum(),v.elementSum(),0.000001);
   
    AMatrix m2=Matrixx.createFromVector(v, m.rowCount(), m.columnCount());
   
    assertEquals(m,m2);
    assertEquals(v,m2.asVector());
   
    if (v.length()>0) {
      v.set(0,10.0);
      assertEquals(10.0,m.get(0,0),0.0);
    }
  }
View Full Code Here

    AMatrix a=Matrixx.createRandomSquareMatrix(m.rowCount());
    AMatrix b=Matrixx.createRandomSquareMatrix(m.columnCount());
    AMatrix mb=m.compose(b);
    AMatrix amb=a.compose(mb);
   
    AVector v=Vectorz.createUniformRandomVector(b.columnCount());
   
    AVector ambv=a.transform(m.transform(b.transform(v)));
    assertTrue(amb.transform(v).epsilonEquals(ambv));
  }
View Full Code Here

    m1.scale(0.0);
    assertTrue(m1.isZero());
  }
 
  private void doMulTest(AMatrix m) {
    AVector v=Vectorz.newVector(m.columnCount());
    AVector t=Vectorz.newVector(m.rowCount());
   
    m.transform(v, t);
    AVector t2=m.transform(v);
   
    assertEquals(t,t2);
    assertEquals(t,m.innerProduct(v));
  }
View Full Code Here

      v.addProduct(v2,v3);
    }
  }
 
  public Object timeAVectorDotProduct(int runs) {
    AVector v=new Vector(Vectorz.createUniformRandomVector(VECTOR_SIZE));
    AVector v2=new Vector(Vectorz.createUniformRandomVector(VECTOR_SIZE));
    double r=0.0;
    for (int i=0; i<runs; i++) {
      r+=v.dotProduct(v2);
    }
    return r;
View Full Code Here

      v.add(source,100);
    }
  }
 
  public void timeJoinedVectorSet(int runs) {
    AVector v=Vectorz.newVector(VECTOR_SIZE/2);
    v=v.join(Vectorz.newVector(VECTOR_SIZE-v.length()));

    Vector v2=new Vector(Vectorz.createUniformRandomVector(VECTOR_SIZE));
    for (int i=0; i<runs; i++) {
      v.set(v2);
    }
  }
View Full Code Here

TOP

Related Classes of mikera.vectorz.AVector

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.