Author: luc
Date: Wed May 11 06:57:47 2011
New Revision: 1101763
URL: http://svn.apache.org/viewvc?rev=1101763&view=rev
Log:
Avoid some remaining array copying in ArrayFieldVector, AbstractFieldMAtrix and
AbstractRealMatrix.
JIRA: MATH-573
Modified:
commons/proper/math/trunk/src/main/java/org/apache/commons/math/linear/AbstractFieldMatrix.java
commons/proper/math/trunk/src/main/java/org/apache/commons/math/linear/AbstractRealMatrix.java
commons/proper/math/trunk/src/main/java/org/apache/commons/math/linear/ArrayFieldVector.java
Modified:
commons/proper/math/trunk/src/main/java/org/apache/commons/math/linear/AbstractFieldMatrix.java
URL:
http://svn.apache.org/viewvc/commons/proper/math/trunk/src/main/java/org/apache/commons/math/linear/AbstractFieldMatrix.java?rev=1101763&r1=1101762&r2=1101763&view=diff
==============================================================================
---
commons/proper/math/trunk/src/main/java/org/apache/commons/math/linear/AbstractFieldMatrix.java
(original)
+++
commons/proper/math/trunk/src/main/java/org/apache/commons/math/linear/AbstractFieldMatrix.java
Wed May 11 06:57:47 2011
@@ -764,7 +764,7 @@ public abstract class AbstractFieldMatri
out[col] = sum;
}
- return new ArrayFieldVector<T>(out);
+ return new ArrayFieldVector<T>(out, false);
}
}
Modified:
commons/proper/math/trunk/src/main/java/org/apache/commons/math/linear/AbstractRealMatrix.java
URL:
http://svn.apache.org/viewvc/commons/proper/math/trunk/src/main/java/org/apache/commons/math/linear/AbstractRealMatrix.java?rev=1101763&r1=1101762&r2=1101763&view=diff
==============================================================================
---
commons/proper/math/trunk/src/main/java/org/apache/commons/math/linear/AbstractRealMatrix.java
(original)
+++
commons/proper/math/trunk/src/main/java/org/apache/commons/math/linear/AbstractRealMatrix.java
Wed May 11 06:57:47 2011
@@ -693,7 +693,7 @@ public abstract class AbstractRealMatrix
out[col] = sum;
}
- return new ArrayRealVector(out);
+ return new ArrayRealVector(out, false);
}
}
Modified:
commons/proper/math/trunk/src/main/java/org/apache/commons/math/linear/ArrayFieldVector.java
URL:
http://svn.apache.org/viewvc/commons/proper/math/trunk/src/main/java/org/apache/commons/math/linear/ArrayFieldVector.java?rev=1101763&r1=1101762&r2=1101763&view=diff
==============================================================================
---
commons/proper/math/trunk/src/main/java/org/apache/commons/math/linear/ArrayFieldVector.java
(original)
+++
commons/proper/math/trunk/src/main/java/org/apache/commons/math/linear/ArrayFieldVector.java
Wed May 11 06:57:47 2011
@@ -447,7 +447,7 @@ public class ArrayFieldVector<T extends
for (int i = 0; i < data.length; i++) {
out[i] = data[i].add(d);
}
- return new ArrayFieldVector<T>(out);
+ return new ArrayFieldVector<T>(field, out, false);
}
/** {@inheritDoc} */
@@ -464,7 +464,7 @@ public class ArrayFieldVector<T extends
for (int i = 0; i < data.length; i++) {
out[i] = data[i].subtract(d);
}
- return new ArrayFieldVector<T>(out);
+ return new ArrayFieldVector<T>(field, out, false);
}
/** {@inheritDoc} */
@@ -481,7 +481,7 @@ public class ArrayFieldVector<T extends
for (int i = 0; i < data.length; i++) {
out[i] = data[i].multiply(d);
}
- return new ArrayFieldVector<T>(out);
+ return new ArrayFieldVector<T>(field, out, false);
}
/** {@inheritDoc} */
@@ -498,7 +498,7 @@ public class ArrayFieldVector<T extends
for (int i = 0; i < data.length; i++) {
out[i] = data[i].divide(d);
}
- return new ArrayFieldVector<T>(out);
+ return new ArrayFieldVector<T>(field, out, false);
}
/** {@inheritDoc} */
@@ -516,7 +516,7 @@ public class ArrayFieldVector<T extends
for (int i = 0; i < data.length; i++) {
out[i] = one.divide(data[i]);
}
- return new ArrayFieldVector<T>(out);
+ return new ArrayFieldVector<T>(field, out, false);
}
/** {@inheritDoc} */
@@ -538,7 +538,7 @@ public class ArrayFieldVector<T extends
for (int i = 0; i < data.length; i++) {
out[i] = data[i].multiply(v.getEntry(i));
}
- return new ArrayFieldVector<T>(out);
+ return new ArrayFieldVector<T>(field, out, false);
}
}
@@ -549,7 +549,7 @@ public class ArrayFieldVector<T extends
for (int i = 0; i < data.length; i++) {
out[i] = data[i].multiply(v[i]);
}
- return new ArrayFieldVector<T>(out);
+ return new ArrayFieldVector<T>(field, out, false);
}
/**
@@ -572,7 +572,7 @@ public class ArrayFieldVector<T extends
for (int i = 0; i < data.length; i++) {
out[i] = data[i].divide(v.getEntry(i));
}
- return new ArrayFieldVector<T>(out);
+ return new ArrayFieldVector<T>(field, out, false);
}
}
@@ -583,7 +583,7 @@ public class ArrayFieldVector<T extends
for (int i = 0; i < data.length; i++) {
out[i] = data[i].divide(v[i]);
}
- return new ArrayFieldVector<T>(out);
+ return new ArrayFieldVector<T>(field, out, false);
}
/**
@@ -736,7 +736,7 @@ public class ArrayFieldVector<T extends
final T[] out = buildArray(data.length + 1);
System.arraycopy(data, 0, out, 0, data.length);
out[data.length] = in;
- return new ArrayFieldVector<T>(out);
+ return new ArrayFieldVector<T>(field, out, false);
}
/** {@inheritDoc} */