PartialLeastSquareDifference#
- class PartialLeastSquareDifference(target, template_coordinates, template_weights, template_mask_coordinates=None, target_mask=None, negate_score=True, return_gradient=False, interpolation_order=1, **kwargs)[source]#
Bases:
_MatchCoordinatesToDensity
The Partial Least Square Difference (PLSQ) between the target \(f\) and the template \(g\) is calculated as:
\[\text{d(f,g)} = \sum_{i=1}^{n} \| f(\mathbf{p}_i) - g(\mathbf{q}_i) \|^2\]- Parameters:
- targetNDArray
A d-dimensional target to match the template coordinate set to.
- template_coordinatesNDArray
Template coordinate array with shape (d,n).
- template_weightsNDArray
Template weight array with shape (n,).
- template_mask_coordinatesNDArray, optional
Template mask coordinates with shape (d,n).
- target_maskNDArray, optional
A d-dimensional mask to be applied to the target.
- negate_scorebool, optional
Whether the final score should be multiplied by negative one. Default is True.
- return_gradientbool, optional
Invoking __call_ returns a tuple of score and parameter gradient. Default is False.
- **kwargsDict, optional
Keyword arguments propagated to downstream functions.
References
[1]Daven Vasishtan and Maya Topf, “Scoring functions for cryoEM density fitting”, Journal of Structural Biology, vol. 174, no. 2, pp. 333–343, 2011. DOI: https://doi.org/10.1016/j.jsb.2011.01.012
Methods
Compute the matching score for the given transformation parameters.
Computes the score after a given rotation.
Computes the score after a given translation.