code: def plot_main(self, with_caustics=False, image_names=False):
          
  
          f, axes = plt.subplots(2, 3, figsize=(16, 8))
          self.data_plot(ax=axes[0, 0])
          self.model_plot(ax=axes[0, 1], image_names=True)
          self.normalized_residual_plot(ax=axes[0, 2], v_min=-6, v_max=6)
          self.source_plot(ax=axes[1, 0], deltaPix_source=0.01, numPix=100, with_caustics=with_caustics)
          self.convergence_plot(ax=axes[1, 1], v_max=1)
          self.magnification_plot(ax=axes[1, 2])
          f.tight_layout()
          f.subplots_adjust(left=None, bottom=None, right=None, top=None, wspace=0., hspace=0.05)
          return f, axes
docs: print the main plots together in a joint frame
  
          :return: