📄 drotg.f
字号:
SUBROUTINE DROTG(DA,DB,C,S)* .. Scalar Arguments .. DOUBLE PRECISION C,DA,DB,S* ..** Purpose* =======** construct givens plane rotation.* jack dongarra, linpack, 3/11/78.*** .. Local Scalars .. DOUBLE PRECISION R,ROE,SCALE,Z* ..* .. Intrinsic Functions .. INTRINSIC DABS,DSIGN,DSQRT* .. ROE = DB IF (DABS(DA).GT.DABS(DB)) ROE = DA SCALE = DABS(DA) + DABS(DB) IF (SCALE.NE.0.0d0) GO TO 10 C = 1.0d0 S = 0.0d0 R = 0.0d0 Z = 0.0d0 GO TO 20 10 R = SCALE*DSQRT((DA/SCALE)**2+ (DB/SCALE)**2) R = DSIGN(1.0d0,ROE)*R C = DA/R S = DB/R Z = 1.0d0 IF (DABS(DA).GT.DABS(DB)) Z = S IF (DABS(DB).GE.DABS(DA) .AND. C.NE.0.0d0) Z = 1.0d0/C 20 DA = R DB = Z RETURN END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -