code: def reset(self, rhs, x=None):
      self.rhs = rhs
  
      if x is None:
          x = np.zeros((self.operator.shape[0],))
      self.x = x
  
      self.residual = rhs - self.operator(x)
  
      self.d = self.precon(self.residual)
  
      # grows at the end
      delta = AsyncInnerProduct(
          self.residual, self.d, self.pagelocked_allocator
      )
      self.real_delta_queue = [delta]
      self.delta = delta.gpu_result
  
file_path: pycuda/pycuda/sparse/cg.py
imports: from __future__ import division
  from __future__ import absolute_import
  from pycuda.sparse.inner import AsyncInnerProduct
  from pytools import memoize_method
  import pycuda.driver
  import pycuda.gpuarray
  import numpy
label_desc: Use image node_id 6 for calling the CGStateContainer obj's underlying member method code with example usage: obj.reset(rhs, x) without return types