class_docstr: Test vector-valued jacobian returns for the JAX Python interface.
class_docstr_tok: ["Test","vector-valued","jacobian","returns","for","the","JAX","Python","interface","."]
docstr: Test the forward evaluation of a cost function that uses the output
  of multiple tapes that be vector-valued.
docstr_tok: ["Test","the","forward","evaluation","of","a","cost","function","that","uses","the","output","of","multiple","tapes","that","be","vector-valued","."]
code: def test_multi_tape_fwd(self, execute_kwargs):
      """Test the forward evaluation of a cost function that uses the output
      of multiple tapes that be vector-valued."""
      dev = qml.device("default.qubit.legacy", wires=2)
      params = jax.numpy.array([0.3, 0.2])
  
      def cost_fn(x):
          with qml.queuing.AnnotatedQueue() as q1:
              qml.RX(x[0], wires=[0])
              qml.expval(qml.PauliY(0))
  
          tape1 = qml.tape.QuantumScript.from_queue(q1)
          with qml.queuing.AnnotatedQueue() as q2:
              qml.RX(x[1], wires=[0])
              qml.RX(x[1], wires=[0])
              qml.RX(-x[1], wires=[0])
              qml.expval(qml.PauliY(0))
              qml.expval(qml.PauliY(1))
  
          tape2 = qml.tape.QuantumScript.from_queue(q2)
          result = qml.execute(
              tapes=[tape1, tape2], device=dev, **execute_kwargs
          )
          return result[0] + result[1][0]
  
      expected = -jax.numpy.sin(params[0]) + -jax.numpy.sin(params[1])
      res = cost_fn(params)
      assert jax.numpy.allclose(expected, res)
  
imports: import pytest
  import numpy
  import pennylane
  from pennylane.gradients import param_shift
  from pennylane import execute
label_desc: Use image node_id 3 for calling the TestVectorValued obj's underlying member method code with example usage: obj.test_multi_tape_fwd(execute_kwargs) and returns: unknown