class_docstr: In-house ODE integrator.
  
  Parameters
  ----------
  n_steps : int
      Number of steps to perform.
  step_type : str
      Type of integration step.
      Possible values are `euler`, `rk2`, `rk4`.
  save_result : bool
      If True, result is stored after calling `integrate` or `integrate_t`.
code: def __init__(self, n_steps=10, step_type="euler", save_result=False):
      super().__init__(
          save_result=save_result, state_is_raveled=False, tfirst=False
      )
      self.step_type = step_type
      self.n_steps = n_steps
  
imports: from abc import ABC, abstractmethod
  import scipy
  import geomstats.backend
  import geomstats.integrator
  from geomstats.errors import check_parameter_accepted_values
  from geomstats.numerics._common import result_to_backend_type
label_desc: Use image node_id 1 to create a new GSIVPIntegrator object from inherited base classes: ODEIVPSolver with example: obj = GSIVPIntegrator(n_steps, step_type, save_result)