block_svd() only works when economic=true