At the moment there's a single class that does everything. To isolate the tracking from the filenames and other logic then an alternative approach could be:
One class that is passed the time period, filenames, etc. that then calls TempestExtremes.
An outer class that's specific to the UM that handles the logic of the filenames and what period to track.
An extra intermediate class could be one that does the regridding and generates the files that are required by the small class that calls TempestExtremes.
At the moment there's a single class that does everything. To isolate the tracking from the filenames and other logic then an alternative approach could be:
One class that is passed the time period, filenames, etc. that then calls TempestExtremes.
An outer class that's specific to the UM that handles the logic of the filenames and what period to track.
An extra intermediate class could be one that does the regridding and generates the files that are required by the small class that calls TempestExtremes.