For a simulation, I need to create a function $r(\theta,\phi)$ that has minima at specific pairs of $(\theta,\phi)$, and that is periodic, i.e. $r(\theta,\phi) = r(\theta+2\pi,\phi)$ and $r(\theta,\phi) = r(\theta,\phi+2\pi)$ etc. At least the first and second derivatives of the function should be continuous.
How can I construct such a function? I imagine that when drawn as a surface, it will look a bit like a bowling ball, but without the sharp edges.
EDIT I can imagine several ways of creating a function with a single minimum at $(\theta_0,\phi_0)$, but I am stuck creating a function that has a second (or third) minumum at e.g. $(\theta_1,\phi_1)$, but not at $(\theta_0,\phi_1)$ or $(\theta_1,\phi_0)$