Routines (alphabetical) > Routines: S > SPRSAX

# SPRSAX

The SPRSAX function takes a row-indexed sparse array created by the SPRSIN function and multiplies it by an n-element vector to its right.

## Examples

; Begin by creating an array A:
A = [[ 5.0, 0.0, 0.0], $
[ 3.0, -2.0, 0.0], $
[ 4.0, -1.0, 0.0]]
; Define the right-hand vector:
X = [1.0, 2.0, -1.0]
; Convert to sparse format, then multiply by X:
result = SPRSAX(SPRSIN(A),X)
; Print the result:
PRINT, result

IDL prints:

5.00000 -1.00000 2.00000

## Syntax

Result = SPRSAX( A, X [, /DOUBLE] )

## Return Value

Returns a n-element vector.

## Arguments

### A

A row-indexed sparse array created by the SPRSIN function.

Note: If SPRSAX is complex then only the real part is used for the computation.

### X

An n-element right hand vector.

## Keywords

### DOUBLE

Set this keyword to force the computation to be done in double-precision arithmetic.

## Version History

4.0 | Introduced

## Resources and References

SPRSAX is based on the routine `sprsax` described in section 2.7 of Numerical Recipes in C: The Art of Scientific Computing (Second Edition), published by Cambridge University Press, and is used by permission.

## See Also

FULSTR, LINBCG, SPRSAB, SPRSIN, SPRSTP, READ_SPR, WRITE_SPR