SyTen

◆ rank() [3/4]

Index syten::rank ( DenseTensor< 2, std::complex< double > > &&  a)

Estimates the rank of a complex matrix A using QR with pivoting.

Does not perform row sorting or column scaling. For optimal stability, you should do both, using scale_columns_2norm and sort_rows_infnorm.

References syten::DynArray< Type >::begin(), syten::DynArray< Type >::end(), logGE(), std::min(), select_cutoff_jump(), select_cutoff_relative(), and syten::DynArray< Type >::size().

Referenced by syten::T3N::apply_operator_itrunc(), syten::Deparallelise::cols(), syten::Delinearise::cols(), compat_exact_equal(), construct_product_target_order_a(), construct_product_target_order_b(), syten::CudaDenseTensorImpl::cuda_transpose_kernel(), syten::CudaDenseTensorImpl::cuda_transpose_recursive(), syten::CudaDenseTensorImpl::cuda_transpose_recursive_impl(), syten::DenseIter< rank >::DenseIter(), syten::DenseIterDual< rank >::DenseIterDual(), syten::DenseIterRestricted< rank >::DenseIterRestricted(), syten::SparseTensor< rank, Scalar >::dim(), dropDummy(), syten::STensorImpl::STensor::e(), expansion(), syten::T3N::expectation_rec(), genTrivialCGC(), syten::OffsetDenseTensorImpl::OffsetDenseTensor< rank, Scalar >::getCoordinate(), syten::DenseImpl::getCoordinate(), syten::Tensor< rank >::getReducedDims(), syten::Tensor< rank >::getTotalDims(), syten::IPEPSv2::State::has_complete_dl(), syten::IdentityDenseTensorImpl::IdentityDenseTensor< rank, Scalar >::IdentityDenseTensor(), syten::Pyten::init_dense_tensor(), syten::Pyten::init_sparse(), syten::Pyten::init_tensor_decomp(), insertDummy(), insertIOFullHalf(), insertIOSplitHalf(), is_perm_fermionic(), syten::DenseProduct::is_trivial_order_a(), syten::DenseProduct::is_trivial_order_b(), kronVector(), multi_transpose(), syten::T3N::State::multiply_rec(), syten::IdentityDenseTensorImpl::normSqd(), syten::IdentityDenseTensorImpl::IdentityDenseTensor< rank, Scalar >::operator DenseTensor< rank, Scalar >(), syten::SparseTensor< rank, Scalar >::operator()(), syten::SparseCoordComparator< rank >::operator()(), operator*=(), std::operator+(), syten::DenseIter< rank >::operator++(), syten::DenseIterDual< rank >::operator++(), syten::DenseIterRestricted< rank >::operator++(), operator+=(), operator-=(), syten::ArrayImpl::operator<<(), operator<<(), syten::SparseTensor< rank, Scalar >::operator[](), syten::IdentityDenseTensorImpl::IdentityDenseTensor< rank, Scalar >::operator[](), syten::T3N::overlap_rec(), partial_abs(), project(), rank(), read(), readTabulatedCmplx(), readTabulatedReal(), syten::STensorImpl::STensor::rename(), syten::DenseProduct::reverse_dims_to_vec(), syten::Deparallelise::rows(), syten::DenseSolve::solve_cm(), sumProd(), syten::SVD::svd(), syten::Tensor< rank >::Tensor(), syten::T3N::translate(), transpose(), transpose_exchange(), transpose_iter_rseq(), transpose_recursive(), transpose_recursive_impl(), syten::TensorBlock< rank >::updateTransform(), and validateCGCTensor().

+ Here is the call graph for this function:
+ Here is the caller graph for this function: