parameters: (r, rad, rho, pos=(0., 0., 0.))
return_statement: return (G * deltaMSph(rad, rho) / rabs(r - pos)**5. * gzxyz).T
docstring: r"""TODO WRITEME.
  
      .. math:: g = -\nabla u
  
      Parameters
      ----------
      r : [float, float, float]
          position vector
      rad : float
          radius of the sphere
      rho : float
          density in [kg/m^3]
  
      Returns
      -------
          [\d g_z /\dx, \d g_z /\dy, \d g_z /\dz]
docstring_summary: r"""TODO WRITEME.
docstring_tokens: r TODO WRITEME .
function: def gradGZSphere(r, rad, rho, pos=(0., 0., 0.)):
      r"""TODO WRITEME.
  
      .. math:: g = -\nabla u
  
      Parameters
      ----------
      r : [float, float, float]
          position vector
      rad : float
          radius of the sphere
      rho : float
          density in [kg/m^3]
  
      Returns
      -------
          [\d g_z /\dx, \d g_z /\dy, \d g_z /\dz]
      """
      t = pos[2]
  
      gzxyz = np.asarray([-3.0 * t * r[:, 0],
                          -3.0 * t * r[:, 1],
                          +2.0 * t * t - r[:, 0]**2 - r[:, 1]**2])
      return (G * deltaMSph(rad, rho) / rabs(r - pos)**5. * gzxyz).T
function_tokens: def gradGZSphere ( r , rad , rho , pos = ( 0. , 0. , 0. ) ) : t = pos [ 2 ] gzxyz = np . asarray ( [ - 3.0 * t * r [ : , 0 ] , - 3.0 * t * r [ : , 1 ] , + 2.0 * t * t - r [ : , 0 ] ** 2 - r [ : , 1 ] ** 2 ] ) return ( G * deltaMSph ( rad , rho ) / rabs ( r - pos ) ** 5. * gzxyz ) . T