Source code for expertsystem.amplitude.abstract_generator

"""Abstract interfaces for amplitude model generation."""

from abc import ABC, abstractmethod


[docs]class AbstractAmplitudeNameGenerator(ABC): """Abstract interface for a parameter name generator."""
[docs] @abstractmethod def generate_unique_amplitude_name(self, graph, node_id): pass
[docs] @abstractmethod def generate_amplitude_coefficient_infos(self, graph): pass
@abstractmethod def _generate_amplitude_coefficient_name(self, graph, node_id) -> str: pass
[docs]class AbstractAmplitudeGenerator(ABC): """Abstract interface for an amplitude model generator."""
[docs] @abstractmethod def generate(self, graphs): pass
[docs] @abstractmethod def write_to_file(self, filename): pass