Source code for gefest.tools.optimizers.optimizer

from abc import ABCMeta, abstractmethod

from gefest.core.geometry import Structure


[docs] class Optimizer(metaclass=ABCMeta): """Interface for optimizers.""" def __init__( self, log_dispatcher=None, **kwargs, ) -> None: self.log_dispatcher = log_dispatcher
[docs] @abstractmethod def optimize( self, n_steps: int, **kwargs, ) -> list[Structure]: """Must implement optimization logic. Args: n_steps (int): Number of optimization steps. Returns: list[Structure]: Optimized population. """ ...