Hello,

I have a problem of the kind:

G(i) = (invM.P).G(i+1) +invM.(d -R.b),

where M, P and R are square tri-diagonal matrices, invM is the inverse of M, G(i) and G(i+1) are the linearised solution vectors (given G(i+1), G(i) is determined using above), and "d" and "b" are vectors.

The problem is, M at grid point (i) depends on M(i-1), so I #cannot# reduce the problem to:

G(i) = invM(i).H(i+1), where H(i+1)=P.G + (d-R.b),

because I first need to calculate alpha(i)=invM(i).P(i) for all i, before calculating G(i) from G(i+1).

So I would like to directly invert M, using MatLUFactor and MatMatSolve. The problem here is, my code is written in Fortran 90, and there is a note on MatLUFactor manual page saying: "fortran interface is not autogenerated as the f90 interface defintion cannot be generated correctly [due to MatFactorInfo] "

Does this mean the MatLUFactor routine cannot be used in Fortran? Or is there a workaround?

Many Thanks,

Koki

Reply via email to