Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ dapply_poly_sdia(3DXML) — Extended Math Library 3.4

Media Vault

Software Library

Restoration Projects

Artifacts Sought

DAPPLY_POLY_SDIA(3DXML)  —  Subroutines

Digital

Name

dapply_poly_sdia − Apply polynomial preconditioner for symmetric diagonal storage (Serial and Parallel Versions)

FORMAT

DAPPLY_POLY_SDIA (job, p, a, ia, ndim, nz, x, y, ndeg, n)

Arguments

jobinteger∗4
On entry, defines the operation to be performed:

job = 0 : y = inverse(Q) ∗ x

job = 1 : y = inverse(transp(Q)) ∗ x
where Q is the polynomial preconditioner.
On exit, job is unchanged. 

preal∗8
On entry, a one-dimensional array of length at least 3∗n that contains information for use by the polynomial preconditioner and  workspace.
On exit, the part of array P that contains the information related to the polynomial preconditioner is unchanged. The part used as workspace is overwritten.

areal∗8
On entry, a two-dimensional array with dimensions ndim by nz containing the nonzero elements of the matrix A.
On exit, a is unchanged. 

iainteger∗4
On entry, a one-dimensional array of length at least nz,  containing the distances of the diagonals from the main diagonal.
On exit, ia is unchanged. 

ndiminteger∗4
On entry, the leading dimension of array A, as declared in the calling subprogram; ndim >= n.
On exit, ndim is unchanged. 

nzinteger∗4
On entry, the number of diagonals stored in array A.
On exit, nz is unchanged. 

xreal∗8
On entry, a one-dimensional array of length at least n, containing the elements of vector x, accessed with unit increment.
On exit, x is unchanged. 

yreal∗8
On entry, a one-dimensional array of length at least n.
On exit, array Y is overwritten by the output vector y. The elements of array Y are accessed with unit increment.

ndeginteger∗4
On entry, the degree of the polynomial in the polynomial preconditioner.
On exit, ndeg is unchanged. 

ninteger∗4
On entry, the order of the matrix A.
On exit, n is unchanged. 

Description

DAPPLY_POLY_SDIA applies the polynomial preconditioner for a sparse matrix stored using the symmetric diagonal storage scheme.  The input vector, p, contains information for use by the routine.  This vector is generated by a call to the routine DCREATE_POLY_SDIA prior to a call to one of the iterative solvers with polynomial preconditioning. Depending on the value of the input parameter job, DAPPLY_POLY_SDIA operates on either the preconditioning matrix or its transpose. 

This routine is available in both serial and parallel versions. The routine names and parameter list are identical for both versions. For information about linking to the serial or to the parallel library, refer to the DXML Reference Manual. 

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026