This manual relates to an old release of the Library.
The documentation for the current release is also available on this site.

NAG AD Library
f11ja (real_symm_precon_ichol)

Settings help

AD Name Style:


AD Specification Language:

1 Purpose

f11ja is the AD Library version of the primal routine f11jaf. Based (in the C++ interface) on overload resolution, f11ja can be used for primal, tangent and adjoint evaluation. It supports tangents and adjoints of first order.

2 Specification

C++ Interface
#include <dco.hpp>
#include <nagad.h>
namespace nag {
namespace ad {
void f11ja ( handle_t &ad_handle, const Integer &n, const Integer &nnz, ADTYPE a[], const Integer &la, Integer irow[], Integer icol[], const Integer &lfill, const ADTYPE &dtol, const char *mic, const ADTYPE &dscale, const char *pstrat, Integer ipiv[], Integer istr[], Integer &nnzc, Integer &npivm, Integer iwork[], const Integer &liwork, Integer &ifail)
}
}
The function is overloaded on ADTYPE which represents the type of active arguments. ADTYPE may be any of the following types:
double,
dco::ga1s<double>::type,
dco::gt1s<double>::type
Note: this function can be used with AD tools other than dco/c++. For details, please contact NAG.

3 Description

f11ja is the AD Library version of the primal routine f11jaf.
f11jaf computes an incomplete Cholesky factorization of a real sparse symmetric matrix, represented in symmetric coordinate storage format. This factorization may be used as a preconditioner in combination with f11jcf. For further information see Section 3 in the documentation for f11jaf.

4 References

Chan T F (1991) Fourier analysis of relaxed incomplete factorization preconditioners SIAM J. Sci. Statist. Comput. 12(2) 668–680
Markowitz H M (1957) The elimination form of the inverse and its application to linear programming Management Sci. 3 255–269
Meijerink J and Van der Vorst H (1977) An iterative solution method for linear systems of which the coefficient matrix is a symmetric M-matrix Math. Comput. 31 148–162
Salvini S A and Shaw G J (1995) An evaluation of new NAG Library solvers for large sparse symmetric linear systems NAG Technical Report TR1/95
Van der Vorst H A (1990) The convergence behaviour of preconditioned CG and CG-S in the presence of rounding errors Lecture Notes in Mathematics (eds O Axelsson and L Y Kolotilina) 1457 Springer–Verlag

5 Arguments

In addition to the arguments present in the interface of the primal routine, f11ja includes some arguments specific to AD.
A brief summary of the AD specific arguments is given below. For the remainder, links are provided to the corresponding argument from the primal routine. A tooltip popup for all arguments can be found by hovering over the argument name in Section 2 and in this section.
1: ad_handlenag::ad::handle_t Input/Output
On entry: a configuration object that holds information on the differentiation strategy. Details on setting the AD strategy are described in AD handle object in the NAG AD Library Introduction.
2: n – Integer Input
3: nnz – Integer Input
4: a(la) – ADTYPE array Input/Output
Please consult Overwriting of Inputs in the NAG AD Library Introduction.
5: la – Integer Input
6: irow(la) – Integer array Input/Output
7: icol(la) – Integer array Input/Output
8: lfill – Integer Input
9: dtolADTYPE Input
10: mic – character Input
11: dscaleADTYPE Input
12: pstrat – character Input
13: ipiv(n) – Integer array Input/Output
14: istr(n+1) – Integer array Output
15: nnzc – Integer Output
16: npivm – Integer Output
17: iwork(liwork) – Integer array Workspace
18: liwork – Integer Input
19: ifail – Integer Input/Output

6 Error Indicators and Warnings

f11ja preserves all error codes from f11jaf and in addition can return:
ifail=-89
An unexpected AD error has been triggered by this routine. Please contact NAG.
See Error Handling in the NAG AD Library Introduction for further information.
ifail=-199
The routine was called using a strategy that has not yet been implemented.
See AD Strategies in the NAG AD Library Introduction for further information.
ifail=-444
A C++ exception was thrown.
The error message will show the details of the C++ exception text.
ifail=-899
Dynamic memory allocation failed for AD.
See Error Handling in the NAG AD Library Introduction for further information.

7 Accuracy

Not applicable.

8 Parallelism and Performance

f11ja is not threaded in any implementation.

9 Further Comments

None.

10 Example

A NAG AD Library example is not yet available, please refer to the NAG AD Library Introduction for information on calling routines from the AD Library.