class_docstr_tok: []
code: def make_node(self, x, l, dz):
      x = as_tensor_variable(x)
      l = as_tensor_variable(l)
      dz = as_tensor_variable(dz)
      assert x.ndim == 2
      assert l.ndim == 2
      assert dz.ndim == 2
      assert (
          l.owner.op.lower == self.lower
      ), "lower/upper mismatch between Cholesky op and CholeskyGrad op"
      return Apply(self, [x, l, dz], [x.type()])
  
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 CholeskyGrad obj's underlying member method code with example usage: obj.make_node(x, l, dz) and returns: Apply