RotationOptimizer.rotate(maxiter=10, check_gradient=False, verbose=False, check_bound=False)[source]

Optimize the rotation of two separate model blocks jointly.

If some variable is the dot product of two Gaussians, rotating the two Gaussians optimally can make the inference algorithm orders of magnitude faster.

First block is rotated with \mathbf{R} and the second with \mathbf{R}^{-T}.

Blocks must have methods: bound(U,s,V) and rotate(R).