MathTransform ctr = getRandomTransform1D();
ctr.transform(sourcePt, 0, targetPt, 0, numPts);
for (int i=random.nextInt(2)+1; --i>=0;) {
final MathTransform1D step = getRandomTransform1D();
ctr = (MathTransform1D) factory.createConcatenatedTransform(ctr, step);
step.transform(targetPt, 0, targetPt, 0, numPts);
}
ctr.transform(sourcePt, 0, compare, 0, numPts);
final double EPS = Math.pow(10, -5+countNonlinear(ctr));
for (int i=0; i<numPts; i++) {
delta[i] = Math.max(1E-9, Math.abs(targetPt[i]*EPS));