% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/helpers.R
\name{tucker_congruence}
\alias{tucker_congruence}
\alias{procrustes_rotation}
\title{Tucker's congruence and orthogonal Procrustes rotation}
\usage{
tucker_congruence(x, y)

procrustes_rotation(X, Target)
}
\arguments{
\item{x, y}{Numeric vectors (for Tucker).}

\item{X, Target}{Matrices (for Procrustes).}
}
\value{
Tucker returns a scalar; Procrustes returns the rotated
matrix with a \code{"rotation"} attribute.
}
\description{
Linear-algebra utilities shared by MatchAlign and the recovery
assessments. \code{tucker_congruence(x, y)} computes \code{sum(x*y) / sqrt(sum(x^2) * sum(y^2))}. \code{procrustes_rotation(X, Target)} finds
the orthogonal \code{R} minimising \verb{||X R - Target||_F} and returns
\code{X \%*\% R} with \code{R} attached as attribute \code{"rotation"}.
}
