sirt: SIRT Algorithm for sparse matrix inversion

Description Usage Arguments Details Value Author(s) References See Also Examples

View source: R/sirt.R

Description

Row action method for inversion of matrices, using SIRT algorithm.

Usage

1
sirt(A, b, tolx, maxiter)

Arguments

A

Design Matrix

b

vector, Right hand side

tolx

numeric, tolerance for stopping

maxiter

integer, Maximum iterations

Details

Iterates until conversion

Value

Solution vector

Author(s)

Jonathan M. Lees<[email protected]>

References

Lees, J. M. and R. S. Crosson (1989): Tomographic inversion for three-dimensional velocity structure at Mount St. Helens using earthquake data, J. Geophys. Res., 94(B5), 5716-5728.

See Also

art, kac

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
set.seed(2015)
G = setDesignG()
###  Setup the true model.
mtruem=matrix(rep(0, 16*16), ncol=16,nrow=16);

mtruem[9,9]=1; mtruem[9,10]=1; mtruem[9,11]=1;
mtruem[10,9]=1; mtruem[10,11]=1;
mtruem[11,9]=1; mtruem[11,10]=1; mtruem[11,11]=1;
mtruem[2,3]=1; mtruem[2,4]=1;
mtruem[3,3]=1; mtruem[3,4]=1;

###  reshape the true model to be a vector
mtruev=as.vector(mtruem);

###  Compute the data.
dtrue=G %*% mtruev;

###  Add the noise.

d=dtrue+0.01*rnorm(length(dtrue));

msirt<-sirt(G,d,0.01,200)
par(mfrow=c(1,2))
imagesc(matrix(mtruem,16,16) , asp=1 , main="True Model" );

imagesc(matrix(msirt,16,16) , asp=1 , main="SIRT Solution" );

PEIP documentation built on Jan. 20, 2018, 9:03 a.m.