55 INTEGER,
INTENT(INOUT) ::
a,
b
71 REAL(RFREAL),
INTENT(INOUT) ::
a,
b
89 REAL(RFREAL),
INTENT(IN) ::
x
101 REAL(RFREAL),
INTENT(IN) ::
a,
b
102 REAL(RFREAL),
INTENT(IN),
OPTIONAL :: tolin
108 IF ( present(tolin) .EQV. .true. )
THEN
111 tol = 10.0_rfreal*epsilon(1.0_rfreal)
114 IF ( abs(
a-
b) <= (1.0_rfreal + 0.5_rfreal*abs(
a+
b))*tol )
THEN
126 REAL(RFREAL),
INTENT(IN) ::
a,
b
130 IF (
a -
b >
b*epsilon(1.0_rfreal) )
THEN
142 REAL(RFREAL),
INTENT(IN) ::
a,
b
146 IF (
a -
b <
b*epsilon(1.0_rfreal) )
THEN
158 INTEGER,
INTENT(IN) ::
n
178 REAL(RFREAL),
INTENT(IN) ::
a,
b
180 REAL(RFREAL) :: absa,absb
185 IF ( absa > absb )
THEN
188 IF ( absb == 0.0_rfreal )
THEN
205 REAL(RFREAL),
INTENT(IN) ::
x
209 IF ( .NOT.(
x > -huge(1.0) .AND.
x < huge(1.0)) )
THEN
static SURF_BEGIN_NAMESPACE double sign(double x)