20 lines
1.6 KiB
TeX
20 lines
1.6 KiB
TeX
\section*{Problem 5}
|
|
|
|
\subsection*{a)}
|
|
We used the Jacobi's rotation method to solve $\boldsymbol{A} \vec{v} = \lambda \vec{v}$, for $\boldsymbol{A}_{(N \cross N)}$ with $N \in [5, 100]$,
|
|
and increased the matrix size by $3$ rows and columns for every new matrix generated. The number of similarity transformations performed for a tridiagonal matrix
|
|
of is presented in Figure \ref{fig:transform}. We chose to run the program using dense matrices of same size as the tridiagonal matrices, to compare the scaling data.
|
|
What we see is that the number of similarity transformations necessary to solve the system is proportional to the matrix size.
|
|
\begin{figure}[h]
|
|
\centering
|
|
\includegraphics[width=0.8\textwidth]{images/transform.pdf}
|
|
\caption{Similarity transformations performed as a function of matrix size (N), data is presented in a logarithmic scale.}
|
|
\label{fig:transform}
|
|
\end{figure}
|
|
|
|
\subsection*{b)}
|
|
For both the tridiagonal and dense matrices we are checking off-diagonal elements above the main diagonal, since these are symmetric matrices.
|
|
The max value is found at index $(k,l)$ and for every rotation of the matrix, we update the remaining elements along row $k$ and $l$. This can lead to an increased
|
|
value of off-diagonal elements, that previously were close to zero, and extra rotations has to be performed due to these elements. Which suggest that the
|
|
number of similarity transformations perfomed on a matrix does not depend on its initial number of non-zero elements, making the Jacobi's rotation algorithm as
|
|
computationally expensive for both dense and tridiagonal matrices of size $N \cross N$. |