AnasaziConfigDefs.hpp

Go to the documentation of this file.
00001 // @HEADER
00002 // ***********************************************************************
00003 //
00004 //                 Anasazi: Block Eigensolvers Package
00005 //                 Copyright (2004) Sandia Corporation
00006 //
00007 // Under terms of Contract DE-AC04-94AL85000, there is a non-exclusive
00008 // license for use of this work by or on behalf of the U.S. Government.
00009 //
00010 // This library is free software; you can redistribute it and/or modify
00011 // it under the terms of the GNU Lesser General Public License as
00012 // published by the Free Software Foundation; either version 2.1 of the
00013 // License, or (at your option) any later version.
00014 //
00015 // This library is distributed in the hope that it will be useful, but
00016 // WITHOUT ANY WARRANTY; without even the implied warranty of
00017 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00018 // Lesser General Public License for more details.
00019 //
00020 // You should have received a copy of the GNU Lesser General Public
00021 // License along with this library; if not, write to the Free Software
00022 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
00023 // USA
00024 // Questions? Contact Michael A. Heroux (maherou@sandia.gov)
00025 //
00026 // ***********************************************************************
00027 // @HEADER
00028 
00034 #ifndef ANASAZI_CONFIGDEFS_HPP
00035 #define ANASAZI_CONFIGDEFS_HPP
00036 
00037 #ifndef __cplusplus
00038 #define __cplusplus
00039 #endif
00040 
00041 #ifdef HAVE_CONFIG_H
00042 
00043 /*
00044  * The macros PACKAGE, PACKAGE_NAME, etc, get defined for each package and need to
00045  * be undef'd here to avoid warnings when this file is included from another package.
00046  * KL 11/25/02
00047  */
00048 #ifdef PACKAGE
00049 #undef PACKAGE
00050 #endif
00051 
00052 #ifdef PACKAGE_NAME
00053 #undef PACKAGE_NAME
00054 #endif
00055 
00056 #ifdef PACKAGE_BUGREPORT
00057 #undef PACKAGE_BUGREPORT
00058 #endif
00059 
00060 #ifdef PACKAGE_STRING
00061 #undef PACKAGE_STRING
00062 #endif
00063 
00064 #ifdef PACKAGE_TARNAME
00065 #undef PACKAGE_TARNAME
00066 #endif
00067 
00068 #ifdef PACKAGE_VERSION
00069 #undef PACKAGE_VERSION
00070 #endif
00071 
00072 #ifdef VERSION
00073 #undef VERSION
00074 #endif
00075 
00076 #include <Anasazi_config.h>
00077 
00078 #ifdef HAVE_MPI
00079 #ifndef EPETRA_MPI
00080 #define EPETRA_MPI
00081 #endif
00082 #endif
00083 
00084 #ifdef HAVE_CSTDLIB
00085 #include <cstdlib>
00086 #else
00087 #include <stdlib.h>
00088 #endif
00089 
00090 #ifdef HAVE_CSTDIO
00091 #include <cstdio>
00092 #else
00093 #include <stdio.h>
00094 #endif
00095 
00096 #ifdef HAVE_STRING
00097 #include <string>
00098 #endif
00099 
00100 #if HAVE_CSTRING
00101 #include <cstring>
00102 #else
00103 #include <string.h>
00104 #endif
00105 
00106 #ifdef HAVE_VECTOR
00107 #include <vector>
00108 #else
00109 #include <vector.h>
00110 #endif
00111 
00112 #ifdef HAVE_NUMERIC
00113 #include <numeric>
00114 #else
00115 #include <algo.h>
00116 #endif
00117 
00118 #ifdef HAVE_COMPLEX
00119 #include <complex>
00120 #else
00121 #include <complex.h>
00122 #endif
00123 
00124 #ifdef HAVE_IOSTREAM
00125 #include <iostream>
00126 #else
00127 #include <iostream.h>
00128 #endif
00129 
00130 #ifdef HAVE_ITERATOR
00131 #include <iterator>
00132 #else
00133 #include <iterator.h>
00134 #endif
00135 
00136 #if HAVE_STDEXCEPT
00137 #include <stdexcept>
00138 #elif HAVE_STDEXCEPT_H
00139 #include <stdexcept.h>
00140 #endif
00141 
00142 #ifndef JANUS_STLPORT
00143 #ifdef HAVE_CMATH
00144 #include <cmath>
00145 #else
00146 #include <math.h>
00147 #endif
00148 #else /* JANUS_STLPORT */
00149 #include <math.h>
00150 #endif /* JANUS_STLPORT */
00151 
00152 #else /*HAVE_CONFIG_H is not defined*/
00153 
00154 #include <iterator>
00155 #include <iostream>
00156 #include <string>
00157 
00158 #if defined(SGI) || defined(SGI64) || defined(SGI32) || defined(CPLANT) || defined (TFLOP)
00159 
00160 #include <stdlib.h>
00161 #include <stdio.h>
00162 #include <math.h>
00163 
00164 #else
00165 
00166 #include <cstdlib>
00167 #include <cstdio>
00168 #include <cmath>
00169 
00170 #endif
00171 
00172 #include <vector>
00173 #include <map>
00174 #include <deque>
00175 #include <algorithm>
00176 #include <numeric>
00177 
00178 #endif /*HAVE_CONFIG_H*/
00179 
00180 /* Define some macros */
00181 #define ANASAZI_MAX(x,y) (( (x) > (y) ) ? (x)  : (y) )     /* max function  */
00182 #define ANASAZI_MIN(x,y) (( (x) < (y) ) ? (x)  : (y) )     /* min function  */
00183 #define ANASAZI_SGN(x)   (( (x) < 0.0 ) ? -1.0 : 1.0 )     /* sign function */
00184 
00185 /*
00186  * Anasazi_Version() method 
00187  */
00188 namespace Anasazi {
00189   std::string Anasazi_Version();
00190 }
00191 
00192 #endif /*ANASAZI_CONFIGDEFS_HPP*/

Generated on Tue Oct 20 12:45:18 2009 for Anasazi by doxygen 1.4.7