File indexing completed on 2025-08-05 08:21:15
0001
0002
0003
0004
0005
0006
0007 FUNCTION PYRVG1(X)
0008
0009 IMPLICIT NONE
0010 COMMON/PYRVPM/RM(0:3),A(2),B(2),RESM(2),RESW(2),MFLAG
0011 DOUBLE PRECISION X, RM, A, B, RESM, RESW, DELTAY,PYRVR
0012 DOUBLE PRECISION RVR,PYRVG1,E2,E3,C1,SR1,SR2,A1,A2
0013 LOGICAL MFLAG
0014 SAVE/PYRVPM/
0015 RVR = PYRVR(X,RESM(1),RESW(1))
0016 C1 = 2D0*SQRT(MAX(0D0,X))
0017 IF (.NOT.MFLAG) THEN
0018 E2 = X/C1
0019 E3 = (RM(0)**2-X)/C1
0020 DELTAY = 4D0*E2*E3
0021 PYRVG1 = DELTAY*RVR*X*(A(1)**2+B(1)**2)*(RM(0)**2-X)
0022 ELSE
0023 E2 = (X-RM(1)**2+RM(2)**2)/C1
0024 E3 = (RM(0)**2-X-RM(3)**2)/C1
0025 SR1 = SQRT(MAX(0D0,E2**2-RM(2)**2))
0026 SR2 = SQRT(MAX(0D0,E3**2-RM(3)**2))
0027 DELTAY = 4D0*SR1*SR2
0028 A1 = 4.*A(1)*B(1)*RM(3)*RM(0)
0029 A2 = (A(1)**2+B(1)**2)*(RM(0)**2+RM(3)**2-X)
0030 PYRVG1 = DELTAY*RVR*(X-RM(1)**2-RM(2)**2)*(A1+A2)
0031 ENDIF
0032 RETURN
0033 END