docstr: Inverse the sample `x` from time `t_start` to `t_end` by DPM-Solver.
  For discrete-time DPMs, we use `t_start=1/N`, where `N` is the total time steps during training.
docstr_tok: ["Inverse","the","sample","`","x","`","from","time","`","t_start","`","to","`","t_end","`","by","DPM-Solver",".","For","discrete-time","DPMs",",","we","use","`","t_start=1\/N","`",",","where","`","N","`","is","the","total","time","steps","during","training","."]
code: def inverse(
      self,
      x,
      steps=20,
      t_start=None,
      t_end=None,
      order=2,
      skip_type="time_uniform",
      method="multistep",
      lower_order_final=True,
      denoise_to_zero=False,
      solver_type="dpmsolver",
      atol=0.0078,
      rtol=0.05,
      return_intermediate=False,
  ):
      """
      Inverse the sample `x` from time `t_start` to `t_end` by DPM-Solver.
      For discrete-time DPMs, we use `t_start=1/N`, where `N` is the total time steps during training.
      """
      t_0 = (
          1.0 / self.noise_schedule.total_N
          if t_start is None
          else t_start
      )
      t_T = self.noise_schedule.T if t_end is None else t_end
      assert (
          t_0 > 0 and t_T > 0
      ), "Time range needs to be greater than 0. For discrete-time DPMs, it needs to be in [1 / N, 1], where N is the length of betas array"
      return self.sample(
          x,
          steps=steps,
          t_start=t_0,
          t_end=t_T,
          order=order,
          skip_type=skip_type,
          method=method,
          lower_order_final=lower_order_final,
          denoise_to_zero=denoise_to_zero,
          solver_type=solver_type,
          atol=atol,
          rtol=rtol,
          return_intermediate=return_intermediate,
      )
  
imports: import math
  import torch
label_desc: Use image node_id 18 for calling the DPM_Solver obj's underlying member method code with example usage: obj.inverse(x, steps, t_start, t_end, order, skip_type, method, lower_order_final, denoise_to_zero, solver_type, atol, rtol, return_intermediate) and returns: self