nag_zpttrs (f07jsc) computes the solution to a complex system of linear equations
, where
is an
by
Hermitian positive definite tridiagonal matrix and
and
are
by
matrices, using the
factorization returned by
nag_zpttrf (f07jrc).
nag_zpttrs (f07jsc) should be preceded by a call to
nag_zpttrf (f07jrc), which computes a modified Cholesky factorization of the matrix
as
where
is a unit lower bidiagonal matrix and
is a diagonal matrix, with positive diagonal elements. nag_zpttrs (f07jsc) then utilizes the factorization to solve the required equations. Note that the factorization may also be regarded as having the form
, where
is a unit upper bidiagonal matrix.
Anderson E, Bai Z, Bischof C, Blackford S, Demmel J, Dongarra J J, Du Croz J J, Greenbaum A, Hammarling S, McKenney A and Sorensen D (1999)
LAPACK Users' Guide (3rd Edition) SIAM, Philadelphia
http://www.netlib.org/lapack/lug
The computed solution for a single right-hand side,
, satisfies an equation of the form
where
and
is the
machine precision. An approximate error bound for the computed solution is given by
where
, the condition number of
with respect to the solution of the linear equations. See Section 4.4 of
Anderson et al. (1999) for further details.
Following the use of this function
nag_zptcon (f07juc) can be used to estimate the condition number of
and
nag_zptrfs (f07jvc) can be used to obtain approximate error bounds.
nag_zpttrs (f07jsc) makes calls to BLAS and/or LAPACK routines, which may be threaded within the vendor library used by this implementation. Consult the documentation for the vendor library for further information.
Please consult the
x06 Chapter Introduction for information on how to control and interrogate the OpenMP environment used within this function. Please also consult the
Users' Note for your implementation for any additional implementation-specific information.
The real analogue of this function is
nag_dpttrs (f07jec).
This example solves the equations
where
is the Hermitian positive definite tridiagonal matrix
and