/** * Constructs a matrix with the given shape, each cell initialized with the given value. */ public ObjectMatrix1D make(int size, Object initialValue) { return make(size).assign(initialValue); } /**
/** * Constructs a matrix with the given shape, each cell initialized with the given value. */ public ObjectMatrix1D make(int size, Object initialValue) { return make(size).assign(initialValue); } /**
/** Constructs a matrix which is the concatenation of all given parts. Cells are copied. */ public ObjectMatrix1D make(ObjectMatrix1D[] parts) { if (parts.length==0) return make(0); int size = 0; for (int i=0; i < parts.length; i++) size += parts[i].size(); ObjectMatrix1D vector = make(size); size = 0; for (int i=0; i < parts.length; i++) { vector.viewPart(size,parts[i].size()).assign(parts[i]); size += parts[i].size(); } return vector; } /**
/** Constructs a matrix which is the concatenation of all given parts. Cells are copied. */ public ObjectMatrix1D make(ObjectMatrix1D[] parts) { if (parts.length==0) return make(0); int size = 0; for (int i=0; i < parts.length; i++) size += parts[i].size(); ObjectMatrix1D vector = make(size); size = 0; for (int i=0; i < parts.length; i++) { vector.viewPart(size,parts[i].size()).assign(parts[i]); size += parts[i].size(); } return vector; } /**
/** * Constructs a matrix from the values of the given list. * The values are copied. So subsequent changes in <tt>values</tt> are not reflected in the matrix, and vice-versa. * * @param values The values to be filled into the new matrix. * @return a new matrix. */ public ObjectMatrix1D make(cern.colt.list.ObjectArrayList values) { int size = values.size(); ObjectMatrix1D vector = make(size); for (int i=size; --i >= 0; ) vector.set(i, values.get(i)); return vector; } /**
/** * Constructs a matrix from the values of the given list. * The values are copied. So subsequent changes in <tt>values</tt> are not reflected in the matrix, and vice-versa. * * @param values The values to be filled into the new matrix. * @return a new matrix. */ public ObjectMatrix1D make(cern.colt.list.ObjectArrayList values) { int size = values.size(); ObjectMatrix1D vector = make(size); for (int i=size; --i >= 0; ) vector.set(i, values.get(i)); return vector; } /**
/** C = A||A||..||A; Constructs a new matrix which is concatenated <tt>repeat</tt> times. Example: <pre> 0 1 repeat(3) --> 0 1 0 1 0 1 </pre> */ public ObjectMatrix1D repeat(ObjectMatrix1D A, int repeat) { int size = A.size(); ObjectMatrix1D matrix = make(repeat * size); for (int i=repeat; --i >= 0; ) { matrix.viewPart(size*i,size).assign(A); } return matrix; } /**
/** C = A||A||..||A; Constructs a new matrix which is concatenated <tt>repeat</tt> times. Example: <pre> 0 1 repeat(3) --> 0 1 0 1 0 1 </pre> */ public ObjectMatrix1D repeat(ObjectMatrix1D A, int repeat) { int size = A.size(); ObjectMatrix1D matrix = make(repeat * size); for (int i=repeat; --i >= 0; ) { matrix.viewPart(size*i,size).assign(A); } return matrix; } /**
/** C = A||B; Constructs a new matrix which is the concatenation of two other matrices. Example: <tt>0 1</tt> append <tt>3 4</tt> --> <tt>0 1 3 4</tt>. */ public ObjectMatrix1D append(ObjectMatrix1D A, ObjectMatrix1D B) { // concatenate ObjectMatrix1D matrix = make(A.size()+B.size()); matrix.viewPart(0,A.size()).assign(A); matrix.viewPart(A.size(),B.size()).assign(B); return matrix; } /**
/** C = A||B; Constructs a new matrix which is the concatenation of two other matrices. Example: <tt>0 1</tt> append <tt>3 4</tt> --> <tt>0 1 3 4</tt>. */ public ObjectMatrix1D append(ObjectMatrix1D A, ObjectMatrix1D B) { // concatenate ObjectMatrix1D matrix = make(A.size()+B.size()); matrix.viewPart(0,A.size()).assign(A); matrix.viewPart(A.size(),B.size()).assign(B); return matrix; } /**