! Replaces DSYR2K 16 procedures ! Level 3 REAL (DSYR2K) ! . alpha op_a beta lower c ! 301 any T any L c < alpha a(T) b + alpha b(T) a + beta c ! 302 any T any c < alpha a(T) b + alpha b(T) a + beta c ! 303 any T 0.0 L c < alpha a(T) b + alpha b(T) a ! 304 any T 0.0 c < alpha a(T) b + alpha b(T) a ! 305 any any L c < alpha a b(T) + alpha b a(T) + beta c ! 306 any any c < alpha a b(T) + alpha b a(T) + beta c ! 307 any 0.0 L c < alpha a b(T) + alpha b a(T) ! 308 any 0.0 c < alpha a b(T) + alpha b a(T) ! 309 1.0 T any L c < a(T) b + b(T) a + beta c ! 310 1.0 T any c < a(T) b + b(T) a + beta c ! 311 1.0 T 0.0 L c < a(T) b + b(T) a ! 312 1.0 T 0.0 c < a(T) b + b(T) a ! 313 1.0 any L c < a b(T) + b a(T) + beta c ! 314 1.0 any c < a b(T) + b a(T) + beta c ! 315 1.0 0.0 L c < a b(T) + b a(T) ! 316 1.0 0.0 c < a b(T) + b a(T) MODULE dsyr2k_01 CONTAINS SUBROUTINE dsyr2k_301(alpha,a,op_a,b,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(:,:), b(:,:) REAL (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL dsyr2k n = SIZE(c,1) k = SIZE(a,1) CALL dsyr2k('L','T',n,k,alpha,a,k,b,k,beta,c,n) END SUBROUTINE dsyr2k_301 END MODULE dsyr2k_01 MODULE dsyr2k_02 CONTAINS SUBROUTINE dsyr2k_302(alpha,a,op_a,b,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(:,:), b(:,:) REAL (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL dsyr2k n = SIZE(c,1) k = SIZE(a,1) CALL dsyr2k('U','T',n,k,alpha,a,k,b,k,beta,c,n) END SUBROUTINE dsyr2k_302 END MODULE dsyr2k_02 MODULE dsyr2k_03 CONTAINS SUBROUTINE dsyr2k_303(alpha,a,op_a,b,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(:,:), b(:,:) REAL (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL dsyr2k n = SIZE(c,1) k = SIZE(a,1) CALL dsyr2k('L','T',n,k,alpha,a,k,b,k,zero,c,n) END SUBROUTINE dsyr2k_303 END MODULE dsyr2k_03 MODULE dsyr2k_04 CONTAINS SUBROUTINE dsyr2k_304(alpha,a,op_a,b,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(:,:), b(:,:) REAL (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL dsyr2k n = SIZE(c,1) k = SIZE(a,1) CALL dsyr2k('U','T',n,k,alpha,a,k,b,k,zero,c,n) END SUBROUTINE dsyr2k_304 END MODULE dsyr2k_04 MODULE dsyr2k_05 CONTAINS SUBROUTINE dsyr2k_305(alpha,a,b,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(:,:), b(:,:) REAL (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL dsyr2k n = SIZE(c,1) k = SIZE(a,2) CALL dsyr2k('L','N',n,k,alpha,a,n,b,n,beta,c,n) END SUBROUTINE dsyr2k_305 END MODULE dsyr2k_05 MODULE dsyr2k_06 CONTAINS SUBROUTINE dsyr2k_306(alpha,a,b,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(:,:), b(:,:) REAL (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL dsyr2k n = SIZE(c,1) k = SIZE(a,2) CALL dsyr2k('U','N',n,k,alpha,a,n,b,n,beta,c,n) END SUBROUTINE dsyr2k_306 END MODULE dsyr2k_06 MODULE dsyr2k_07 CONTAINS SUBROUTINE dsyr2k_307(alpha,a,b,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(:,:), b(:,:) REAL (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL dsyr2k n = SIZE(c,1) k = SIZE(a,2) CALL dsyr2k('L','N',n,k,alpha,a,n,b,n,zero,c,n) END SUBROUTINE dsyr2k_307 END MODULE dsyr2k_07 MODULE dsyr2k_08 CONTAINS SUBROUTINE dsyr2k_308(alpha,a,b,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(:,:), b(:,:) REAL (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL dsyr2k n = SIZE(c,1) k = SIZE(a,2) CALL dsyr2k('U','N',n,k,alpha,a,n,b,n,zero,c,n) END SUBROUTINE dsyr2k_308 END MODULE dsyr2k_08 MODULE dsyr2k_09 CONTAINS SUBROUTINE dsyr2k_309(a,op_a,b,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(:,:), b(:,:) REAL (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL dsyr2k n = SIZE(c,1) k = SIZE(a,1) CALL dsyr2k('L','T',n,k,one,a,k,b,k,beta,c,n) END SUBROUTINE dsyr2k_309 END MODULE dsyr2k_09 MODULE dsyr2k_10 CONTAINS SUBROUTINE dsyr2k_310(a,op_a,b,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(:,:), b(:,:) REAL (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL dsyr2k n = SIZE(c,1) k = SIZE(a,1) CALL dsyr2k('U','T',n,k,one,a,k,b,k,beta,c,n) END SUBROUTINE dsyr2k_310 END MODULE dsyr2k_10 MODULE dsyr2k_11 CONTAINS SUBROUTINE dsyr2k_311(a,op_a,b,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(:,:), b(:,:) REAL (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL dsyr2k n = SIZE(c,1) k = SIZE(a,1) CALL dsyr2k('L','T',n,k,one,a,k,b,k,zero,c,n) END SUBROUTINE dsyr2k_311 END MODULE dsyr2k_11 MODULE dsyr2k_12 CONTAINS SUBROUTINE dsyr2k_312(a,op_a,b,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(:,:), b(:,:) REAL (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL dsyr2k n = SIZE(c,1) k = SIZE(a,1) CALL dsyr2k('U','T',n,k,one,a,k,b,k,zero,c,n) END SUBROUTINE dsyr2k_312 END MODULE dsyr2k_12 MODULE dsyr2k_13 CONTAINS SUBROUTINE dsyr2k_313(a,b,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(:,:), b(:,:) REAL (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL dsyr2k n = SIZE(c,1) k = SIZE(a,2) CALL dsyr2k('L','N',n,k,one,a,n,b,n,beta,c,n) END SUBROUTINE dsyr2k_313 END MODULE dsyr2k_13 MODULE dsyr2k_14 CONTAINS SUBROUTINE dsyr2k_314(a,b,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(:,:), b(:,:) REAL (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL dsyr2k n = SIZE(c,1) k = SIZE(a,2) CALL dsyr2k('U','N',n,k,one,a,n,b,n,beta,c,n) END SUBROUTINE dsyr2k_314 END MODULE dsyr2k_14 MODULE dsyr2k_15 CONTAINS SUBROUTINE dsyr2k_315(a,b,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(:,:), b(:,:) REAL (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL dsyr2k n = SIZE(c,1) k = SIZE(a,2) CALL dsyr2k('L','N',n,k,one,a,n,b,n,zero,c,n) END SUBROUTINE dsyr2k_315 END MODULE dsyr2k_15 MODULE dsyr2k_16 CONTAINS SUBROUTINE dsyr2k_316(a,b,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(:,:), b(:,:) REAL (wp), INTENT (INOUT) :: c(:,:) ! .. Local Scalar .. INTEGER :: k, n ! .. External Procedures .. EXTERNAL dsyr2k n = SIZE(c,1) k = SIZE(a,2) CALL dsyr2k('U','N',n,k,one,a,n,b,n,zero,c,n) END SUBROUTINE dsyr2k_316 END MODULE dsyr2k_16