earth2mip icon indicating copy to clipboard operation
earth2mip copied to clipboard

🚀[FEA]: Improve deterministic inference UX

Open nbren12 opened this issue 1 year ago • 1 comments

Is this a new feature, an improvement, or a change to existing functionality?

Improvement

How would you describe the priority of this feature request

Medium

Please provide a clear description of problem you would like to solve.

Basic deterministic inference with e2mip is rather difficult and non-intuitive for some users. I've seen multiple users give up on the tool because of it.

xarray does not support netCDF groups well, so it looks like the output data is empty when using xarray.open_dataset. The solution is to pass xarray.open_dataset(path, group="group").

Likewise, most users simply want to run a deterministic forecast with a few output fields. This is too difficult to do right now, and requires a configuration like this:

    config_dict = {
        "simulation_length": nt,
        "weather_event": {
            "properties": {
                "name": "Globe",
                "start_time": "2018-01-02 00:00:00",
                "initial_condition_source": "cds",
            },
            "domains": [
                {
                    "name": "global",
                    "type": "Window",
                    "diagnostics": [{"type": "raw", "channels": ["t2m", "z500"]}],
                }
            ],
        },
        "output_path": output_path,
        "weather_model": "this value is overrided",
        "output_frequency": 4,
    }

Perhaps we could a simple convenience function for deterministic forecasts:

def run_deterministic(time_loop, data_source,  length: datetime.timedelta, channels: list[str], output_path: str, frequency: datetime.timedelta):
    

Describe any alternatives you have considered

No response

nbren12 avatar Feb 04 '24 18:02 nbren12

Could just add these options to run_basic_inference.

nbren12 avatar Feb 04 '24 19:02 nbren12