diff --git a/nifty6/sugar.py b/nifty6/sugar.py
index a46a284c4a3c19180a47207047e29c075264b089..8a682539cc168aff1eeb6330e1b28d2f1cddae51 100644
--- a/nifty6/sugar.py
+++ b/nifty6/sugar.py
@@ -498,7 +498,7 @@ def calculate_position(operator, output):
     else:
         cov = 1e-3*output.val.max()**2
     invcov = ScalingOperator(output.domain, cov).inverse
-    d = output + invcov.draw_sample(dtype=output.dtype, from_inverse=True)
+    d = output + invcov.draw_sample_with_dtype(dtype=output.dtype, from_inverse=True)
     lh = GaussianEnergy(d, invcov) @ operator
     H = StandardHamiltonian(
         lh, ic_samp=GradientNormController(iteration_limit=200))