The first solution calculates 1+kx normed vectors: the vector u[:,1] of Rp associated to the ky vectors vi[:,1]'s of Rqi,
by maximizing \(\sum_i \mbox{cov}(x*u[,k],y_i*v_i[,k])^2\), with 1+ky norm constraints on the axes.
A component (x)(u[,k]) is associated to ky partial components (yi)(vi)[,k] and to a global component y*V[,k].
\(\mbox{cov}((x)(u[,k]),(y)(V[,k]))^2 = \sum \mbox{cov}((x)(u[,k]),(y_i)(v_i[,k]))^2\).
(y)(V[,k]) is a global component of the components (yi)(vi[,k]).
The second solution is obtained from the same criterion, but after replacing each yi by \(y_i-(y_i)(v_i[,1])(v_i[,1]')\).
And so on for the successive solutions 1,2,...,r. The biggest number of solutions may be r = inf(n, p, qi), when the (x')(yi')(s)
are supposed with full rank; then rmax = min(c(min(py),n,p)). For a set of r solutions, the matrix u'X'YV is diagonal and the
matrices u'X'Yjvj are triangular (good partition of the link by the solutions).
concor.m is the svdcp.m function applied to the matrix x'y.