# {py:mod}`evox.algorithms.so.de_variants.ode` ```{py:module} evox.algorithms.so.de_variants.ode ``` ```{autodoc2-docstring} evox.algorithms.so.de_variants.ode :allowtitles: ``` ## Module Contents ### Classes ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`ODE ` - ```{autodoc2-docstring} evox.algorithms.so.de_variants.ode.ODE :summary: ``` ```` ### API `````{py:class} ODE(pop_size: int, lb: torch.Tensor, ub: torch.Tensor, base_vector: typing.Literal[best, rand] = 'rand', num_difference_vectors: int = 1, differential_weight: float | torch.Tensor = 0.5, cross_probability: float = 0.9, mean: torch.Tensor | None = None, stdev: torch.Tensor | None = None, device: torch.device | None = None) :canonical: evox.algorithms.so.de_variants.ode.ODE Bases: {py:obj}`evox.core.Algorithm` ```{autodoc2-docstring} evox.algorithms.so.de_variants.ode.ODE ``` ```{rubric} Initialization ``` ```{autodoc2-docstring} evox.algorithms.so.de_variants.ode.ODE.__init__ ``` ````{py:method} init_step() :canonical: evox.algorithms.so.de_variants.ode.ODE.init_step ```{autodoc2-docstring} evox.algorithms.so.de_variants.ode.ODE.init_step ``` ```` ````{py:method} step() :canonical: evox.algorithms.so.de_variants.ode.ODE.step ```{autodoc2-docstring} evox.algorithms.so.de_variants.ode.ODE.step ``` ```` `````