On my system this gives a nonempty plot:
tpmsI[a_] :=
2 Cos[a x] Cos[a y] + 2 Cos[a x] Cos[a z] + 2 Cos[a y] Cos[a z] -
Cos[a 2 x] - Cos[a 2 y] - Cos[a 2 z];
RegionPlot3D[(-0.5 < tpmsI[1.7 - 0.2*(1 - Exp[-Norm[{x, y}]/3])] <
0.5) && Norm[{x, y}] < 10,
{x, -10, 10}, {y, -10, 10}, {z, 0, 5}, PlotPoints -> 50]
It is probably not accurate, because PlotPoints
should be much higher, but it would take longer computation time.