class_docstr: Class for modeling a linear 1D localization problem.
  
  The state is made of a scalar position and scalar speed, thus a 2D vector.
  A sensor provides acceleration inputs, while another one provides sparse
  measurements of the position.
docstr: Propagate with piece-wise constant acceleration and velocity.
  
  Takes a given (position, speed) pair :math:`(x, v)` and creates a new
  one :math:`(x + dt * v, v + dt * acc)`, where the time step and the
  acceleration are given by an accelerometer.
  
  Parameters
  ----------
  state : array-like, shape=[dim]
      Vector representing a state (position, speed).
  sensor_input : array-like, shape=[2]
      Vector representing the information from the accelerometer.
  
  Returns
  -------
  new_state : array-like, shape=[dim]
      Vector representing the propagated state.
docstr_tok: ["Propagate","with","piece-wise","constant","acceleration","and","velocity",".","Takes","a","given","(","position",",","speed",")","pair",":","math",":","`","(","x",",","v",")","`","and","creates","a","new","one",":","math",":","`","(","x","+","dt","*","v",",","v","+","dt","*","acc",")","`",",","where","the","time","step","and","the","acceleration","are","given","by","an","accelerometer",".","Parameters","--","--","--","--","--","state",":","array-like",",","shape=","[","dim","]","Vector","representing","a","state","(","position",",","speed",")",".","sensor_input",":","array-like",",","shape=","[","2","]","Vector","representing","the","information","from","the","accelerometer",".","Returns","--","--","--","-","new_state",":","array-like",",","shape=","[","dim","]","Vector","representing","the","propagated","state","."]
code: def propagate(state, sensor_input):
      r"""Propagate with piece-wise constant acceleration and velocity.
  
      Takes a given (position, speed) pair :math:`(x, v)` and creates a new
      one :math:`(x + dt * v, v + dt * acc)`, where the time step and the
      acceleration are given by an accelerometer.
  
      Parameters
      ----------
      state : array-like, shape=[dim]
          Vector representing a state (position, speed).
      sensor_input : array-like, shape=[2]
          Vector representing the information from the accelerometer.
  
      Returns
      -------
      new_state : array-like, shape=[dim]
          Vector representing the propagated state.
      """
      dt, acc = sensor_input
      pos, speed = state
      pos = pos + dt * speed
      speed = speed + dt * acc
      return gs.array([pos, speed])
  
imports: import geomstats.backend
  from geomstats.geometry.euclidean import Euclidean
  from geomstats.geometry.matrices import Matrices
  from geomstats.geometry.special_euclidean import SpecialEuclidean
label_desc: Use image node_id 2 for calling the LocalizationLinear obj's underlying member method code with example usage: obj.propagate(state, sensor_input) and returns: gs