Sample record of thoughts by someone as they attempted to regenerate these graphs.

               

I'll try the "walking along an axis" way of looking at it. As I walk down the x-axis, I carry a straight line that varies in its slope. As I walk down the y axis I carry a parabola that changes its width. I'll try this as a product of functions, since the graphs in both directions stay of the same type but change by their coefficients.

Try z = k x2y, with k=1. Yes!

                                    

The x-curves (curves carried in the direction of the y axis) are all congruent and the y-curves (the curves carried along the x axis) are all congruent. So z = g(x) + h(y). The curves for fixed values of x look like h(y) = -y2. The curves for fixed values of y look like x3. Try z = x3y2. I got it.

                      

The "walking along an axis" way of thinking doesn't work with this one, so I'll try looking at it in terms of level curves.

 

The cross-sections of the target graph appear to be ellipses.

A cross section at a fixed value of z.

I'll look at the graph of an elliptical function, like z = 4x2 + y2 (see side graph; its cross sections are ellipses). This isn't close, but it gives me an idea! The target graph has an oscillating behavior, which suggests it is a graph of sin( ) or cos( ). I'll try sin( ), since cos( ) will give me a hump in the middle instead of a dip like the target graph has.

Well, the graph of sin(4x2 + y2) is a big leap forward. I get the right kind of behavior, but there are too many oscillations along the x-axis and not enough along the y-axis. I need to re-orient the ellipses in the x-y plane. I'll try z = sin(x2 + 3y2).

z = sin(4x2 + y2)

I notice that I don't see as much of the back edge on this graph as on the target graph. I chalk this up to perspective--I'm not viewing this graph from the same elevation as the target graph. So ... Got it.

z = sin(x2 + 3y2)

                                

The x-curves in the target graph are congruent and the y-curves in the target graph are congruent, so z = g(x) + h(y). The x-curves look like sin( ) or cos( ). I'll try sin( ).The y-curves look like |sin(something)|, since they have a sharp break in their curvature around y=0. I'll try z = sin(x) + |sin(y)| (see graph below).

z = sin(x) + |sin(y)|

I don't see enough oscillating behavior along the x-axis. I'll try z = sin(2x) + |sin(y)|.

Now I see too many oscillations along the x-axis. I'll try  z = sin(1.5x) + |sin(y)| (see next graph).

 z = sin(2x) + |sin(y)|

As I look at the graph of z = sin(1.5x) + |sin(y)| I feel that something's just not right. The graph is not symmetric about the y-z plane like it is in the target graph.

z = sin(1.5x) + |sin(y)|

Oh! Insight! I need an even function of x to have it be symmetric about the y-z plane. I should be using cos(something) for the g(x) that I originally sought. I'll try z = cos(1.5x) + |sin(y)| (next graph).

z = cos(1.5x) + |sin(y)|

Well, this is much better, but now I don't have quite enough oscillating going on along the x-axis. I'll try z = cos(2x) + |sin(y)|. Yeah. (Graph not shown here, but it matched the target graph.)

 

                                           

                                                                   (This graph is a cone)

This one is fairly easy once you think about it the right way. It is like z = kr, where r is the radius of a circle in the x-y plane.The radius of a circle in the x-y plane is given by r = . The target graph looks like it's edges go up at a 45 degree angle from the x-y plane, so try k=1 in z = k, Da Bomb.

          

(Pay attention to curvature!)

g(x,y) = x2y2

I first thought that this is the graph of g(x,y) = x2y2. If you look at the graph of g(x,y) = x2y2, however, you will see that the curvature of the x- and y- curves are different from the target graph. In the graph of g, the x- and y- curves do not have points of inflection, whereas in the target graph the x- and y- curves do have points of inflection.

I see that f must be a product of two even functions u(x) and v(y), and u(0) = v(0) = 0. Looking at the x-curves, I noticed they looked like a portion of a cosine curve, but scaled and inverted. I settled on z = (1-cos(x))v(y). Looking at the y-curves, I saw the same behavior as the x-curves.

Try z = (1- cos(x))(1- cos(y)). Cha ching.