sequince.steps.mutation.factory
===============================

.. py:module:: sequince.steps.mutation.factory


Functions
---------

.. autoapisummary::

   sequince.steps.mutation.factory.get_mutation_step


Module Contents
---------------

.. py:function:: get_mutation_step(mutation, target, transform = None, mutation_n_steps = 10, mutation_kwargs = None, adaptive_mutation = None)

   Construct a configured mutation step.

   :param mutation: Named mutation, custom step, or disabled mutation.
   :type mutation: str, SMCStep or None
   :param target: Target passed to the mutation constructor.
   :type target: Target or callable
   :param transform: Transform passed to the mutation constructor.
   :type transform: ParticleTransform or None, optional
   :param mutation_n_steps: Fixed total budget, or initial budget when adaptation is enabled.
   :type mutation_n_steps: int, optional
   :param mutation_kwargs: Additional mutation constructor options.
   :type mutation_kwargs: dict or None, optional
   :param adaptive_mutation: Named miniPCN and differential-evolution mutations support ``enabled``
                             (default True), ``min_steps`` (0), ``max_steps`` (1000), and
                             ``target_accepted_moves`` (5.0). Omission disables adaptation.
                             Completed acceptance metrics select the next iteration's bounded
                             budget; the current block is frozen before execution. Accepted moves
                             need not be independent samples. Proposal parameters are unchanged.
   :type adaptive_mutation: Mapping[str, object] or None, optional

   :returns: Configured mutation, optionally wrapped in ``AdaptMutationSteps``.
   :rtype: SMCStep or None


