// max555 - finds maximum of a gridded-function over a 5x5x5 cube // // created - rjc 2009.10.20 // force interpolation to lie within specified bounds - rjc 2013.9.23 #include #include "msg.h" #define min(a,b) (a bestval) { bestval = value; for (l=0; l<3; l++) xbest[l] = x[l]; } } // relocate center and reduce grid size for (l=0; l<3; l++) center[l] = xbest[l]; dx0 /= 5.0; dx1 /= 5.0; dx2 /= 5.0; msg ("max value %f at %g %g %g", 0, bestval, xbest[0], xbest[1], xbest[2]); } while (dx0 > epsilon || dx1 > epsilon || dx2 > epsilon); // return result to caller *drfmax = bestval; for (l=0; l<3; l++) xi[l] = xbest[l]; }