I am currently working with very small numbers and hence in order to increase Matlab's precision I have made use of Matlab's vpa function which turns a $n\times n$ double into a $n\times n$ symbolic data structure. I wish to compute the top 20 singular values for such a matrix however the only Matlab function which can compute singular values for the symbolic structure is svd. This however computes all singular values, and when we consider large matrices (e.g. $2^{12}\times 2^{12}$) this becomes computationally expensive.
I am aware that the functions svds exists which computes a subset of the singular values however this is incompatible with the symbolic data type. Is anyone aware of a Matlab function which computes a subset of all the singular values that can interpret the symbolic data structure that is also not computationally expensive?