Source code for suboptimumg.sweep.sweeper_factory
from typing import Callable, Dict, Optional, Union
from ..compsim.models import CompetitionData
from .models import SweepParamConfig
from .sweeper_1d import Sweeper1D
from .sweeper_2d import Sweeper2D
[docs]
def create_sweeper(
comp_data: CompetitionData,
var_1: SweepParamConfig,
var_2: Optional[SweepParamConfig] = None,
dependencies: Dict[str, Callable] = {},
) -> Union[Sweeper1D, Sweeper2D]:
"""Factory function to create the appropriate sweeper based on the number of variables."""
if var_2 is None:
return Sweeper1D(comp_data, var_1, dependencies)
return Sweeper2D(comp_data, var_1, var_2, dependencies)