class_docstr: Gradient of generalized eigenvalues of a Hermitian positive definite
  eigensystem.
class_docstr_tok: ["Gradient","of","generalized","eigenvalues","of","a","Hermitian","positive","definite","eigensystem","."]
code: def make_node(self, a, b, gw):
      assert (
          imported_scipy
      ), "Scipy not available. Scipy is needed for the GEigvalsh op"
      a = as_tensor_variable(a)
      b = as_tensor_variable(b)
      gw = as_tensor_variable(gw)
      assert a.ndim == 2
      assert b.ndim == 2
      assert gw.ndim == 1
  
      out_dtype = theano.scalar.upcast(a.dtype, b.dtype, gw.dtype)
      out1 = theano.tensor.matrix(dtype=out_dtype)
      out2 = theano.tensor.matrix(dtype=out_dtype)
      return Apply(self, [a, b, gw], [out1, out2])
  
imports: from __future__ import absolute_import, print_function, division
  import logging
  import warnings
  from six.moves import xrange
  import numpy
  from theano import tensor
  import theano.tensor
  from theano.tensor import as_tensor_variable
  from theano.gof import Op, Apply
label_desc: Use image node_id 2 for calling the EigvalshGrad obj's underlying member method code with example usage: obj.make_node(a, b, gw) and returns: Apply