[docs]@dataclasses.dataclassclassCoupledDataWriterConfig:""" Configuration for coupled inference data writers. Parameters: ocean: Configuration for ocean data writer. atmosphere: Configuration for atmosphere data writer. """ocean:DataWriterConfig=dataclasses.field(default_factory=lambda:DataWriterConfig())atmosphere:DataWriterConfig=dataclasses.field(default_factory=lambda:DataWriterConfig())defbuild_paired(self,experiment_dir:str,n_initial_conditions:int,n_timesteps_ocean:int,n_timesteps_atmosphere:int,ocean_timestep:datetime.timedelta,atmosphere_timestep:datetime.timedelta,variable_metadata:Mapping[str,VariableMetadata],coords:CoupledCoords,dataset_metadata:dict[str,DatasetMetadata],)->"CoupledPairedDataWriter":ocean_dir=os.path.join(experiment_dir,OCEAN_OUTPUT_DIR_NAME)ifnotos.path.exists(ocean_dir):os.makedirs(ocean_dir)atmos_dir=os.path.join(experiment_dir,ATMOSPHERE_OUTPUT_DIR_NAME)ifnotos.path.exists(atmos_dir):os.makedirs(atmos_dir)returnCoupledPairedDataWriter(ocean_writer=self.ocean.build_paired(experiment_dir=ocean_dir,n_initial_conditions=n_initial_conditions,n_timesteps=n_timesteps_ocean,timestep=ocean_timestep,variable_metadata=variable_metadata,coords=coords.ocean,dataset_metadata=dataset_metadata["ocean"],),atmosphere_writer=self.atmosphere.build_paired(experiment_dir=atmos_dir,n_initial_conditions=n_initial_conditions,n_timesteps=n_timesteps_atmosphere,timestep=atmosphere_timestep,variable_metadata=variable_metadata,coords=coords.atmosphere,dataset_metadata=dataset_metadata["atmosphere"],),)