1
    ILArray<double> CU = new double[256, 256];
    ILArray<double> CV = new double[256, 256];
    ILArray<double> S = ILMath.svd(matrixC, CU, CV, true, true);

While Calculating SVD in ILnumerics,I am not getting the Correct Value of S as compare to result obtain from Matlab.But I am getting the Correct Value of U and V.

Why is this so ?? I am doing something wrong on this.Please Help.

Thanks and Regards,

Subin Bajracharya

1 Answers1

1

SVDs results are not unique. In order to judge the correctness, consider testing for equaltiy of the result of multiplying the output of SVD with the original matrix, recognizing round off errors.

See: https://en.wikipedia.org/wiki/Singular_value_decomposition

Haymo Kutschbach
  • 3,322
  • 1
  • 17
  • 25