Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007 #ifndef PHAL_DATATYPES
00008 #define PHAL_DATATYPES
00009
00011
00012
00013 #include "Sacado_MathFunctions.hpp"
00014 #include "Stokhos_Sacado_MathFunctions.hpp"
00015 #include "Sacado_ELRFad_DFad.hpp"
00016 #include "Sacado_ELRCacheFad_DFad.hpp"
00017 #include "Sacado_Fad_DFad.hpp"
00018 #include "Sacado_ELRFad_SLFad.hpp"
00019 #include "Sacado_CacheFad_DFad.hpp"
00020 #include "Sacado_PCE_OrthogPoly.hpp"
00021 #include "Sacado_ETV_Vector.hpp"
00022
00023
00024 typedef double RealType;
00025 #ifdef ALBANY_FAST_FELIX
00026
00027
00028 #define ALBANY_FADTYPE_NOTEQUAL_TANFADTYPE
00029 typedef Sacado::ELRFad::SLFad<double,16> FadType;
00030 #else
00031 typedef Sacado::ELRFad::DFad<double> FadType;
00032 #endif
00033 typedef Sacado::ELRFad::DFad<double> TanFadType;
00034 typedef Stokhos::StandardStorage<int,double> StorageType;
00035 typedef Sacado::PCE::OrthogPoly<double,StorageType> SGType;
00036 typedef Sacado::Fad::DFad<SGType> SGFadType;
00037 typedef Sacado::ETV::Vector<double,StorageType> MPType;
00038 typedef Sacado::Fad::DFad<MPType> MPFadType;
00039
00040
00041
00042 #include "Sacado_ScalarParameterLibrary.hpp"
00043 #include "Sacado_ScalarParameterVector.hpp"
00044
00045
00046
00047
00048 struct SPL_Traits {
00049 template <class T> struct apply {
00050 typedef typename T::ScalarT type;
00051 };
00052 };
00053
00054
00055 typedef Sacado::ScalarParameterLibrary<SPL_Traits> ParamLib;
00056 typedef Sacado::ScalarParameterVector<SPL_Traits> ParamVec;
00057
00058 namespace Albany {
00059
00060
00061 template <typename T>
00062 typename Sacado::ScalarType<T>::type
00063 ADValue(const T& x) { return Sacado::ScalarValue<T>::eval(x); }
00064
00065 }
00066
00067 #endif