MMN-4418

# Twice is enough method for A^{T}A conjugate directions and for biconjugate directions

*József Abaffy*;

*Vittorio Moriggia*;

## Abstract

The aim of the article is to increase the accuracy of $A^{T}A$ conjugate directions and biconjugate directions by applying the twice is enough method to them \cite{P}.
The twice is enough algorithm \ and analysis are due to W. Kahan, cf. Parlett's book \cite{P}, pp. 115-117.
It was shown that while two consecutive orthogonalization steps improved the accuracy of the computation, further orthogonalization steps failed to provide additional benefit, establishing the principle of "twice is enough". In our previous works, we have introduced the "twice is enough" type algorithms for conjugate directions of positive definite symmetric matrices, cf. \cite{Abaffy, AEG,AXZ} and \cite{Abaffy2019}.
These results were also generalized for arbitrary symmetric matrices \cite{Abaffy2017}.
In the paper \cite{Abaffy2019}, we generalized this idea to the computation of conjugate directions. Now, we show that it can be generalized to any matrices; furthermore, we give the conjugate directions of the problem $A^{T}A$ and the biconjugate directions of any square matrix $A$.
With the help of intensive testing \cite{AbaffyATA2019}, we propose specialized algorithms for these problems.
We compared our algorithms to four well-known biconjugate methods that we implemented to obtain the biconjugated directions as well \cite{Broyden2004}.
Using the refined conjugate directions, they can be used to further refine the solution of systems of linear equations iteratively, and to solve $Ax=B$ where $B$ contains all possible right-hand vectors $b$.
We underline
that in the computations of the $A^{T}A$ conjugate directions and the
biconjugate directions we do not need to compute the $A^{T}A$ matrix directly.
Another goal of the article, in addition to the applicability of the twice is enough idea to conjugate and biconjugate directions, is to determine the most accurate methods for producing conjugate and biconjugate directions. For this we will need the \texttt{vpa} option of MATLAB.

Vol. 25 (2024), No. 1, pp. 5-19