SCALAPACK 2.2.2
LAPACK: Linear Algebra PACKage
Loading...
Searching...
No Matches

◆ pbstr2af()

subroutine pbstr2af ( integer  icontxt,
character*1  adist,
integer  m,
integer  n,
integer  nb,
real, dimension( lda, * )  a,
integer  lda,
real  beta,
real, dimension( ldb, * )  b,
integer  ldb,
integer  lcmp,
integer  lcmq,
integer  nint 
)

Definition at line 790 of file pbstran.f.

792*
793* -- PB-BLAS routine (version 2.1) --
794* University of Tennessee, Knoxville, Oak Ridge National Laboratory.
795* April 28, 1996
796*
797* .. Scalar Arguments ..
798 CHARACTER*1 ADIST
799 INTEGER ICONTXT, M, N, NB, LDA, LDB, LCMP, LCMQ, NINT
800 REAL BETA
801* ..
802* .. Array Arguments ..
803 REAL A( LDA, * ), B( LDB, * )
804* ..
805*
806* Purpose
807* =======
808*
809* PBSTR2AF forms T <== A + BETA*T, where T is a scattered block
810* row (or column) copied from a (condensed) block column (or row) of A
811*
812* =====================================================================
813*
814* .. Parameters ..
815 REAL ONE
816 parameter( one = 1.0e+0 )
817* ..
818* .. Local Scalars ..
819 INTEGER JA, JB, K, INTV
820* ..
821* .. External Functions ..
822 LOGICAL LSAME
823 INTEGER ICEIL
824 EXTERNAL lsame, iceil
825* ..
826* .. Intrinsic Functions ..
827 INTRINSIC min
828* ..
829* .. Executable Statements ..
830*
831 IF( lsame( adist, 'R' ) ) THEN
832 intv = nb * lcmq
833 ja = 1
834 jb = 1
835 DO 10 k = 1, iceil( nint, nb )
836 CALL pbsmatadd( icontxt, 'G', m, min( n-jb+1, nb ), one,
837 $ a(1,ja), lda, beta, b(1,jb), ldb )
838 ja = ja + nb
839 jb = jb + intv
840 10 CONTINUE
841*
842* if( LSAME( ADIST, 'C' ) ) then
843*
844 ELSE
845 intv = nb * lcmp
846 ja = 1
847 jb = 1
848 DO 20 k = 1, iceil( nint, nb )
849 CALL pbsmatadd( icontxt, 'G', min( m-jb+1, nb ), n, one,
850 $ a(ja,1), lda, beta, b(jb,1), ldb )
851 ja = ja + nb
852 jb = jb + intv
853 20 CONTINUE
854 END IF
855*
856 RETURN
857*
858* End of PBSTR2AF
859*
integer function iceil(inum, idenom)
Definition iceil.f:2
subroutine pbsmatadd(icontxt, mode, m, n, alpha, a, lda, beta, b, ldb)
Definition pbsmatadd.f:3
#define min(A, B)
Definition pcgemr.c:181
logical function lsame(ca, cb)
Definition tools.f:1724
Here is the call graph for this function:
Here is the caller graph for this function: