diff --git a/contrib/FourierModel/FPatch.cpp b/contrib/FourierModel/FPatch.cpp
index f9213a714fdf9cc37d70765450bd7cc6660e57e0..3038160737d45e184f18f33fc7051dbfaedb7f81 100644
--- a/contrib/FourierModel/FPatch.cpp
+++ b/contrib/FourierModel/FPatch.cpp
@@ -24,14 +24,16 @@ FPatch::FPatch(int tag, ProjectionSurface* ps,
   _uModes = uModes;
   _vModes = vModes;
 
-  _uM = (int)(log((double)uM) / log(2.));
-  _vM = (int)(log((double)vM) / log(2.));
+  _uM = (int)pow(2.,(int)(log((double)uM) / log(2.)));
+  _vM = (int)pow(2.,(int)(log((double)vM) / log(2.)));
 
   if (_ps->IsUPeriodic())
     _uM++;
   if (_ps->IsVPeriodic())
     _vM++;
 
+  printf("%d %d\n",_uM,_vM);
+
   _hardEdge[0] = hardEdge0;
   _hardEdge[1] = hardEdge1;
   _hardEdge[2] = hardEdge2;