earth2studio.models.dx.CBottleSR#

class earth2studio.models.dx.CBottleSR(core_model, hr_latlon=(2161, 4320), sampler_steps=18, sigma_max=800)[source]#

Climate in a Bottle Super-Resolution (CBottleSR) model.

CBottleSR is a diffusion-based super-resolution model that learns mappings between low- and high-resolution climate data with high fidelity. This model generates results at 5km resolution on a healpix grid with 10 levels of resolution (1024x1024). The results are then regridded to a lat/lon grid. Suggested output dimensions are (2161, 4320) which corresponds to 10km resolution at the equator or (4321, 8640) which corresponds to 5km resolution at the equator.

Parameters:
  • core_model (torch.nn.Module) – Core pytorch model implementing the diffusion-based super-resolution

  • hr_latlon (Tuple[int, int], optional) – High-resolution output dimensions (lat, lon), by default (2161, 4320)

  • sampler_steps (int, optional) – Number of diffusion steps, by default 18

  • sigma_max (int, optional) – Maximum noise level for diffusion process, by default 800

__call__(x, coords)[source]#

Forward pass of diagnostic

Parameters:
  • x (Tensor)

  • coords (OrderedDict[str, ndarray])

Return type:

tuple[Tensor, OrderedDict[str, ndarray]]

classmethod load_default_package()[source]#

Default pre-trained CBottle3D model package from Nvidia model registry

Return type:

Package

classmethod load_model(package, sampler_steps=18, sigma_max=800, hr_latlon=(2161, 4320))[source]#

Load AI datasource from package

Parameters:
  • package (Package)

  • sampler_steps (int)

  • sigma_max (int)

  • hr_latlon (tuple[int, int])

Return type:

DiagnosticModel