class_docstr: Class to test the shape of the Jacobian/Hessian with different return types and shot vectors.
class_docstr_tok: ["Class","to","test","the","shape","of","the","Jacobian\/Hessian","with","different","return","types","and","shot","vectors","."]
docstr: The jacobian of multiple measurements with a multiple params return a tuple of arrays.
docstr_tok: ["The","jacobian","of","multiple","measurements","with","a","multiple","params","return","a","tuple","of","arrays","."]
code: def test_jacobian_multiple_measurement_multiple_param(
      self, dev_name, diff_method, gradient_kwargs, shots, num_copies
  ):
      """The jacobian of multiple measurements with a multiple params return a tuple of arrays."""
      dev = qml.device(dev_name, wires=2, shots=shots)
  
      @qnode(dev, diff_method=diff_method, **gradient_kwargs)
      def circuit(a, b):
          qml.RY(a, wires=0)
          qml.RX(b, wires=0)
          return qml.expval(qml.PauliZ(0)), qml.probs(wires=[0, 1])
  
      a = np.array(0.1, requires_grad=True)
      b = np.array(0.2, requires_grad=True)
  
      def cost(a, b):
          res = circuit(a, b)
          return qml.math.stack([qml.math.hstack(r) for r in res])
  
      jac = qml.jacobian(cost, argnum=[0, 1])(a, b)
  
      assert isinstance(jac, tuple)
      assert len(jac) == 2
      for j in jac:
          assert isinstance(j, np.ndarray)
          assert j.shape == (num_copies, 5)
  
imports: import pytest
  import pennylane
  from pennylane import numpy
  from pennylane import qnode
label_desc: Use image node_id 12 for calling the TestReturnWithShotVectors obj's underlying member method code with example usage: obj.test_jacobian_multiple_measurement_multiple_param(dev_name, diff_method, gradient_kwargs, shots, num_copies) and returns: qml,  qml, qml