SPEC 3.20
Stepped Pressure Equilibrium Code
|
Solves Beltrami/vacuum (linear) system, given matrices. More...
Functions/Subroutines | |
subroutine | mp00ac (Ndof, Xdof, Fdof, Ddof, Ldfjac, iflag) |
Solves Beltrami/vacuum (linear) system, given matrices.unpacking fluxes, helicity multiplier More... | |
subroutine | rungmres (n, nrestart, mu, vvol, rhs, sol, ipar, fpar, wk, nw, guess, a, au, jau, ju, iperm, ierr) |
run GMRES More... | |
subroutine | matvec (n, x, ax, a, mu, vvol) |
compute a.x by either by coumputing it directly, or using a matrix free method More... | |
subroutine | prec_solve (n, vecin, vecout, au, jau, ju, iperm) |
apply the preconditioner More... | |
Solves Beltrami/vacuum (linear) system, given matrices.
subroutine rungmres | ( | integer | n, |
integer | nrestart, | ||
real | mu, | ||
integer | vvol, | ||
real, dimension(1:n) | rhs, | ||
real, dimension(1:n) | sol, | ||
integer, dimension(16) | ipar, | ||
real, dimension(16) | fpar, | ||
real, dimension(1:nw) | wk, | ||
integer | nw, | ||
real, dimension(n) | guess, | ||
real, dimension(*) | a, | ||
real, dimension(*) | au, | ||
integer, dimension(*) | jau, | ||
integer, dimension(*) | ju, | ||
integer, dimension(*) | iperm, | ||
integer | ierr | ||
) |
run GMRES
n | |
nrestart | |
mu | |
vvol | |
rhs | |
sol | |
ipar | |
fpar | |
wk | |
nw | |
guess | |
a | |
au | |
jau | |
ju | |
iperm | |
ierr |
References inputlist::epsgmres, allglobal::liluprecond, matvec(), inputlist::nitergmres, constants::one, prec_solve(), and constants::zero.
Referenced by mp00ac().
subroutine matvec | ( | integer, intent(in) | n, |
real, dimension(1:n) | x, | ||
real, dimension(1:n) | ax, | ||
real, dimension(*) | a, | ||
real | mu, | ||
integer, intent(in) | vvol | ||
) |
compute a.x by either by coumputing it directly, or using a matrix free method
n | |
x | |
ax | |
a | |
mu | |
vvol |
References allglobal::dmd, intghs(), allglobal::iquad, inputlist::lrad, allglobal::mn, mtrxhs(), allglobal::notmatrixfree, constants::one, packab(), and constants::zero.
Referenced by rungmres().
subroutine prec_solve | ( | integer | n, |
real, dimension(*) | vecin, | ||
real, dimension(*) | vecout, | ||
real, dimension(*) | au, | ||
integer, dimension(*) | jau, | ||
integer, dimension(*) | ju, | ||
integer, dimension(*) | iperm | ||
) |
apply the preconditioner
n | |
vecin | |
vecout | |
au | |
jau | |
ju | |
iperm |
Referenced by rungmres().