Modified to more closely resemble functionality of VI_svd_f.h in c_VSIP_src directory.
Should be more numerically stable.