! Replaces DSYRK 16 procedures ! Level 3 REAL (DSYRK) ! . alpha op_a beta lower c ! 301 any T any L c < alpha a(T) a + beta c ! 302 any T any c < alpha a(T) a + beta c ! 303 any T 0.0 L c < alpha a(T) a ! 304 any T 0.0 c < alpha a(T) a ! 305 any any L c < alpha a a(T) + beta c ! 306 any any c < alpha a a(T) + beta c ! 307 any 0.0 L c < alpha a a(T) ! 308 any 0.0 c < alpha a a(T) ! 309 1.0 T any L c < a(T) a + beta c ! 310 1.0 T any c < a(T) a + beta c ! 311 1.0 T 0.0 L c < a(T) a ! 312 1.0 T 0.0 c < a(T) a ! 313 1.0 any L c < a a(T) + beta c ! 314 1.0 any c < a a(T) + beta c ! 315 1.0 0.0 L c < a a(T) ! 316 1.0 0.0 c < a a(T) MODULE dsyrk_01 CONTAINS SUBROUTINE dsyrk_301(alpha,a,op_a,beta,c,lower) ! .. Use Statements .. USE blas_kinds, ONLY : wp => dp USE blas_keywords, ONLY : blas_trans_type, blas_lower_type ! .. Scalar Arguments .. REAL (wp), INTENT (IN) :: alpha, beta TYPE (blas_trans_type), INTENT (IN) :: op_a TYPE (blas_lower_type), INTENT (IN) :: lower ! .. Array Arguments .. REAL (wp), INTENT (IN) :: a(:,:) REAL (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL dsyrk n = SIZE(c,1) k = SIZE(a,1) CALL dsyrk('L','T',n,k,alpha,a,k,beta,c,n) END SUBROUTINE dsyrk_301 END MODULE dsyrk_01 MODULE dsyrk_02 CONTAINS SUBROUTINE dsyrk_302(alpha,a,op_a,beta,c) ! .. Use Statements .. USE blas_kinds, ONLY : wp => dp USE blas_keywords, ONLY : blas_trans_type ! .. Scalar Arguments .. REAL (wp), INTENT (IN) :: alpha, beta TYPE (blas_trans_type), INTENT (IN) :: op_a ! .. Array Arguments .. REAL (wp), INTENT (IN) :: a(:,:) REAL (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL dsyrk n = SIZE(c,1) k = SIZE(a,1) CALL dsyrk('U','T',n,k,alpha,a,k,beta,c,n) END SUBROUTINE dsyrk_302 END MODULE dsyrk_02 MODULE dsyrk_03 CONTAINS SUBROUTINE dsyrk_303(alpha,a,op_a,c,lower) ! .. Use Statements .. USE blas_kinds, ONLY : wp => dp USE blas_keywords, ONLY : blas_trans_type, blas_lower_type ! .. Parameters .. REAL (wp), PARAMETER :: zero = 0.0_wp ! .. Scalar Arguments .. REAL (wp), INTENT (IN) :: alpha TYPE (blas_trans_type), INTENT (IN) :: op_a TYPE (blas_lower_type), INTENT (IN) :: lower ! .. Array Arguments .. REAL (wp), INTENT (IN) :: a(:,:) REAL (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL dsyrk n = SIZE(c,1) k = SIZE(a,1) CALL dsyrk('L','T',n,k,alpha,a,k,zero,c,n) END SUBROUTINE dsyrk_303 END MODULE dsyrk_03 MODULE dsyrk_04 CONTAINS SUBROUTINE dsyrk_304(alpha,a,op_a,c) ! .. Use Statements .. USE blas_kinds, ONLY : wp => dp USE blas_keywords, ONLY : blas_trans_type ! .. Parameters .. REAL (wp), PARAMETER :: zero = 0.0_wp ! .. Scalar Arguments .. REAL (wp), INTENT (IN) :: alpha TYPE (blas_trans_type), INTENT (IN) :: op_a ! .. Array Arguments .. REAL (wp), INTENT (IN) :: a(:,:) REAL (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL dsyrk n = SIZE(c,1) k = SIZE(a,1) CALL dsyrk('U','T',n,k,alpha,a,k,zero,c,n) END SUBROUTINE dsyrk_304 END MODULE dsyrk_04 MODULE dsyrk_05 CONTAINS SUBROUTINE dsyrk_305(alpha,a,beta,c,lower) ! .. Use Statements .. USE blas_kinds, ONLY : wp => dp USE blas_keywords, ONLY : blas_lower_type ! .. Scalar Arguments .. REAL (wp), INTENT (IN) :: alpha, beta TYPE (blas_lower_type), INTENT (IN) :: lower ! .. Array Arguments .. REAL (wp), INTENT (IN) :: a(:,:) REAL (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL dsyrk n = SIZE(c,1) k = SIZE(a,2) CALL dsyrk('L','N',n,k,alpha,a,n,beta,c,n) END SUBROUTINE dsyrk_305 END MODULE dsyrk_05 MODULE dsyrk_06 CONTAINS SUBROUTINE dsyrk_306(alpha,a,beta,c) ! .. Use Statements .. USE blas_kinds, ONLY : wp => dp ! .. Scalar Arguments .. REAL (wp), INTENT (IN) :: alpha, beta ! .. Array Arguments .. REAL (wp), INTENT (IN) :: a(:,:) REAL (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL dsyrk n = SIZE(c,1) k = SIZE(a,2) CALL dsyrk('U','N',n,k,alpha,a,n,beta,c,n) END SUBROUTINE dsyrk_306 END MODULE dsyrk_06 MODULE dsyrk_07 CONTAINS SUBROUTINE dsyrk_307(alpha,a,c,lower) ! .. Use Statements .. USE blas_kinds, ONLY : wp => dp USE blas_keywords, ONLY : blas_lower_type ! .. Parameters .. REAL (wp), PARAMETER :: zero = 0.0_wp ! .. Scalar Arguments .. REAL (wp), INTENT (IN) :: alpha TYPE (blas_lower_type), INTENT (IN) :: lower ! .. Array Arguments .. REAL (wp), INTENT (IN) :: a(:,:) REAL (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL dsyrk n = SIZE(c,1) k = SIZE(a,2) CALL dsyrk('L','N',n,k,alpha,a,n,zero,c,n) END SUBROUTINE dsyrk_307 END MODULE dsyrk_07 MODULE dsyrk_08 CONTAINS SUBROUTINE dsyrk_308(alpha,a,c) ! .. Use Statements .. USE blas_kinds, ONLY : wp => dp ! .. Parameters .. REAL (wp), PARAMETER :: zero = 0.0_wp ! .. Scalar Arguments .. REAL (wp), INTENT (IN) :: alpha ! .. Array Arguments .. REAL (wp), INTENT (IN) :: a(:,:) REAL (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL dsyrk n = SIZE(c,1) k = SIZE(a,2) CALL dsyrk('U','N',n,k,alpha,a,n,zero,c,n) END SUBROUTINE dsyrk_308 END MODULE dsyrk_08 MODULE dsyrk_09 CONTAINS SUBROUTINE dsyrk_309(a,op_a,beta,c,lower) ! .. Use Statements .. USE blas_kinds, ONLY : wp => dp USE blas_keywords, ONLY : blas_trans_type, blas_lower_type ! .. Parameters .. REAL (wp), PARAMETER :: one = 1.0_wp ! .. Scalar Arguments .. REAL (wp), INTENT (IN) :: beta TYPE (blas_trans_type), INTENT (IN) :: op_a TYPE (blas_lower_type), INTENT (IN) :: lower ! .. Array Arguments .. REAL (wp), INTENT (IN) :: a(:,:) REAL (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL dsyrk n = SIZE(c,1) k = SIZE(a,1) CALL dsyrk('L','T',n,k,one,a,k,beta,c,n) END SUBROUTINE dsyrk_309 END MODULE dsyrk_09 MODULE dsyrk_10 CONTAINS SUBROUTINE dsyrk_310(a,op_a,beta,c) ! .. Use Statements .. USE blas_kinds, ONLY : wp => dp USE blas_keywords, ONLY : blas_trans_type ! .. Parameters .. REAL (wp), PARAMETER :: one = 1.0_wp ! .. Scalar Arguments .. REAL (wp), INTENT (IN) :: beta TYPE (blas_trans_type), INTENT (IN) :: op_a ! .. Array Arguments .. REAL (wp), INTENT (IN) :: a(:,:) REAL (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL dsyrk n = SIZE(c,1) k = SIZE(a,1) CALL dsyrk('U','T',n,k,one,a,k,beta,c,n) END SUBROUTINE dsyrk_310 END MODULE dsyrk_10 MODULE dsyrk_11 CONTAINS SUBROUTINE dsyrk_311(a,op_a,c,lower) ! .. Use Statements .. USE blas_kinds, ONLY : wp => dp USE blas_keywords, ONLY : blas_trans_type, blas_lower_type ! .. Parameters .. REAL (wp), PARAMETER :: zero = 0.0_wp REAL (wp), PARAMETER :: one = 1.0_wp ! .. Scalar Arguments .. TYPE (blas_trans_type), INTENT (IN) :: op_a TYPE (blas_lower_type), INTENT (IN) :: lower ! .. Array Arguments .. REAL (wp), INTENT (IN) :: a(:,:) REAL (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL dsyrk n = SIZE(c,1) k = SIZE(a,1) CALL dsyrk('L','T',n,k,one,a,k,zero,c,n) END SUBROUTINE dsyrk_311 END MODULE dsyrk_11 MODULE dsyrk_12 CONTAINS SUBROUTINE dsyrk_312(a,op_a,c) ! .. Use Statements .. USE blas_kinds, ONLY : wp => dp USE blas_keywords, ONLY : blas_trans_type ! .. Parameters .. REAL (wp), PARAMETER :: zero = 0.0_wp REAL (wp), PARAMETER :: one = 1.0_wp ! .. Scalar Arguments .. TYPE (blas_trans_type), INTENT (IN) :: op_a ! .. Array Arguments .. REAL (wp), INTENT (IN) :: a(:,:) REAL (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL dsyrk n = SIZE(c,1) k = SIZE(a,1) CALL dsyrk('U','T',n,k,one,a,k,zero,c,n) END SUBROUTINE dsyrk_312 END MODULE dsyrk_12 MODULE dsyrk_13 CONTAINS SUBROUTINE dsyrk_313(a,beta,c,lower) ! .. Use Statements .. USE blas_kinds, ONLY : wp => dp USE blas_keywords, ONLY : blas_lower_type ! .. Parameters .. REAL (wp), PARAMETER :: one = 1.0_wp ! .. Scalar Arguments .. REAL (wp), INTENT (IN) :: beta TYPE (blas_lower_type), INTENT (IN) :: lower ! .. Array Arguments .. REAL (wp), INTENT (IN) :: a(:,:) REAL (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL dsyrk n = SIZE(c,1) k = SIZE(a,2) CALL dsyrk('L','N',n,k,one,a,n,beta,c,n) END SUBROUTINE dsyrk_313 END MODULE dsyrk_13 MODULE dsyrk_14 CONTAINS SUBROUTINE dsyrk_314(a,beta,c) ! .. Use Statements .. USE blas_kinds, ONLY : wp => dp ! .. Parameters .. REAL (wp), PARAMETER :: one = 1.0_wp ! .. Scalar Arguments .. REAL (wp), INTENT (IN) :: beta ! .. Array Arguments .. REAL (wp), INTENT (IN) :: a(:,:) REAL (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL dsyrk n = SIZE(c,1) k = SIZE(a,2) CALL dsyrk('U','N',n,k,one,a,n,beta,c,n) END SUBROUTINE dsyrk_314 END MODULE dsyrk_14 MODULE dsyrk_15 CONTAINS SUBROUTINE dsyrk_315(a,c,lower) ! .. Use Statements .. USE blas_kinds, ONLY : wp => dp USE blas_keywords, ONLY : blas_lower_type ! .. Parameters .. REAL (wp), PARAMETER :: zero = 0.0_wp REAL (wp), PARAMETER :: one = 1.0_wp ! .. Scalar Arguments .. TYPE (blas_lower_type), INTENT (IN) :: lower ! .. Array Arguments .. REAL (wp), INTENT (IN) :: a(:,:) REAL (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL dsyrk n = SIZE(c,1) k = SIZE(a,2) CALL dsyrk('L','N',n,k,one,a,n,zero,c,n) END SUBROUTINE dsyrk_315 END MODULE dsyrk_15 MODULE dsyrk_16 CONTAINS SUBROUTINE dsyrk_316(a,c) ! .. Use Statements .. USE blas_kinds, ONLY : wp => dp ! .. Parameters .. REAL (wp), PARAMETER :: zero = 0.0_wp REAL (wp), PARAMETER :: one = 1.0_wp ! .. Array Arguments .. REAL (wp), INTENT (IN) :: a(:,:) REAL (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL dsyrk n = SIZE(c,1) k = SIZE(a,2) CALL dsyrk('U','N',n,k,one,a,n,zero,c,n) END SUBROUTINE dsyrk_316 END MODULE dsyrk_16