<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def TeArraySizeCheck(self):
 """ Checks that Te and q0 array sizes are compatible For finite difference solution. """

    # Only if they are both defined and are arrays
    # Both being arrays is a possible bug in this check routine that I have 
    # intentionally introduced
    if type(self.Te) == np.ndarray and type(self.qs) == np.ndarray:
      # Doesn't touch non-arrays or 1D arrays
      if type(self.Te) is np.ndarray:
        if (np.array(self.Te.shape) != np.array(self.qs.shape)).any():
          sys.exit("q0 and Te arrays have incompatible shapes. Exiting.")
      else:
        if self.Debug: print("Te and qs array sizes pass consistency check")