



"""simple docstring"""





from collections.abc import Callable

import numpy as np




def 	UpperCAmelCase     (		A	:						Callable     ,				A	:						float     ,				A	:						float     ,				A	:						float     ,				A	:						float       ):

		'''simple docstring'''


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

		for k in range(A       ):
				_UpperCAmelCase							 =		y[k] + step_size * ode_func(A     ,				y[k]       )
				_UpperCAmelCase							 =		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()







"""simple docstring"""





from typing import TYPE_CHECKING

from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_tokenizers_available, is_torch_available


lowercase  							=					{
    '''configuration_mvp''': ['''MVP_PRETRAINED_CONFIG_ARCHIVE_MAP''', '''MvpConfig''', '''MvpOnnxConfig'''],
    '''tokenization_mvp''': ['''MvpTokenizer'''],
}

try:
					if not is_tokenizers_available():
										raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
					pass
else:
					lowercase  							=					['''MvpTokenizerFast''']

try:
					if not is_torch_available():
										raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
					pass
else:
					lowercase  							=					[
					    '''MVP_PRETRAINED_MODEL_ARCHIVE_LIST''',
					    '''MvpForCausalLM''',
					    '''MvpForConditionalGeneration''',
					    '''MvpForQuestionAnswering''',
					    '''MvpForSequenceClassification''',
					    '''MvpModel''',
					    '''MvpPreTrainedModel''',
					]

if TYPE_CHECKING:
					from .configuration_mvp import MVP_PRETRAINED_CONFIG_ARCHIVE_MAP, MvpConfig, MvpOnnxConfig
					from .tokenization_mvp import MvpTokenizer

					try:
										if not is_tokenizers_available():
															raise OptionalDependencyNotAvailable()
					except OptionalDependencyNotAvailable:
										pass
					else:
										from .tokenization_mvp_fast import MvpTokenizerFast

					try:
										if not is_torch_available():
															raise OptionalDependencyNotAvailable()
					except OptionalDependencyNotAvailable:
										pass
					else:
										from .modeling_mvp import (
										    MVP_PRETRAINED_MODEL_ARCHIVE_LIST,
										    MvpForCausalLM,
										    MvpForConditionalGeneration,
										    MvpForQuestionAnswering,
										    MvpForSequenceClassification,
										    MvpModel,
										    MvpPreTrainedModel,
										)

else:
					import sys

					lowercase  							=					_LazyModule(__name__, globals()['''__file__'''], _import_structure, module_spec=__spec__)


