1TO DO LIST
2
3
4
5(optional optimization) - do all the allocations in the allocate part 
6                        - support static matrices
7                        - return a error at compilation time when using integer matrices (int, long, std::complex<int>, ...)
8
9to finish the algorithm :
10			-implement the last part of the algorithm as described on the reference paper. 
11			    You may find more information on that part on this paper
12
13			-to replace the call to JacobiSVD at the end of the divide algorithm, just after the call to 
14			    deflation.
15
16(suggested step by step resolution)
17                       0) comment the call to Jacobi in the last part of the divide method and everything right after
18                               until the end of the method. What is commented can be a guideline to steps 3) 4) and 6)
19                       1) solve the secular equation (Characteristic equation) on the values that are not null (zi!=0 and di!=0), after the deflation
20                               wich should be uncommented in the divide method
21                       2) remember the values of the singular values that are already computed (zi=0)
22                       3) assign the singular values found in m_computed at the right places (with the ones found in step 2) )
23                               in decreasing order
24                       4) set the firstcol to zero (except the first element) in m_computed
25                       5) compute all the singular vectors when CompV is set to true and only the left vectors when
26                               CompV is set to false
27                       6) multiply naiveU and naiveV to the right by the matrices found, only naiveU when CompV is set to
28                               false, /!\ if CompU is false NaiveU has only 2 rows
29                       7) delete everything commented in step 0)
30