code: def get_z(timestep):
      delta = 0.08 * np.cos(timestep * 0.15)
      amps = [0.95, 0.95, -0.95, -0.95]
      xmids = [-0.4, 0.4, -0.4, 0.4]
      ymids = [-0.4, 0.4, 0.4, -0.4]
      rads = [0.4 + delta, 0.4 + delta, 0.4 - delta, 0.4 - delta]
  
      z = np.zeros_like(x)
      for amp, xmid, ymid, rad in zip(amps, xmids, ymids, rads):
          z += amp * np.exp(
              -((x - xmid) ** 2 + (y - ymid) ** 2) / rad**2
          )
      return z
  
imports: import numpy
  from bokeh.driving import count
  from bokeh.palettes import PiYG
  from bokeh.plotting import curdoc, figure
  from bokeh.plotting.contour import contour_data
label_desc: Use image node_id 1 for calling a global function with example usage: get_z(timestep) and returns: z