Cyclic pentadiagonal solve via Sherman-Morrison-Woodbury (rank 4):
A_cyc = A_np + UC with U = [e_1|e_2|e_{n-1}|e_n]. z holds
A_np^{-1}U (see omptgt_tdsops_t%penta_z_dev); each line forms
M = I + CZ, solves Mc = Cy and applies y -= Zc.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(inout) | :: | du(SZ,n,n_groups) | |||
| real(kind=dp), | intent(in) | :: | u(SZ,n,n_groups) | |||
| real(kind=dp), | intent(in) | :: | u_s(SZ,4,n_groups) | |||
| real(kind=dp), | intent(in) | :: | u_e(SZ,4,n_groups) | |||
| integer, | intent(in) | :: | n_tds | |||
| integer, | intent(in) | :: | n_rhs | |||
| real(kind=dp), | intent(in) | :: | coeffs_s(9,4) | |||
| real(kind=dp), | intent(in) | :: | coeffs_e(9,4) | |||
| real(kind=dp), | intent(in) | :: | coeffs(9) | |||
| real(kind=dp), | intent(in) | :: | ffr(n_rhs) | |||
| real(kind=dp), | intent(in) | :: | faf(n_rhs) | |||
| real(kind=dp), | intent(in) | :: | fsa(n_rhs) | |||
| real(kind=dp), | intent(in) | :: | fbw(n_rhs) | |||
| real(kind=dp), | intent(in) | :: | beta_lhs | |||
| real(kind=dp), | intent(in) | :: | beta_lhs_s | |||
| real(kind=dp), | intent(in) | :: | alp | |||
| real(kind=dp), | intent(in) | :: | bet | |||
| real(kind=dp), | intent(in) | :: | z(n_tds,4) | |||
| integer, | intent(in) | :: | n | |||
| integer, | intent(in) | :: | n_groups |