.TH "la_constants" 3 "Wed Feb 7 2024 11:30:40" "Version 3.12.0" "LAPACK" \" -*- nroff -*- .ad l .nh .SH NAME la_constants \- \fBLA_CONSTANTS\fP is a module for the scaling constants for the compiled Fortran single and double precisions .SH SYNOPSIS .br .PP .SS "Variables" .in +1c .ti -1c .RI "integer, parameter \fBsp\fP = kind(1\&.e0)" .br .ti -1c .RI "real(sp), parameter \fBszero\fP = 0\&.0_sp" .br .ti -1c .RI "real(sp), parameter \fBshalf\fP = 0\&.5_sp" .br .ti -1c .RI "real(sp), parameter \fBsone\fP = 1\&.0_sp" .br .ti -1c .RI "real(sp), parameter \fBstwo\fP = 2\&.0_sp" .br .ti -1c .RI "real(sp), parameter \fBsthree\fP = 3\&.0_sp" .br .ti -1c .RI "real(sp), parameter \fBsfour\fP = 4\&.0_sp" .br .ti -1c .RI "real(sp), parameter \fBseight\fP = 8\&.0_sp" .br .ti -1c .RI "real(sp), parameter \fBsten\fP = 10\&.0_sp" .br .ti -1c .RI "complex(sp), parameter \fBczero\fP = ( 0\&.0_sp, 0\&.0_sp )" .br .ti -1c .RI "complex(sp), parameter \fBchalf\fP = ( 0\&.5_sp, 0\&.0_sp )" .br .ti -1c .RI "complex(sp), parameter \fBcone\fP = ( 1\&.0_sp, 0\&.0_sp )" .br .ti -1c .RI "character *1, parameter \fBsprefix\fP = 'S'" .br .ti -1c .RI "character *1, parameter \fBcprefix\fP = 'C'" .br .ti -1c .RI "real(sp), parameter \fBsulp\fP = epsilon(0\&._sp)" .br .ti -1c .RI "real(sp), parameter \fBseps\fP = sulp * 0\&.5_sp" .br .ti -1c .RI "real(sp), parameter \fBssafmin\fP = real(radix(0\&._sp), sp)**max( minexponent(0\&._sp)\-1, 1\-maxexponent(0\&._sp) )" .br .ti -1c .RI "real(sp), parameter \fBssafmax\fP = sone / ssafmin" .br .ti -1c .RI "real(sp), parameter \fBssmlnum\fP = ssafmin / sulp" .br .ti -1c .RI "real(sp), parameter \fBsbignum\fP = ssafmax * sulp" .br .ti -1c .RI "real(sp), parameter \fBsrtmin\fP = sqrt(ssmlnum)" .br .ti -1c .RI "real(sp), parameter \fBsrtmax\fP = sqrt(sbignum)" .br .ti -1c .RI "real(sp), parameter \fBstsml\fP = real(radix(0\&._sp), sp)**ceiling( (minexponent(0\&._sp) \- 1) * 0\&.5_sp)" .br .ti -1c .RI "real(sp), parameter \fBstbig\fP = real(radix(0\&._sp), sp)**floor( (maxexponent(0\&._sp) \- digits(0\&._sp) + 1) * 0\&.5_sp)" .br .ti -1c .RI "real(sp), parameter \fBsssml\fP = real(radix(0\&._sp), sp)**( \- floor( (minexponent(0\&._sp) \- digits(0\&._sp)) * 0\&.5_sp))" .br .ti -1c .RI "real(sp), parameter \fBssbig\fP = real(radix(0\&._sp), sp)**( \- ceiling( (maxexponent(0\&._sp) + digits(0\&._sp) \- 1) * 0\&.5_sp))" .br .ti -1c .RI "integer, parameter \fBdp\fP = kind(1\&.d0)" .br .ti -1c .RI "real(dp), parameter \fBdzero\fP = 0\&.0_dp" .br .ti -1c .RI "real(dp), parameter \fBdhalf\fP = 0\&.5_dp" .br .ti -1c .RI "real(dp), parameter \fBdone\fP = 1\&.0_dp" .br .ti -1c .RI "real(dp), parameter \fBdtwo\fP = 2\&.0_dp" .br .ti -1c .RI "real(dp), parameter \fBdthree\fP = 3\&.0_dp" .br .ti -1c .RI "real(dp), parameter \fBdfour\fP = 4\&.0_dp" .br .ti -1c .RI "real(dp), parameter \fBdeight\fP = 8\&.0_dp" .br .ti -1c .RI "real(dp), parameter \fBdten\fP = 10\&.0_dp" .br .ti -1c .RI "complex(dp), parameter \fBzzero\fP = ( 0\&.0_dp, 0\&.0_dp )" .br .ti -1c .RI "complex(dp), parameter \fBzhalf\fP = ( 0\&.5_dp, 0\&.0_dp )" .br .ti -1c .RI "complex(dp), parameter \fBzone\fP = ( 1\&.0_dp, 0\&.0_dp )" .br .ti -1c .RI "character *1, parameter \fBdprefix\fP = 'D'" .br .ti -1c .RI "character *1, parameter \fBzprefix\fP = 'Z'" .br .ti -1c .RI "real(dp), parameter \fBdulp\fP = epsilon(0\&._dp)" .br .ti -1c .RI "real(dp), parameter \fBdeps\fP = dulp * 0\&.5_dp" .br .ti -1c .RI "real(dp), parameter \fBdsafmin\fP = real(radix(0\&._dp), dp)**max( minexponent(0\&._dp)\-1, 1\-maxexponent(0\&._dp) )" .br .ti -1c .RI "real(dp), parameter \fBdsafmax\fP = done / dsafmin" .br .ti -1c .RI "real(dp), parameter \fBdsmlnum\fP = dsafmin / dulp" .br .ti -1c .RI "real(dp), parameter \fBdbignum\fP = dsafmax * dulp" .br .ti -1c .RI "real(dp), parameter \fBdrtmin\fP = sqrt(dsmlnum)" .br .ti -1c .RI "real(dp), parameter \fBdrtmax\fP = sqrt(dbignum)" .br .ti -1c .RI "real(dp), parameter \fBdtsml\fP = real(radix(0\&._dp), dp)**ceiling( (minexponent(0\&._dp) \- 1) * 0\&.5_dp)" .br .ti -1c .RI "real(dp), parameter \fBdtbig\fP = real(radix(0\&._dp), dp)**floor( (maxexponent(0\&._dp) \- digits(0\&._dp) + 1) * 0\&.5_dp)" .br .ti -1c .RI "real(dp), parameter \fBdssml\fP = real(radix(0\&._dp), dp)**( \- floor( (minexponent(0\&._dp) \- digits(0\&._dp)) * 0\&.5_dp))" .br .ti -1c .RI "real(dp), parameter \fBdsbig\fP = real(radix(0\&._dp), dp)**( \- ceiling( (maxexponent(0\&._dp) + digits(0\&._dp) \- 1) * 0\&.5_dp))" .br .in -1c .SH "Detailed Description" .PP \fBLA_CONSTANTS\fP is a module for the scaling constants for the compiled Fortran single and double precisions .PP \fBAuthor\fP .RS 4 Edward Anderson, Lockheed Martin .RE .PP \fBDate\fP .RS 4 May 2016 .RE .PP \fBContributors:\fP .RS 4 Weslley Pereira, University of Colorado Denver, USA Nick Papior, Technical University of Denmark, DK .RE .PP \fBFurther Details:\fP .RS 4 .PP .nf Anderson E\&. (2017) Algorithm 978: Safe Scaling in the Level 1 BLAS ACM Trans Math Softw 44:1--28 https://doi\&.org/10\&.1145/3061665 Blue, James L\&. (1978) A Portable Fortran Program to Find the Euclidean Norm of a Vector ACM Trans Math Softw 4:15--23 https://doi\&.org/10\&.1145/355769\&.355771 .fi .PP .RE .PP .SH "Author" .PP Generated automatically by Doxygen for LAPACK from the source code\&.