grid_tools  1.13.0
pmat2::l1ubb Interface Reference

Private Member Functions

subroutine l1ubb (m, mah1, mah2, mbh1, mbh2, a, b)
 [L]*[D]*[U] factoring of band-matrix [A], modify [B] –> [D**-1]*[B] [L] lower triangular with unit main diagonal [D] diagonal matrix [U] upper triangular with unit main diagonal [B] associated band matrix with same number of rows as [A] lower triangular elements of [A] by [D**-1]*[L]*[D], the upper by [U], replace matrix [B] by [D**-1]*[B]. More...
 
subroutine dl1ubb (m, mah1, mah2, mbh1, mbh2, a, b)
 Double precision version of L1UBB. More...
 

Detailed Description

Definition at line 66 of file pmat2.f90.

Constructor & Destructor Documentation

◆ l1ubb()

subroutine pmat2::l1ubb::l1ubb ( integer(spi), intent(in)  m,
integer(spi), intent(in)  mah1,
integer(spi), intent(in)  mah2,
integer(spi), intent(in)  mbh1,
integer(spi), intent(in)  mbh2,
real(sp), dimension(m,-mah1:mah2), intent(inout)  a,
real(sp), dimension(m,-mbh1:mbh2), intent(inout)  b 
)
private

[L]*[D]*[U] factoring of band-matrix [A], modify [B] –> [D**-1]*[B] [L] lower triangular with unit main diagonal [D] diagonal matrix [U] upper triangular with unit main diagonal [B] associated band matrix with same number of rows as [A] lower triangular elements of [A] by [D**-1]*[L]*[D], the upper by [U], replace matrix [B] by [D**-1]*[B].

Parameters
[in]mNumber of rows of A and B
[in]mah1number of subdiagonals of A
[in]mah2number of superdiagonals of A
[in]mbh1number of subdiagonals of B
[in]mbh2number of superdiagonals of B
[in,out]ainput as band matrix, output as lower and upper triangulars with 1s implicitly assumed to lie on the main diagonal. The product of these triangular matrices is [D**-1]*[A], where [D] is a diagonal matrix.
[in,out]bInput single precision band matrix B; output [D**-1 B]
Author
R. J. Purser, Tsukasa Fujita (JMA)
Date
1996

Definition at line 733 of file pmat2.f90.

Member Function/Subroutine Documentation

◆ dl1ubb()

subroutine pmat2::l1ubb::dl1ubb ( integer(spi), intent(in)  m,
integer(spi), intent(in)  mah1,
integer(spi), intent(in)  mah2,
integer(spi), intent(in)  mbh1,
integer(spi), intent(in)  mbh2,
real(dp), dimension(m,-mah1:mah2), intent(inout)  a,
real(dp), dimension(m,-mbh1:mbh2), intent(inout)  b 
)
private

Double precision version of L1UBB.

Parameters
[in]mNumber of rows of A and B
[in]mah1left half-width of fortran array A
[in]mah2right half-width of fortran array A
[in]mbh1left half-width of fortran array B
[in]mbh2left half-width of fortran array B
[in,out]aInput double precision band matrix A; output factors encoded as [D**-1 * L * D]+[U-I]
[in,out]bInput double precision band matrix B; output [D**-1 B]
Author
R. J. Purser, Tsukasa Fujita (JMA)
Date
1999

Definition at line 771 of file pmat2.f90.


The documentation for this interface was generated from the following file: