Ky-Fan norms

Header file

Implementation

The following routines compute the sum of the largest k singular values.

C++ API

Base<F> KyFanNorm(const Matrix<F> &A, Int k)
Base<F> KyFanNorm(const AbstractDistMatrix<F> &A, Int k)
Base<F> SymmetricKyFanNorm(UpperOrLower uplo, const Matrix<F> &A, Int k)
Base<F> SymmetricKyFanNorm(UpperOrLower uplo, const AbstractDistMatrix<F> &A, Int k)
Base<F> HermitianKyFanNorm(UpperOrLower uplo, const Matrix<F> &A, Int k)
Base<F> HermitianKyFanNorm(UpperOrLower uplo, const AbstractDistMatrix<F> &A, Int k)

C API

ElError ElKyFanNorm_s(ElConstMatrix_s A, ElInt k, float* norm)
ElError ElKyFanNorm_d(ElConstMatrix_d A, ElInt k, double* norm)
ElError ElKyFanNorm_c(ElConstMatrix_c A, ElInt k, float* norm)
ElError ElKyFanNorm_z(ElConstMatrix_z A, ElInt k, double* norm)
ElError ElKyFanNormDist_s(ElConstDistMatrix_s A, ElInt k, float* norm)
ElError ElKyFanNormDist_d(ElConstDistMatrix_d A, ElInt k, double* norm)
ElError ElKyFanNormDist_c(ElConstDistMatrix_c A, ElInt k, float* norm)
ElError ElKyFanNormDist_z(ElConstDistMatrix_z A, ElInt k, double* norm)
ElError ElSymmetricKyFanNorm_s(ElUpperOrLower uplo, ElConstMatrix_s A, ElInt k, float* norm)
ElError ElSymmetricKyFanNorm_d(ElUpperOrLower uplo, ElConstMatrix_d A, ElInt k, double* norm)
ElError ElSymmetricKyFanNorm_c(ElUpperOrLower uplo, ElConstMatrix_c A, ElInt k, float* norm)
ElError ElSymmetricKyFanNorm_z(ElUpperOrLower uplo, ElConstMatrix_z A, ElInt k, double* norm)
ElError ElSymmetricKyFanNormDist_s(ElUpperOrLower uplo, ElConstDistMatrix_s A, ElInt k, float* norm)
ElError ElSymmetricKyFanNormDist_d(ElUpperOrLower uplo, ElConstDistMatrix_d A, ElInt k, double* norm)
ElError ElSymmetricKyFanNormDist_c(ElUpperOrLower uplo, ElConstDistMatrix_c A, ElInt k, float* norm)
ElError ElSymmetricKyFanNormDist_z(ElUpperOrLower uplo, ElConstDistMatrix_z A, ElInt k, double* norm)
ElError ElHermitianKyFanNorm_c(ElUpperOrLower uplo, ElConstMatrix_c A, ElInt k, float* norm)
ElError ElHermitianKyFanNorm_z(ElUpperOrLower uplo, ElConstMatrix_z A, ElInt k, double* norm)
ElError ElHermitianKyFanNormDist_c(ElUpperOrLower uplo, ElConstDistMatrix_c A, ElInt k, float* norm)
ElError ElHermitianKyFanNormDist_z(ElUpperOrLower uplo, ElConstDistMatrix_z A, ElInt k, double* norm)

Python API

TODO