get_rmsd Interface

public interface get_rmsd

Overload to allow extending the interface later


Contents


Module Procedures

private pure subroutine get_rmsd_for_coord(coord1, coord2, rmsd, gradient, trafo, mask)

This subroutine calculates the least-square RMSD of two coordinate sets coord1(3, n) and coord2(3, n) using a method based on quaternion.

Arguments

TypeIntentOptionalAttributesName
real(kind=dp), intent(in) :: coord1(:,:)

Coordinates of the reference structure

real(kind=dp), intent(in) :: coord2(:,:)

Coordinates of the structure to compare

real(kind=dp), intent(out) :: rmsd

Root mean square deviation between the input structure

real(kind=dp), intent(out), optional :: gradient(:,:)

Derivative of the RMSD w.r.t. the coordinates of the reference structure

real(kind=dp), intent(out), optional :: trafo(:,:)

Transformation matrix to rotate into reference structure

logical, intent(in), optional :: mask(:)

Atoms to include into RMSD calculation