<divid="projectbrief">The final aim of our program is to implement numerical methods for the calculation of the eigenvalues and eigenvectors of a matrix.</div>
<divclass="textblock"><p>Programming Concepts in Scientific Programming EPFL, Master class</p>
<p>Prof. Guillaume Anciaux</p>
<p>TAs : A. Nielsen & L. Pegolotti</p>
<p>Students: Bonifazi Alberto & D’Urso Salvatore</p>
<p>The final aim of our program is to implement numerical methods for the calculation of the eigenvalues and eigenvectors of a matrix. In particular, the following methods have been applied:</p>
<oltype="1">
<li>Power method;</li>
<li>Inverse Power method;</li>
<li>Power method with Shift;</li>
<li>Inverse Power method with Shift;</li>
</ol>
<p>The whole project has been developed using CLion. For this reason, we recommend running it on this convenient idle. It’s also possible to compile it with cmake, following these instructions, while in the folder. mkdir build cd build cmake make .. make ./Eigenvalue To clone the repository, you can run from the terminal git clone ssh://git.ch/source/eigpro.git</p>
<h2>Program Usage</h2>
<p>The functioning of the program is very simple. It has a menu with different options. It’s possible to load your own matrix and perform the different operations. If you are interested in finding all eigenvalues of a matrix, it is possible to proceed as follow: first call the power and inverse method to find the highest and lowest eigenvalue, then call the shift inverse function setting the shift between these two eigenvalues until you find all the remaining ones. In order to get an idea of the potential of the program it is possible to run some tests (select 3), and in automatic the program runs 2 different tests on 7 different matrices. The output of the operations is shown on the screen.</p>
<h3>Load matrix</h3>
<p>```The matrixes are imported as text file and it must have the following formatting:</p>
<oltype="1">
<li>The first row indicates the size of the square matrix (Ex: 3 indicates a 3 x 3 matrix);</li>
<li>The following lines represent the content of the matrix, with the numbers separated by a space, and a return to go to the next row;</li>
<li>The final line: if it is 0, it indicates that we want to perform the numerical calculation with the Power method and/or Inverse Power method; if it is different from 0, it indicates that we want to perform the numerical calculation with the Power method with Shift and/or Inverse Power method with Shift. In this case, the final value represents the Shift amount. </li>
</ol>
</div></div><!-- contents -->
<!-- start footer part -->
<hrclass="footer"/><addressclass="footer"><small>
Generated by  <ahref="http://www.doxygen.org/index.html">