! Replaces ZHERK 16 procedures ! Level 3 COMPLEX (ZHERK) ! . alpha op_a beta lower c ! 301 any H any L c < alpha a(H) a + beta c ! 302 any H any c < alpha a(H) a + beta c ! 303 any H 0.0 L c < alpha a(H) a ! 304 any H 0.0 c < alpha a(H) a ! 305 any any L c < alpha a a(H) + beta c ! 306 any any c < alpha a a(H) + beta c ! 307 any 0.0 L c < alpha a a(H) ! 308 any 0.0 c < alpha a a(H) ! 309 1.0 H any L c < a(H) a + beta c ! 310 1.0 H any c < a(H) a + beta c ! 311 1.0 H 0.0 L c < a(H) a ! 312 1.0 H 0.0 c < a(H) a ! 313 1.0 any L c < a a(H) + beta c ! 314 1.0 any c < a a(H) + beta c ! 315 1.0 0.0 L c < a a(H) ! 316 1.0 0.0 c < a a(H) MODULE zherk_01 CONTAINS SUBROUTINE zherk_301(alpha,a,op_a,beta,c,lower) ! .. Use Statements .. USE blas_kinds, ONLY : wp => dp USE blas_keywords, ONLY : blas_conj_trans_type, blas_lower_type ! .. Scalar Arguments .. COMPLEX (wp), INTENT (IN) :: alpha, beta TYPE (blas_conj_trans_type), INTENT (IN) :: op_a TYPE (blas_lower_type), INTENT (IN) :: lower ! .. Array Arguments .. COMPLEX (wp), INTENT (IN) :: a(:,:) COMPLEX (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL zherk n = SIZE(c,1) k = SIZE(a,1) CALL zherk('L','C',n,k,alpha,a,k,beta,c,n) END SUBROUTINE zherk_301 END MODULE zherk_01 MODULE zherk_02 CONTAINS SUBROUTINE zherk_302(alpha,a,op_a,beta,c) ! .. Use Statements .. USE blas_kinds, ONLY : wp => dp USE blas_keywords, ONLY : blas_conj_trans_type ! .. Scalar Arguments .. COMPLEX (wp), INTENT (IN) :: alpha, beta TYPE (blas_conj_trans_type), INTENT (IN) :: op_a ! .. Array Arguments .. COMPLEX (wp), INTENT (IN) :: a(:,:) COMPLEX (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL zherk n = SIZE(c,1) k = SIZE(a,1) CALL zherk('U','C',n,k,alpha,a,k,beta,c,n) END SUBROUTINE zherk_302 END MODULE zherk_02 MODULE zherk_03 CONTAINS SUBROUTINE zherk_303(alpha,a,op_a,c,lower) ! .. Use Statements .. USE blas_kinds, ONLY : wp => dp USE blas_keywords, ONLY : blas_conj_trans_type, blas_lower_type ! .. Parameters .. COMPLEX (wp), PARAMETER :: zero = (0.0_wp,0.0_wp) ! .. Scalar Arguments .. COMPLEX (wp), INTENT (IN) :: alpha TYPE (blas_conj_trans_type), INTENT (IN) :: op_a TYPE (blas_lower_type), INTENT (IN) :: lower ! .. Array Arguments .. COMPLEX (wp), INTENT (IN) :: a(:,:) COMPLEX (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL zherk n = SIZE(c,1) k = SIZE(a,1) CALL zherk('L','C',n,k,alpha,a,k,zero,c,n) END SUBROUTINE zherk_303 END MODULE zherk_03 MODULE zherk_04 CONTAINS SUBROUTINE zherk_304(alpha,a,op_a,c) ! .. Use Statements .. USE blas_kinds, ONLY : wp => dp USE blas_keywords, ONLY : blas_conj_trans_type ! .. Parameters .. COMPLEX (wp), PARAMETER :: zero = (0.0_wp,0.0_wp) ! .. Scalar Arguments .. COMPLEX (wp), INTENT (IN) :: alpha TYPE (blas_conj_trans_type), INTENT (IN) :: op_a ! .. Array Arguments .. COMPLEX (wp), INTENT (IN) :: a(:,:) COMPLEX (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL zherk n = SIZE(c,1) k = SIZE(a,1) CALL zherk('U','C',n,k,alpha,a,k,zero,c,n) END SUBROUTINE zherk_304 END MODULE zherk_04 MODULE zherk_05 CONTAINS SUBROUTINE zherk_305(alpha,a,beta,c,lower) ! .. Use Statements .. USE blas_kinds, ONLY : wp => dp USE blas_keywords, ONLY : blas_lower_type ! .. Scalar Arguments .. COMPLEX (wp), INTENT (IN) :: alpha, beta TYPE (blas_lower_type), INTENT (IN) :: lower ! .. Array Arguments .. COMPLEX (wp), INTENT (IN) :: a(:,:) COMPLEX (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL zherk n = SIZE(c,1) k = SIZE(a,2) CALL zherk('L','N',n,k,alpha,a,n,beta,c,n) END SUBROUTINE zherk_305 END MODULE zherk_05 MODULE zherk_06 CONTAINS SUBROUTINE zherk_306(alpha,a,beta,c) ! .. Use Statements .. USE blas_kinds, ONLY : wp => dp ! .. Scalar Arguments .. COMPLEX (wp), INTENT (IN) :: alpha, beta ! .. Array Arguments .. COMPLEX (wp), INTENT (IN) :: a(:,:) COMPLEX (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL zherk n = SIZE(c,1) k = SIZE(a,2) CALL zherk('U','N',n,k,alpha,a,n,beta,c,n) END SUBROUTINE zherk_306 END MODULE zherk_06 MODULE zherk_07 CONTAINS SUBROUTINE zherk_307(alpha,a,c,lower) ! .. Use Statements .. USE blas_kinds, ONLY : wp => dp USE blas_keywords, ONLY : blas_lower_type ! .. Parameters .. COMPLEX (wp), PARAMETER :: zero = (0.0_wp,0.0_wp) ! .. Scalar Arguments .. COMPLEX (wp), INTENT (IN) :: alpha TYPE (blas_lower_type), INTENT (IN) :: lower ! .. Array Arguments .. COMPLEX (wp), INTENT (IN) :: a(:,:) COMPLEX (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL zherk n = SIZE(c,1) k = SIZE(a,2) CALL zherk('L','N',n,k,alpha,a,n,zero,c,n) END SUBROUTINE zherk_307 END MODULE zherk_07 MODULE zherk_08 CONTAINS SUBROUTINE zherk_308(alpha,a,c) ! .. Use Statements .. USE blas_kinds, ONLY : wp => dp ! .. Parameters .. COMPLEX (wp), PARAMETER :: zero = (0.0_wp,0.0_wp) ! .. Scalar Arguments .. COMPLEX (wp), INTENT (IN) :: alpha ! .. Array Arguments .. COMPLEX (wp), INTENT (IN) :: a(:,:) COMPLEX (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL zherk n = SIZE(c,1) k = SIZE(a,2) CALL zherk('U','N',n,k,alpha,a,n,zero,c,n) END SUBROUTINE zherk_308 END MODULE zherk_08 MODULE zherk_09 CONTAINS SUBROUTINE zherk_309(a,op_a,beta,c,lower) ! .. Use Statements .. USE blas_kinds, ONLY : wp => dp USE blas_keywords, ONLY : blas_conj_trans_type, blas_lower_type ! .. Parameters .. COMPLEX (wp), PARAMETER :: one = (1.0_wp,0.0_wp) ! .. Scalar Arguments .. COMPLEX (wp), INTENT (IN) :: beta TYPE (blas_conj_trans_type), INTENT (IN) :: op_a TYPE (blas_lower_type), INTENT (IN) :: lower ! .. Array Arguments .. COMPLEX (wp), INTENT (IN) :: a(:,:) COMPLEX (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL zherk n = SIZE(c,1) k = SIZE(a,1) CALL zherk('L','C',n,k,one,a,k,beta,c,n) END SUBROUTINE zherk_309 END MODULE zherk_09 MODULE zherk_10 CONTAINS SUBROUTINE zherk_310(a,op_a,beta,c) ! .. Use Statements .. USE blas_kinds, ONLY : wp => dp USE blas_keywords, ONLY : blas_conj_trans_type ! .. Parameters .. COMPLEX (wp), PARAMETER :: one = (1.0_wp,0.0_wp) ! .. Scalar Arguments .. COMPLEX (wp), INTENT (IN) :: beta TYPE (blas_conj_trans_type), INTENT (IN) :: op_a ! .. Array Arguments .. COMPLEX (wp), INTENT (IN) :: a(:,:) COMPLEX (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL zherk n = SIZE(c,1) k = SIZE(a,1) CALL zherk('U','C',n,k,one,a,k,beta,c,n) END SUBROUTINE zherk_310 END MODULE zherk_10 MODULE zherk_11 CONTAINS SUBROUTINE zherk_311(a,op_a,c,lower) ! .. Use Statements .. USE blas_kinds, ONLY : wp => dp USE blas_keywords, ONLY : blas_conj_trans_type, blas_lower_type ! .. Parameters .. COMPLEX (wp), PARAMETER :: zero = (0.0_wp,0.0_wp) COMPLEX (wp), PARAMETER :: one = (1.0_wp,0.0_wp) ! .. Scalar Arguments .. TYPE (blas_conj_trans_type), INTENT (IN) :: op_a TYPE (blas_lower_type), INTENT (IN) :: lower ! .. Array Arguments .. COMPLEX (wp), INTENT (IN) :: a(:,:) COMPLEX (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL zherk n = SIZE(c,1) k = SIZE(a,1) CALL zherk('L','C',n,k,one,a,k,zero,c,n) END SUBROUTINE zherk_311 END MODULE zherk_11 MODULE zherk_12 CONTAINS SUBROUTINE zherk_312(a,op_a,c) ! .. Use Statements .. USE blas_kinds, ONLY : wp => dp USE blas_keywords, ONLY : blas_conj_trans_type ! .. Parameters .. COMPLEX (wp), PARAMETER :: zero = (0.0_wp,0.0_wp) COMPLEX (wp), PARAMETER :: one = (1.0_wp,0.0_wp) ! .. Scalar Arguments .. TYPE (blas_conj_trans_type), INTENT (IN) :: op_a ! .. Array Arguments .. COMPLEX (wp), INTENT (IN) :: a(:,:) COMPLEX (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL zherk n = SIZE(c,1) k = SIZE(a,1) CALL zherk('U','C',n,k,one,a,k,zero,c,n) END SUBROUTINE zherk_312 END MODULE zherk_12 MODULE zherk_13 CONTAINS SUBROUTINE zherk_313(a,beta,c,lower) ! .. Use Statements .. USE blas_kinds, ONLY : wp => dp USE blas_keywords, ONLY : blas_lower_type ! .. Parameters .. COMPLEX (wp), PARAMETER :: one = (1.0_wp,0.0_wp) ! .. Scalar Arguments .. COMPLEX (wp), INTENT (IN) :: beta TYPE (blas_lower_type), INTENT (IN) :: lower ! .. Array Arguments .. COMPLEX (wp), INTENT (IN) :: a(:,:) COMPLEX (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL zherk n = SIZE(c,1) k = SIZE(a,2) CALL zherk('L','N',n,k,one,a,n,beta,c,n) END SUBROUTINE zherk_313 END MODULE zherk_13 MODULE zherk_14 CONTAINS SUBROUTINE zherk_314(a,beta,c) ! .. Use Statements .. USE blas_kinds, ONLY : wp => dp ! .. Parameters .. COMPLEX (wp), PARAMETER :: one = (1.0_wp,0.0_wp) ! .. Scalar Arguments .. COMPLEX (wp), INTENT (IN) :: beta ! .. Array Arguments .. COMPLEX (wp), INTENT (IN) :: a(:,:) COMPLEX (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL zherk n = SIZE(c,1) k = SIZE(a,2) CALL zherk('U','N',n,k,one,a,n,beta,c,n) END SUBROUTINE zherk_314 END MODULE zherk_14 MODULE zherk_15 CONTAINS SUBROUTINE zherk_315(a,c,lower) ! .. Use Statements .. USE blas_kinds, ONLY : wp => dp USE blas_keywords, ONLY : blas_lower_type ! .. Parameters .. COMPLEX (wp), PARAMETER :: zero = (0.0_wp,0.0_wp) COMPLEX (wp), PARAMETER :: one = (1.0_wp,0.0_wp) ! .. Scalar Arguments .. TYPE (blas_lower_type), INTENT (IN) :: lower ! .. Array Arguments .. COMPLEX (wp), INTENT (IN) :: a(:,:) COMPLEX (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL zherk n = SIZE(c,1) k = SIZE(a,2) CALL zherk('L','N',n,k,one,a,n,zero,c,n) END SUBROUTINE zherk_315 END MODULE zherk_15 MODULE zherk_16 CONTAINS SUBROUTINE zherk_316(a,c) ! .. Use Statements .. USE blas_kinds, ONLY : wp => dp ! .. Parameters .. COMPLEX (wp), PARAMETER :: zero = (0.0_wp,0.0_wp) COMPLEX (wp), PARAMETER :: one = (1.0_wp,0.0_wp) ! .. Array Arguments .. COMPLEX (wp), INTENT (IN) :: a(:,:) COMPLEX (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL zherk n = SIZE(c,1) k = SIZE(a,2) CALL zherk('U','N',n,k,one,a,n,zero,c,n) END SUBROUTINE zherk_316 END MODULE zherk_16