Skip to content

Commit 381eee7

Browse files
committed
Update ConjugateGradientSolver.java
1 parent 308c6a1 commit 381eee7

File tree

1 file changed

+11
-5
lines changed

1 file changed

+11
-5
lines changed

src/main/java/org/ojalgo/matrix/task/iterative/ConjugateGradientSolver.java

+11-5
Original file line numberDiff line numberDiff line change
@@ -54,8 +54,13 @@ public ConjugateGradientSolver() {
5454
super();
5555
}
5656

57+
@Override
5758
public double resolve(final List<Equation> equations, final PhysicalStore<Double> solution) {
5859

60+
if (this.isDebugPrinterSet()) {
61+
this.debug(0, NaN, solution);
62+
}
63+
5964
int nbEquations = equations.size();
6065

6166
int iterations = 0;
@@ -133,13 +138,14 @@ public double resolve(final List<Equation> equations, final PhysicalStore<Double
133138
this.debug(iterations, normErr / normRHS, solution);
134139
}
135140

136-
} while ((iterations < limit) && !Double.isNaN(normErr) && !accuracy.isSmall(normRHS, normErr));
141+
} while (iterations < limit && !Double.isNaN(normErr) && !accuracy.isSmall(normRHS, normErr));
137142

138143
// BasicLogger.debug("Done in {} iterations on problem size {}", iterations, solution.count());
139144

140145
return normErr / normRHS;
141146
}
142147

148+
@Override
143149
public MatrixStore<Double> solve(final Access2D<?> body, final Access2D<?> rhs, final PhysicalStore<Double> preallocated) throws RecoverableCondition {
144150

145151
List<Equation> equations = IterativeSolverTask.toListOfRows(body, rhs);
@@ -150,7 +156,7 @@ public MatrixStore<Double> solve(final Access2D<?> body, final Access2D<?> rhs,
150156
}
151157

152158
private R064Store direction(final Structure1D structure) {
153-
if ((myDirection == null) || (myDirection.count() != structure.count())) {
159+
if (myDirection == null || myDirection.count() != structure.count()) {
154160
myDirection = R064Store.FACTORY.make(structure.count(), 1L);
155161
} else {
156162
myDirection.fillAll(ZERO);
@@ -159,7 +165,7 @@ private R064Store direction(final Structure1D structure) {
159165
}
160166

161167
private R064Store preconditioned(final Structure1D structure) {
162-
if ((myPreconditioned == null) || (myPreconditioned.count() != structure.count())) {
168+
if (myPreconditioned == null || myPreconditioned.count() != structure.count()) {
163169
myPreconditioned = R064Store.FACTORY.make(structure.count(), 1L);
164170
} else {
165171
myPreconditioned.fillAll(ZERO);
@@ -168,7 +174,7 @@ private R064Store preconditioned(final Structure1D structure) {
168174
}
169175

170176
private R064Store residual(final Structure1D structure) {
171-
if ((myResidual == null) || (myResidual.count() != structure.count())) {
177+
if (myResidual == null || myResidual.count() != structure.count()) {
172178
myResidual = R064Store.FACTORY.make(structure.count(), 1L);
173179
} else {
174180
myResidual.fillAll(ZERO);
@@ -177,7 +183,7 @@ private R064Store residual(final Structure1D structure) {
177183
}
178184

179185
private R064Store vector(final Structure1D structure) {
180-
if ((myVector == null) || (myVector.count() != structure.count())) {
186+
if (myVector == null || myVector.count() != structure.count()) {
181187
myVector = R064Store.FACTORY.make(structure.count(), 1L);
182188
} else {
183189
myVector.fillAll(ZERO);

0 commit comments

Comments
 (0)