Closed matyesz closed 6 years ago
Results should be independent of the curve type as the tests are equal -- we use the piecewise-affine curve class to create affine curves only. Moreover, the current affine code thus simply a duplication of the pwAffine code. Result deviations thus must be caused by a bug. Thank you for reporting!
I traced the bug down and fixed it in commit 787431909c98c148e46689013b1dbfbf0b448172. As written above, the affine code path is currently a copy of the piece-wise affine one. During this initial effort, we forgot one adaptation: In the new AffineLinearSegment_DNC's equals-method, we checked for being an instance of LinearSegment_DNC.
However, this also shows that our operations for piece-wise affine curves are not the most reliable, unfortunately. The broken equals method caused a check in the fifoMux left-over service curve to not recognize a zeroArrivalsCurve. The subsequent "generic" computation failed in the sense that it returned a wrong results. This highlights the importance of issue #7.
In branch v2.5 after merging #2 and adding AffineCurves to Junit tests I recognized that some of the tests fail as they have different results. Should results depend on the Curve type?