docs: def bm3_v(p, v0, k0, k0p, p_ref=0.0, min_strain=0.01):
      """
      find volume at given pressure using brenth in scipy.optimize
  
      :param p: pressure
      :param v0: volume at reference conditions
      :param k0: bulk modulus at reference conditions
      :param k0p: pressure derivative of bulk modulus at different conditions
      :param p_ref: reference pressure (default = 0)
      :param min_strain: minimum strain value to find solution (default = 0.01)
      :return: volume at high pressure
      """
      if isuncertainties([p, v0, k0, k0p]):
          f_u = np.vectorize(uct.wrap(bm3_v_single), excluded=[1, 2, 3, 4, 5])
          return f_u(p, v0, k0, k0p, p_ref=p_ref, min_strain=min_strain)
      else:
          f_v = np.vectorize(bm3_v_single, excluded=[1, 2, 3, 4, 5])
          return f_v(p, v0, k0, k0p, p_ref=p_ref, min_strain=min_strain)