scal(3)
πΈ scal(3) β bestie, it's literally just x = alpha x π
okay so picture this: you've got a vector, right, and you wanna scale the whole thing by one constant. That's it. That's the page. scal is the family name for six little Fortran subroutines that all do <rainbow>vector = alpha Γ vector</rainbow>, one for each flavour of real/complex/single/double. No cap, it's the glow-up your array asked for β¨
β¨ SYNOPSIS β¨
the function besties π«Ά
subroutine cscal (n, ca, cx, incx)β CSCALsubroutine csscal (n, sa, cx, incx)β CSSCALsubroutine dscal (n, da, dx, incx)β DSCALsubroutine sscal (n, sa, sx, incx)β SSCALsubroutine zdscal (n, da, zx, incx)β ZDSCALsubroutine zscal (n, za, zx, incx)β ZSCAL
π Detailed Description
ngl there is no big essay here β the detailed description is literally just the six function docs below. Scroll down, pick your type, live your truth π
π Function Documentation π
π¦ subroutine cscal (integer n, complex ca, complex, dimension(*) cx, integer incx)
CSCAL
Purpose:
!>
!> CSCAL scales a vector by a constant.
!>
so it takes a complex vector and multiplies the whole thing by a complex constant. iconic, no notes π
Parameters
N
!> N is INTEGER
!> number of elements in input vector(s)
!>
CA
!> CA is COMPLEX
!> On entry, CA specifies the scalar alpha.
!>
CX
!> CX is COMPLEX array, dimension ( 1 + ( N - 1 )*abs( INCX ) )
!>
INCX
!> INCX is INTEGER
!> storage spacing between elements of CX
!>
Author
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
Further Details:
!>
!> jack dongarra, linpack, 3/11/78.
!> modified 3/93 to return if incx .le. 0.
!> modified 12/3/93, array(1) declarations changed to array(*)
!>
Definition at line 77 of file cscal.f.
π¦ subroutine csscal (integer n, real sa, complex, dimension(*) cx, integer incx)
CSSCAL
Purpose:
!>
!> CSSCAL scales a complex vector by a real constant.
!>
yes bestie, mixed types β a real scalar swooping in to scale a complex vector. it's giving versatility π₯
Parameters
N
!> N is INTEGER
!> number of elements in input vector(s)
!>
SA
!> SA is REAL
!> On entry, SA specifies the scalar alpha.
!>
CX
!> CX is COMPLEX array, dimension ( 1 + ( N - 1 )*abs( INCX ) )
!>
INCX
!> INCX is INTEGER
!> storage spacing between elements of CX
!>
Author
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
Further Details:
!>
!> jack dongarra, linpack, 3/11/78.
!> modified 3/93 to return if incx .le. 0.
!> modified 12/3/93, array(1) declarations changed to array(*)
!>
Definition at line 77 of file csscal.f.
π¦ subroutine dscal (integer n, double precision da, double precision, dimension(*) dx, integer incx)
DSCAL
Purpose:
!>
!> DSCAL scales a vector by a constant.
!> uses unrolled loops for increment equal to 1.
!>
double precision AND it unrolls the loops when INCX is 1?? highkey a performance queen π
Parameters
N
!> N is INTEGER
!> number of elements in input vector(s)
!>
DA
!> DA is DOUBLE PRECISION
!> On entry, DA specifies the scalar alpha.
!>
DX
!> DX is DOUBLE PRECISION array, dimension ( 1 + ( N - 1 )*abs( INCX ) )
!>
INCX
!> INCX is INTEGER
!> storage spacing between elements of DX
!>
Author
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
Further Details:
!>
!> jack dongarra, linpack, 3/11/78.
!> modified 3/93 to return if incx .le. 0.
!> modified 12/3/93, array(1) declarations changed to array(*)
!>
Definition at line 78 of file dscal.f.
π¦ subroutine sscal (integer n, real sa, real, dimension(*) sx, integer incx)
SSCAL
Purpose:
!>
!> SSCAL scales a vector by a constant.
!> uses unrolled loops for increment equal to 1.
!>
the single-precision sibling β same unrolled-loop energy when INCX equals 1 π
Parameters
N
!> N is INTEGER
!> number of elements in input vector(s)
!>
SA
!> SA is REAL
!> On entry, SA specifies the scalar alpha.
!>
SX
!> SX is REAL array, dimension ( 1 + ( N - 1 )*abs( INCX ) )
!>
INCX
!> INCX is INTEGER
!> storage spacing between elements of SX
!>
Author
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
Further Details:
!>
!> jack dongarra, linpack, 3/11/78.
!> modified 3/93 to return if incx .le. 0.
!> modified 12/3/93, array(1) declarations changed to array(*)
!>
Definition at line 78 of file sscal.f.
π¦ subroutine zdscal (integer n, double precision da, complex*16, dimension(*) zx, integer incx)
ZDSCAL
Purpose:
!>
!> ZDSCAL scales a vector by a constant.
!>
double-precision real scalar, COMPLEX*16 vector β the Z + D combo meal π
Parameters
N
!> N is INTEGER
!> number of elements in input vector(s)
!>
DA
!> DA is DOUBLE PRECISION
!> On entry, DA specifies the scalar alpha.
!>
ZX
!> ZX is COMPLEX*16 array, dimension ( 1 + ( N - 1 )*abs( INCX ) )
!>
INCX
!> INCX is INTEGER
!> storage spacing between elements of ZX
!>
Author
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
Further Details:
!>
!> jack dongarra, 3/11/78.
!> modified 3/93 to return if incx .le. 0.
!> modified 12/3/93, array(1) declarations changed to array(*)
!>
π tiny heads-up bestie: notice this one's history block saysjack dongarra, 3/11/78.β nolinpackin there, unlike all the others. it's the β¨ unique β¨ one, don't come for me, I'm just the messenger π«Ά
Definition at line 77 of file zdscal.f.
π¦ subroutine zscal (integer n, complex*16 za, complex*16, dimension(*) zx, integer incx)
ZSCAL
Purpose:
!>
!> ZSCAL scales a vector by a constant.
!>
COMPLEX*16 all the way down β scalar AND vector. main character energy, truly π
Parameters
N
!> N is INTEGER
!> number of elements in input vector(s)
!>
ZA
!> ZA is COMPLEX*16
!> On entry, ZA specifies the scalar alpha.
!>
ZX
!> ZX is COMPLEX*16 array, dimension ( 1 + ( N - 1 )*abs( INCX ) )
!>
INCX
!> INCX is INTEGER
!> storage spacing between elements of ZX
!>
Author
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
Further Details:
!>
!> jack dongarra, 3/11/78.
!> modified 3/93 to return if incx .le. 0.
!> modified 12/3/93, array(1) declarations changed to array(*)
!>
Definition at line 77 of file zscal.f.
π Author
Generated automatically by Doxygen for LAPACK from the source code.
(so like, a robot wrote this and we're all just vibing on top of it π)
and that's the whole page bestie, go forth and scale πΈ
LAPACK Version 3.12.0 β mwah, that's the version and it's stamped on scal(3), ok bye now π
β¨π
π¦ where this page comes from
- arch rolling: lapack-doc 3.12.1-2 Β· custom
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms