fix incorrect copyright attribution from INRIA to DIGITEO
[scilab.git] / scilab / modules / linear_algebra / includes / svd.h
1 /*
2  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3  * Copyright (C) ????-2009 - DIGITEO Bernard HUGUENEY
4  *
5  * This file must be used under the terms of the CeCILL.
6  * This source file is licensed as described in the file COPYING, which
7  * you should have received as part of this distribution.  The terms
8  * are also available at
9  * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
10  *
11  */
12
13
14 /*
15  * perform singular value decomposition (cf. http://www.scilab.org/product/man/svd.html ), MALLOCating temporary buffers as needed.
16  *
17  * in  :
18  *
19  * @param pData double* (doublecomplex*) in / scratch data of the argument matrix
20  * @param iRows int in  nb of rows of the argument matrix
21  * @param iCols int in  nb of cols of the argument matrix
22  * @param complexArg int (bool semantics) in  if argument matrix is complex
23  * @param economy int (bool semantics) in  if economy mode
24  * @param tol double in  treshold for computing rank
25  *
26  * out :
27  *
28  * @param pSV double* out  result matrix s for lhs==1, NULL for lhs >1
29  * @param pU double* out  result matrix U for lhs>1, NULL for lhs ==1
30  * @param pS double* out  result matrix S for lhs>1, NULL for lhs ==1
31  * @param pV double* out  result matrix V for lhs>1, NULL for lhs ==1
32  * @param pRk double* out  result rank for lhs==4, NULL for lhs !=4
33  *
34  * @return 0 success, -1 MALLOC failure >0 Lapack convergence problems
35  *
36  */
37 int iSvdM(double* pData, int iRows, int iCols, int complexArg, int economy, double tol, double* pSV, double* pU, double* pS, double* pV, double* pRk);