$extrastylesheet
libmesh_isnan.c
Go to the documentation of this file.
00001 // The libMesh Finite Element Library.
00002 // Copyright (C) 2002-2008 Benjamin S. Kirk, John W. Peterson, Roy H. Stogner
00003   
00004 // This library is free software; you can redistribute it and/or
00005 // modify it under the terms of the GNU Lesser General Public
00006 // License as published by the Free Software Foundation; either
00007 // version 2.1 of the License, or (at your option) any later version.
00008   
00009 // This library is distributed in the hope that it will be useful,
00010 // but WITHOUT ANY WARRANTY; without even the implied warranty of
00011 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00012 // Lesser General Public License for more details.
00013   
00014 // You should have received a copy of the GNU Lesser General Public
00015 // License along with this library; if not, write to the Free Software
00016 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
00017 
00018  
00019 
00020 // C++ includes
00021 #include <math.h>
00022 #include "libmesh/libmesh_C_isnan.h"
00023 
00024 #ifdef isnan
00025 int libmesh_C_isnan_float(float a) { return isnan(a); }
00026 int libmesh_C_isnan_double(double a) { return isnan(a); }
00027 int libmesh_C_isnan_longdouble(long double a) { return isnan(a); }
00028 
00029 #else
00030 int libmesh_C_isnan_float(float a) { return (a != a); }
00031 int libmesh_C_isnan_double(double a) { return (a != a); }
00032 int libmesh_C_isnan_longdouble(long double a) { return (a != a); }
00033 
00034 #endif