1*> \brief \b DLAISNAN tests input for NaN by comparing two arguments for inequality. 2* 3* =========== DOCUMENTATION =========== 4* 5* Online html documentation available at 6* http://www.netlib.org/lapack/explore-html/ 7* 8*> \htmlonly 9*> Download DLAISNAN + dependencies 10*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.tgz?format=tgz&filename=/lapack/lapack_routine/dlaisnan.f"> 11*> [TGZ]</a> 12*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.zip?format=zip&filename=/lapack/lapack_routine/dlaisnan.f"> 13*> [ZIP]</a> 14*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.txt?format=txt&filename=/lapack/lapack_routine/dlaisnan.f"> 15*> [TXT]</a> 16*> \endhtmlonly 17* 18* Definition: 19* =========== 20* 21* LOGICAL FUNCTION DLAISNAN( DIN1, DIN2 ) 22* 23* .. Scalar Arguments .. 24* DOUBLE PRECISION, INTENT(IN) :: DIN1, DIN2 25* .. 26* 27* 28*> \par Purpose: 29* ============= 30*> 31*> \verbatim 32*> 33*> This routine is not for general use. It exists solely to avoid 34*> over-optimization in DISNAN. 35*> 36*> DLAISNAN checks for NaNs by comparing its two arguments for 37*> inequality. NaN is the only floating-point value where NaN != NaN 38*> returns .TRUE. To check for NaNs, pass the same variable as both 39*> arguments. 40*> 41*> A compiler must assume that the two arguments are 42*> not the same variable, and the test will not be optimized away. 43*> Interprocedural or whole-program optimization may delete this 44*> test. The ISNAN functions will be replaced by the correct 45*> Fortran 03 intrinsic once the intrinsic is widely available. 46*> \endverbatim 47* 48* Arguments: 49* ========== 50* 51*> \param[in] DIN1 52*> \verbatim 53*> DIN1 is DOUBLE PRECISION 54*> \endverbatim 55*> 56*> \param[in] DIN2 57*> \verbatim 58*> DIN2 is DOUBLE PRECISION 59*> Two numbers to compare for inequality. 60*> \endverbatim 61* 62* Authors: 63* ======== 64* 65*> \author Univ. of Tennessee 66*> \author Univ. of California Berkeley 67*> \author Univ. of Colorado Denver 68*> \author NAG Ltd. 69* 70*> \ingroup OTHERauxiliary 71* 72* ===================================================================== 73 LOGICAL FUNCTION DLAISNAN( DIN1, DIN2 ) 74* 75* -- LAPACK auxiliary routine -- 76* -- LAPACK is a software package provided by Univ. of Tennessee, -- 77* -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..-- 78* 79* .. Scalar Arguments .. 80 DOUBLE PRECISION, INTENT(IN) :: DIN1, DIN2 81* .. 82* 83* ===================================================================== 84* 85* .. Executable Statements .. 86 DLAISNAN = (DIN1.NE.DIN2) 87 RETURN 88 END 89