from .._base_wrappers import BaseModelWrapper
[docs]
class SfincsModelWrapper(BaseModelWrapper):
"""
Wrapper for the SFINCS model.
Attributes
----------
default_parameters : dict
The default parameters type for the wrapper.
available_launchers : dict
The available launchers for the wrapper.
"""
default_parameters = {}
available_launchers = {
"docker": "docker run --rm -v .:/case_dir -w /case_dir deltares/sfincs-cpu",
"cluster": "launchSfincs.sh",
}
def __init__(
self,
templates_dir: str,
model_parameters: dict,
output_dir: str,
templates_name: dict = "all",
debug: bool = True,
) -> None:
"""
Initialize the SFINCS model wrapper.
"""
super().__init__(
templates_dir=templates_dir,
model_parameters=model_parameters,
output_dir=output_dir,
templates_name=templates_name,
default_parameters=self.default_parameters,
)
self.set_logger_name(
name=self.__class__.__name__, level="DEBUG" if debug else "INFO"
)