.TH "la_constants" 3 "Sat Jul 19 2025 12:35: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\&.
