diff --git a/src/model_config_tests/models/__init__.py b/src/model_config_tests/models/__init__.py index 215a564..b778eb3 100644 --- a/src/model_config_tests/models/__init__.py +++ b/src/model_config_tests/models/__init__.py @@ -1,6 +1,12 @@ from model_config_tests.models.accessesm1p5 import AccessEsm1p5 +from model_config_tests.models.accessesm1p6 import AccessEsm1p6 from model_config_tests.models.accessom2 import AccessOm2 from model_config_tests.models.accessom3 import AccessOm3 # Mapping payu configuration model name to class -index = {"access-om2": AccessOm2, "access-om3": AccessOm3, "access": AccessEsm1p5} +index = { + "access-om2": AccessOm2, + "access-om3": AccessOm3, + "access": AccessEsm1p5, + "access-esm1.6": AccessEsm1p6, +} diff --git a/src/model_config_tests/models/accessesm1p5.py b/src/model_config_tests/models/accessesm1p5.py index d010b8e..a1ee6ca 100644 --- a/src/model_config_tests/models/accessesm1p5.py +++ b/src/model_config_tests/models/accessesm1p5.py @@ -19,7 +19,8 @@ def __init__(self, experiment): # Override model default runtime self.default_runtime_seconds = DEFAULT_RUNTIME_SECONDS - self.output_file = self.output_0 / "access.out" + self.output_filename = "access.out" + self.output_file = self.output_0 / self.output_filename def set_model_runtime( self, years: int = 0, months: int = 0, seconds: int = DEFAULT_RUNTIME_SECONDS @@ -57,7 +58,7 @@ def extract_checksums( ) -> dict[str, Any]: """Parse output file and create checksum using defined schema""" if output_directory: - output_filename = output_directory / "access.out" + output_filename = output_directory / self.output_filename else: output_filename = self.output_file diff --git a/src/model_config_tests/models/accessesm1p6.py b/src/model_config_tests/models/accessesm1p6.py new file mode 100644 index 0000000..4bd447e --- /dev/null +++ b/src/model_config_tests/models/accessesm1p6.py @@ -0,0 +1,11 @@ +"""Specific ACCESS-ESM1.6 Model setup and post-processing""" + +from model_config_tests.models.accessesm1p5 import AccessEsm1p5 + + +class AccessEsm1p6(AccessEsm1p5): + def __init__(self, experiment): + super().__init__(experiment) + + self.output_filename = "access-esm1.6.out" + self.output_file = self.output_0 / self.output_filename diff --git a/src/model_config_tests/models/accessom2.py b/src/model_config_tests/models/accessom2.py index 1968d8d..5d27b5c 100644 --- a/src/model_config_tests/models/accessom2.py +++ b/src/model_config_tests/models/accessom2.py @@ -16,7 +16,8 @@ class AccessOm2(Model): def __init__(self, experiment): super().__init__(experiment) - self.output_file = self.output_0 / "access-om2.out" + self.output_filename = "access-om2.out" + self.output_file = self.output_0 / self.output_filename self.accessom2_config = experiment.control_path / "accessom2.nml" self.ocean_config = experiment.control_path / "ocean" / "input.nml" @@ -48,7 +49,7 @@ def extract_checksums( ) -> dict[str, Any]: """Parse output file and create checksum using defined schema""" if output_directory: - output_filename = output_directory / "access-om2.out" + output_filename = output_directory / self.output_filename else: output_filename = self.output_file diff --git a/src/model_config_tests/models/accessom3.py b/src/model_config_tests/models/accessom3.py index a8f4028..d4e68a2 100644 --- a/src/model_config_tests/models/accessom3.py +++ b/src/model_config_tests/models/accessom3.py @@ -23,7 +23,8 @@ def __init__(self, experiment): self.output_0 = self.experiment.restart000 self.output_1 = self.experiment.restart001 - self.mom_restart_pointer = self.output_0 / "rpointer.ocn" + self.mom_restart_pointer_filename = "rpointer.ocn" + self.mom_restart_pointer = self.output_0 / self.mom_restart_pointer_filename self.runconfig = experiment.control_path / "nuopc.runconfig" self.wav_in = experiment.control_path / "wav_in" @@ -82,7 +83,7 @@ def extract_checksums( ) -> dict[str, Any]: """Parse output file and create checksum using defined schema""" if output_directory: - mom_restart_pointer = output_directory / "rpointer.ocn" + mom_restart_pointer = output_directory / self.mom_restart_pointer_filename else: mom_restart_pointer = self.mom_restart_pointer