! Replaces ZHER2K 16 procedures ! Level 3 COMPLEX (ZHER2K) ! . alpha op_a beta lower c ! 301 any H any L c < alpha a(H) b + alpha(C) b(H) a + beta c ! 302 any H any c < alpha a(H) b + alpha(C) b(H) a + beta c ! 303 any H 0.0 L c < alpha a(H) b + alpha(C) b(H) a ! 304 any H 0.0 c < alpha a(H) b + alpha(C) b(H) a ! 305 any any L c < alpha a b(H) + alpha(C) b a(H) + beta c ! 306 any any c < alpha a b(H) + alpha(C) b a(H) + beta c ! 307 any 0.0 L c < alpha a b(H) + alpha(C) b a(H) ! 308 any 0.0 c < alpha a b(H) + alpha(C) b a(H) ! 309 1.0 H any L c < a(H) b + b(H) a + beta c ! 310 1.0 H any c < a(H) b + b(H) a + beta c ! 311 1.0 H 0.0 L c < a(H) b + b(H) a ! 312 1.0 H 0.0 c < a(H) b + b(H) a ! 313 1.0 any L c < a b(H) + b a(H) + beta c ! 314 1.0 any c < a b(H) + b a(H) + beta c ! 315 1.0 0.0 L c < a b(H) + b a(H) ! 316 1.0 0.0 c < a b(H) + b a(H) MODULE zher2k_01 CONTAINS SUBROUTINE zher2k_301(alpha,a,op_a,b,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(:,:), b(:,:) COMPLEX (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL zher2k n = SIZE(c,1) k = SIZE(a,1) CALL zher2k('L','C',n,k,alpha,a,k,b,k,beta,c,n) END SUBROUTINE zher2k_301 END MODULE zher2k_01 MODULE zher2k_02 CONTAINS SUBROUTINE zher2k_302(alpha,a,op_a,b,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(:,:), b(:,:) COMPLEX (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL zher2k n = SIZE(c,1) k = SIZE(a,1) CALL zher2k('U','C',n,k,alpha,a,k,b,k,beta,c,n) END SUBROUTINE zher2k_302 END MODULE zher2k_02 MODULE zher2k_03 CONTAINS SUBROUTINE zher2k_303(alpha,a,op_a,b,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(:,:), b(:,:) COMPLEX (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL zher2k n = SIZE(c,1) k = SIZE(a,1) CALL zher2k('L','C',n,k,alpha,a,k,b,k,zero,c,n) END SUBROUTINE zher2k_303 END MODULE zher2k_03 MODULE zher2k_04 CONTAINS SUBROUTINE zher2k_304(alpha,a,op_a,b,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(:,:), b(:,:) COMPLEX (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL zher2k n = SIZE(c,1) k = SIZE(a,1) CALL zher2k('U','C',n,k,alpha,a,k,b,k,zero,c,n) END SUBROUTINE zher2k_304 END MODULE zher2k_04 MODULE zher2k_05 CONTAINS SUBROUTINE zher2k_305(alpha,a,b,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(:,:), b(:,:) COMPLEX (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL zher2k n = SIZE(c,1) k = SIZE(a,2) CALL zher2k('L','N',n,k,alpha,a,n,b,n,beta,c,n) END SUBROUTINE zher2k_305 END MODULE zher2k_05 MODULE zher2k_06 CONTAINS SUBROUTINE zher2k_306(alpha,a,b,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(:,:), b(:,:) COMPLEX (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL zher2k n = SIZE(c,1) k = SIZE(a,2) CALL zher2k('U','N',n,k,alpha,a,n,b,n,beta,c,n) END SUBROUTINE zher2k_306 END MODULE zher2k_06 MODULE zher2k_07 CONTAINS SUBROUTINE zher2k_307(alpha,a,b,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(:,:), b(:,:) COMPLEX (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL zher2k n = SIZE(c,1) k = SIZE(a,2) CALL zher2k('L','N',n,k,alpha,a,n,b,n,zero,c,n) END SUBROUTINE zher2k_307 END MODULE zher2k_07 MODULE zher2k_08 CONTAINS SUBROUTINE zher2k_308(alpha,a,b,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(:,:), b(:,:) COMPLEX (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL zher2k n = SIZE(c,1) k = SIZE(a,2) CALL zher2k('U','N',n,k,alpha,a,n,b,n,zero,c,n) END SUBROUTINE zher2k_308 END MODULE zher2k_08 MODULE zher2k_09 CONTAINS SUBROUTINE zher2k_309(a,op_a,b,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(:,:), b(:,:) COMPLEX (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL zher2k n = SIZE(c,1) k = SIZE(a,1) CALL zher2k('L','C',n,k,one,a,k,b,k,beta,c,n) END SUBROUTINE zher2k_309 END MODULE zher2k_09 MODULE zher2k_10 CONTAINS SUBROUTINE zher2k_310(a,op_a,b,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(:,:), b(:,:) COMPLEX (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL zher2k n = SIZE(c,1) k = SIZE(a,1) CALL zher2k('U','C',n,k,one,a,k,b,k,beta,c,n) END SUBROUTINE zher2k_310 END MODULE zher2k_10 MODULE zher2k_11 CONTAINS SUBROUTINE zher2k_311(a,op_a,b,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(:,:), b(:,:) COMPLEX (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL zher2k n = SIZE(c,1) k = SIZE(a,1) CALL zher2k('L','C',n,k,one,a,k,b,k,zero,c,n) END SUBROUTINE zher2k_311 END MODULE zher2k_11 MODULE zher2k_12 CONTAINS SUBROUTINE zher2k_312(a,op_a,b,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(:,:), b(:,:) COMPLEX (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL zher2k n = SIZE(c,1) k = SIZE(a,1) CALL zher2k('U','C',n,k,one,a,k,b,k,zero,c,n) END SUBROUTINE zher2k_312 END MODULE zher2k_12 MODULE zher2k_13 CONTAINS SUBROUTINE zher2k_313(a,b,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(:,:), b(:,:) COMPLEX (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL zher2k n = SIZE(c,1) k = SIZE(a,2) CALL zher2k('L','N',n,k,one,a,n,b,n,beta,c,n) END SUBROUTINE zher2k_313 END MODULE zher2k_13 MODULE zher2k_14 CONTAINS SUBROUTINE zher2k_314(a,b,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(:,:), b(:,:) COMPLEX (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL zher2k n = SIZE(c,1) k = SIZE(a,2) CALL zher2k('U','N',n,k,one,a,n,b,n,beta,c,n) END SUBROUTINE zher2k_314 END MODULE zher2k_14 MODULE zher2k_15 CONTAINS SUBROUTINE zher2k_315(a,b,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(:,:), b(:,:) COMPLEX (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL zher2k n = SIZE(c,1) k = SIZE(a,2) CALL zher2k('L','N',n,k,one,a,n,b,n,zero,c,n) END SUBROUTINE zher2k_315 END MODULE zher2k_15 MODULE zher2k_16 CONTAINS SUBROUTINE zher2k_316(a,b,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(:,:), b(:,:) COMPLEX (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL zher2k n = SIZE(c,1) k = SIZE(a,2) CALL zher2k('U','N',n,k,one,a,n,b,n,zero,c,n) END SUBROUTINE zher2k_316 END MODULE zher2k_16