After your edit, the solution is quite simple. If you have a member function, the lookup ignores the global template function. You need to reference it explicitly:
Data[0] = ::exp(Data[0]);
// ^^ global scope
If you want the compiler to see both, you could also use:
using ::exp;
Data[0] = exp(Data[0]);