





from ..utils import DummyObject, requires_backends






class  UpperCAmelCase__	( metaclass=A__ ):






  """simple docstring"""


  a     =      ["note_seq"]






  def __init__(							self		:	Tuple			,     *__lowerCamelCase		:	Optional[Any]			,     **__lowerCamelCase		:	Optional[int]      )	->							List[str]:
       requires_backends(self			,     ['''note_seq''']      )






  @classmethod
  def    lowercase_	(							cls		:	Optional[Any]			,     *__lowerCamelCase		:	str			,     **__lowerCamelCase		:	Dict      )	->							Dict:
       requires_backends(cls			,     ['''note_seq''']      )







  @classmethod
  def    lowercase_	(							cls		:	Dict			,     *__lowerCamelCase		:	Tuple			,     **__lowerCamelCase		:	int      )	->							str:
       requires_backends(cls			,     ['''note_seq''']      )





from collections.abc import Callable

import numpy as np
def        UpperCAmelCase_     (		_A   ,	_A   ,	_A   ,	_A   ,	_A       ):





     '''simple docstring'''




     SCREAMING_SNAKE_CASE__					=					int(np.ceil((x_end - xa) / step_size       )       )
     SCREAMING_SNAKE_CASE__					=					np.zeros((n + 1,)       )
     SCREAMING_SNAKE_CASE__					=					ya
     SCREAMING_SNAKE_CASE__					=					xa

     for k in range(_A       ):
          SCREAMING_SNAKE_CASE__					=					y[k] + step_size * ode_func(_A   ,	y[k]       )
          SCREAMING_SNAKE_CASE__					=					y[k] + (
              (step_size / 2) * (ode_func(_A   ,	y[k]       ) + ode_func(x + step_size   ,	_A       ))
          )
          x += step_size

     return y


if __name__ == "__main__":
       import doctest

       doctest.testmod()


