Repeating a process with incremental changes

Hi everyone,

I'm very new to Grasshopper and am trying to create an algorithmic coffee table. Basically the outside of the table is made up of a number of layers that are curved, each layer being less and less curved the closer it is to the center.  The height of the curve is dependent on the (x,y) distance from an arbitrary circle. I've succeeded in creating a single curve but when I split the z-component, create a decreasing series, then combine the vectors again the components don't quite match up. Any suggestions on what I should do?

Here's what I'm aiming to create:

Thanks,

Owen