roms-tools 1.6.2__py3-none-any.whl → 2.0.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- ci/environment.yml +1 -1
- roms_tools/__init__.py +1 -0
- roms_tools/_version.py +1 -1
- roms_tools/setup/boundary_forcing.py +266 -256
- roms_tools/setup/datasets.py +986 -231
- roms_tools/setup/download.py +41 -15
- roms_tools/setup/grid.py +561 -512
- roms_tools/setup/initial_conditions.py +162 -106
- roms_tools/setup/mask.py +69 -0
- roms_tools/setup/plot.py +81 -23
- roms_tools/setup/regrid.py +4 -2
- roms_tools/setup/river_forcing.py +589 -0
- roms_tools/setup/surface_forcing.py +21 -130
- roms_tools/setup/tides.py +15 -79
- roms_tools/setup/topography.py +92 -128
- roms_tools/setup/utils.py +307 -25
- roms_tools/setup/vertical_coordinate.py +5 -16
- roms_tools/tests/test_setup/test_boundary_forcing.py +10 -7
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/.zmetadata +157 -130
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/ALK_ALT_CO2_east/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/ALK_ALT_CO2_north/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/ALK_ALT_CO2_south/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/ALK_ALT_CO2_west/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/ALK_east/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/ALK_north/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/ALK_south/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/ALK_west/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DIC_ALT_CO2_east/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DIC_ALT_CO2_north/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DIC_ALT_CO2_south/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DIC_ALT_CO2_west/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DIC_east/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DIC_north/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DIC_south/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DIC_west/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DOC_east/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DOC_north/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DOC_south/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DOC_west/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DOCr_east/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DOCr_north/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DOCr_south/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DOCr_west/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DON_east/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DON_north/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DON_south/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DON_west/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DONr_east/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DONr_north/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DONr_south/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DONr_west/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DOP_east/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DOP_north/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DOP_south/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DOP_west/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DOPr_east/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DOPr_north/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DOPr_south/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DOPr_west/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/Fe_east/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/Fe_north/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/Fe_south/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/Fe_west/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/Lig_east/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/Lig_north/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/Lig_south/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/Lig_west/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/NH4_east/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/NH4_north/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/NH4_south/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/NH4_west/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/NO3_east/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/NO3_north/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/NO3_south/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/NO3_west/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/O2_east/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/O2_north/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/O2_south/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/O2_west/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/PO4_east/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/PO4_north/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/PO4_south/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/PO4_west/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/SiO3_east/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/SiO3_north/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/SiO3_south/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/SiO3_west/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/abs_time/.zattrs +1 -0
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/bry_time/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diatC_east/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diatC_north/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diatC_south/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diatC_west/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diatChl_east/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diatChl_north/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diatChl_south/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diatChl_west/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diatFe_east/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diatFe_north/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diatFe_south/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diatFe_west/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diatP_east/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diatP_north/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diatP_south/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diatP_west/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diatSi_east/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diatSi_north/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diatSi_south/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diatSi_west/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diazC_east/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diazC_north/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diazC_south/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diazC_west/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diazChl_east/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diazChl_north/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diazChl_south/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diazChl_west/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diazFe_east/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diazFe_north/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diazFe_south/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diazFe_west/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diazP_east/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diazP_north/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diazP_south/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diazP_west/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/month/.zarray +20 -0
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/month/.zattrs +6 -0
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/month/0 +0 -0
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/spC_east/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/spC_north/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/spC_south/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/spC_west/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/spCaCO3_east/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/spCaCO3_north/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/spCaCO3_south/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/spCaCO3_west/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/spChl_east/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/spChl_north/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/spChl_south/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/spChl_west/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/spFe_east/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/spFe_north/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/spFe_south/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/spFe_west/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/spP_east/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/spP_north/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/spP_south/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/spP_west/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/zooC_east/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/zooC_north/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/zooC_south/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/zooC_west/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_surface_forcing_from_climatology.zarr/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_surface_forcing_from_climatology.zarr/.zmetadata +39 -12
- roms_tools/tests/test_setup/test_data/bgc_surface_forcing_from_climatology.zarr/abs_time/.zattrs +1 -0
- roms_tools/tests/test_setup/test_data/bgc_surface_forcing_from_climatology.zarr/dust/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_surface_forcing_from_climatology.zarr/dust_time/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_surface_forcing_from_climatology.zarr/iron/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_surface_forcing_from_climatology.zarr/iron_time/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_surface_forcing_from_climatology.zarr/month/.zarray +20 -0
- roms_tools/tests/test_setup/test_data/bgc_surface_forcing_from_climatology.zarr/month/.zattrs +6 -0
- roms_tools/tests/test_setup/test_data/bgc_surface_forcing_from_climatology.zarr/month/0 +0 -0
- roms_tools/tests/test_setup/test_data/bgc_surface_forcing_from_climatology.zarr/nhy/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_surface_forcing_from_climatology.zarr/nhy_time/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_surface_forcing_from_climatology.zarr/nox/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_surface_forcing_from_climatology.zarr/nox_time/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_surface_forcing_from_climatology.zarr/pco2_air/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_surface_forcing_from_climatology.zarr/pco2_air_alt/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/bgc_surface_forcing_from_climatology.zarr/pco2_time/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/grid.zarr/.zattrs +0 -1
- roms_tools/tests/test_setup/test_data/grid.zarr/.zmetadata +56 -201
- roms_tools/tests/test_setup/test_data/grid.zarr/Cs_r/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/grid.zarr/Cs_w/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/grid.zarr/{interface_depth_rho → sigma_r}/.zarray +2 -6
- roms_tools/tests/test_setup/test_data/grid.zarr/sigma_r/.zattrs +7 -0
- roms_tools/tests/test_setup/test_data/grid.zarr/sigma_r/0 +0 -0
- roms_tools/tests/test_setup/test_data/grid.zarr/{interface_depth_u → sigma_w}/.zarray +2 -6
- roms_tools/tests/test_setup/test_data/grid.zarr/sigma_w/.zattrs +7 -0
- roms_tools/tests/test_setup/test_data/grid.zarr/sigma_w/0 +0 -0
- roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/.zattrs +1 -2
- roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/.zmetadata +58 -203
- roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/Cs_r/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/Cs_w/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/h/.zattrs +1 -1
- roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/h/0.0 +0 -0
- roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/mask_coarse/0.0 +0 -0
- roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/mask_rho/0.0 +0 -0
- roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/mask_u/0.0 +0 -0
- roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/mask_v/0.0 +0 -0
- roms_tools/tests/test_setup/test_data/{grid.zarr/interface_depth_v → grid_that_straddles_dateline.zarr/sigma_r}/.zarray +2 -6
- roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/sigma_r/.zattrs +7 -0
- roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/sigma_r/0 +0 -0
- roms_tools/tests/test_setup/test_data/{grid.zarr/layer_depth_rho → grid_that_straddles_dateline.zarr/sigma_w}/.zarray +2 -6
- roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/sigma_w/.zattrs +7 -0
- roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/sigma_w/0 +0 -0
- roms_tools/tests/test_setup/test_data/river_forcing.zarr/.zattrs +3 -0
- roms_tools/tests/test_setup/test_data/river_forcing.zarr/.zgroup +3 -0
- roms_tools/tests/test_setup/test_data/river_forcing.zarr/.zmetadata +214 -0
- roms_tools/tests/test_setup/test_data/river_forcing.zarr/abs_time/.zarray +20 -0
- roms_tools/tests/test_setup/test_data/river_forcing.zarr/abs_time/.zattrs +8 -0
- roms_tools/tests/test_setup/test_data/river_forcing.zarr/abs_time/0 +0 -0
- roms_tools/tests/test_setup/test_data/river_forcing.zarr/month/.zarray +20 -0
- roms_tools/tests/test_setup/test_data/river_forcing.zarr/month/.zattrs +6 -0
- roms_tools/tests/test_setup/test_data/river_forcing.zarr/month/0 +0 -0
- roms_tools/tests/test_setup/test_data/river_forcing.zarr/river_name/.zarray +24 -0
- roms_tools/tests/test_setup/test_data/river_forcing.zarr/river_name/.zattrs +6 -0
- roms_tools/tests/test_setup/test_data/river_forcing.zarr/river_name/0 +0 -0
- roms_tools/tests/test_setup/test_data/river_forcing.zarr/river_time/.zarray +20 -0
- roms_tools/tests/test_setup/test_data/river_forcing.zarr/river_time/.zattrs +8 -0
- roms_tools/tests/test_setup/test_data/river_forcing.zarr/river_time/0 +0 -0
- roms_tools/tests/test_setup/test_data/{grid.zarr/layer_depth_v → river_forcing.zarr/river_tracer}/.zarray +4 -4
- roms_tools/tests/test_setup/test_data/river_forcing.zarr/river_tracer/.zattrs +10 -0
- roms_tools/tests/test_setup/test_data/river_forcing.zarr/river_tracer/0.0.0 +0 -0
- roms_tools/tests/test_setup/test_data/river_forcing.zarr/river_volume/.zarray +22 -0
- roms_tools/tests/test_setup/test_data/river_forcing.zarr/river_volume/.zattrs +9 -0
- roms_tools/tests/test_setup/test_data/river_forcing.zarr/river_volume/0.0 +0 -0
- roms_tools/tests/test_setup/test_data/{grid.zarr/layer_depth_u → river_forcing.zarr/tracer_name}/.zarray +2 -6
- roms_tools/tests/test_setup/test_data/river_forcing.zarr/tracer_name/.zattrs +6 -0
- roms_tools/tests/test_setup/test_data/river_forcing.zarr/tracer_name/0 +0 -0
- roms_tools/tests/test_setup/test_data/river_forcing_no_climatology.zarr/.zattrs +1 -0
- roms_tools/tests/test_setup/test_data/river_forcing_no_climatology.zarr/.zgroup +3 -0
- roms_tools/tests/test_setup/test_data/river_forcing_no_climatology.zarr/.zmetadata +185 -0
- roms_tools/tests/test_setup/test_data/river_forcing_no_climatology.zarr/abs_time/.zarray +20 -0
- roms_tools/tests/test_setup/test_data/river_forcing_no_climatology.zarr/abs_time/.zattrs +8 -0
- roms_tools/tests/test_setup/test_data/river_forcing_no_climatology.zarr/abs_time/0 +0 -0
- roms_tools/tests/test_setup/test_data/river_forcing_no_climatology.zarr/river_name/.zarray +24 -0
- roms_tools/tests/test_setup/test_data/river_forcing_no_climatology.zarr/river_name/.zattrs +6 -0
- roms_tools/tests/test_setup/test_data/river_forcing_no_climatology.zarr/river_name/0 +0 -0
- roms_tools/tests/test_setup/test_data/river_forcing_no_climatology.zarr/river_time/.zarray +20 -0
- roms_tools/tests/test_setup/test_data/river_forcing_no_climatology.zarr/river_time/.zattrs +7 -0
- roms_tools/tests/test_setup/test_data/river_forcing_no_climatology.zarr/river_time/0 +0 -0
- roms_tools/tests/test_setup/test_data/{grid_that_straddles_dateline.zarr/interface_depth_v → river_forcing_no_climatology.zarr/river_tracer}/.zarray +4 -4
- roms_tools/tests/test_setup/test_data/river_forcing_no_climatology.zarr/river_tracer/.zattrs +10 -0
- roms_tools/tests/test_setup/test_data/river_forcing_no_climatology.zarr/river_tracer/0.0.0 +0 -0
- roms_tools/tests/test_setup/test_data/river_forcing_no_climatology.zarr/river_volume/.zarray +22 -0
- roms_tools/tests/test_setup/test_data/river_forcing_no_climatology.zarr/river_volume/.zattrs +9 -0
- roms_tools/tests/test_setup/test_data/river_forcing_no_climatology.zarr/river_volume/0.0 +0 -0
- roms_tools/tests/test_setup/test_data/{grid_that_straddles_dateline.zarr/interface_depth_u → river_forcing_no_climatology.zarr/tracer_name}/.zarray +2 -6
- roms_tools/tests/test_setup/test_data/river_forcing_no_climatology.zarr/tracer_name/.zattrs +6 -0
- roms_tools/tests/test_setup/test_data/river_forcing_no_climatology.zarr/tracer_name/0 +0 -0
- roms_tools/tests/test_setup/test_grid.py +110 -12
- roms_tools/tests/test_setup/test_initial_conditions.py +2 -3
- roms_tools/tests/test_setup/test_river_forcing.py +367 -0
- roms_tools/tests/test_setup/test_surface_forcing.py +2 -24
- roms_tools/tests/test_setup/test_tides.py +2 -3
- roms_tools/tests/test_setup/test_topography.py +106 -1
- roms_tools/tests/test_setup/test_validation.py +4 -0
- roms_tools/utils.py +12 -10
- {roms_tools-1.6.2.dist-info → roms_tools-2.0.0.dist-info}/LICENSE +1 -1
- {roms_tools-1.6.2.dist-info → roms_tools-2.0.0.dist-info}/METADATA +6 -5
- {roms_tools-1.6.2.dist-info → roms_tools-2.0.0.dist-info}/RECORD +254 -225
- {roms_tools-1.6.2.dist-info → roms_tools-2.0.0.dist-info}/WHEEL +1 -1
- roms_tools/tests/test_setup/test_data/grid.zarr/interface_depth_rho/.zattrs +0 -9
- roms_tools/tests/test_setup/test_data/grid.zarr/interface_depth_rho/0.0.0 +0 -0
- roms_tools/tests/test_setup/test_data/grid.zarr/interface_depth_u/.zattrs +0 -9
- roms_tools/tests/test_setup/test_data/grid.zarr/interface_depth_u/0.0.0 +0 -0
- roms_tools/tests/test_setup/test_data/grid.zarr/interface_depth_v/.zattrs +0 -9
- roms_tools/tests/test_setup/test_data/grid.zarr/interface_depth_v/0.0.0 +0 -0
- roms_tools/tests/test_setup/test_data/grid.zarr/layer_depth_rho/.zattrs +0 -9
- roms_tools/tests/test_setup/test_data/grid.zarr/layer_depth_rho/0.0.0 +0 -0
- roms_tools/tests/test_setup/test_data/grid.zarr/layer_depth_u/.zattrs +0 -9
- roms_tools/tests/test_setup/test_data/grid.zarr/layer_depth_u/0.0.0 +0 -0
- roms_tools/tests/test_setup/test_data/grid.zarr/layer_depth_v/.zattrs +0 -9
- roms_tools/tests/test_setup/test_data/grid.zarr/layer_depth_v/0.0.0 +0 -0
- roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/interface_depth_rho/.zarray +0 -24
- roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/interface_depth_rho/.zattrs +0 -9
- roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/interface_depth_rho/0.0.0 +0 -0
- roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/interface_depth_u/.zattrs +0 -9
- roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/interface_depth_u/0.0.0 +0 -0
- roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/interface_depth_v/.zattrs +0 -9
- roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/interface_depth_v/0.0.0 +0 -0
- roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/layer_depth_rho/.zarray +0 -24
- roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/layer_depth_rho/.zattrs +0 -9
- roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/layer_depth_rho/0.0.0 +0 -0
- roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/layer_depth_u/.zarray +0 -24
- roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/layer_depth_u/.zattrs +0 -9
- roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/layer_depth_u/0.0.0 +0 -0
- roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/layer_depth_v/.zarray +0 -24
- roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/layer_depth_v/.zattrs +0 -9
- roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/layer_depth_v/0.0.0 +0 -0
- roms_tools/tests/test_setup/test_vertical_coordinate.py +0 -91
- {roms_tools-1.6.2.dist-info → roms_tools-2.0.0.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
{
|
|
2
|
+
"metadata": {
|
|
3
|
+
".zattrs": {},
|
|
4
|
+
".zgroup": {
|
|
5
|
+
"zarr_format": 2
|
|
6
|
+
},
|
|
7
|
+
"abs_time/.zarray": {
|
|
8
|
+
"chunks": [
|
|
9
|
+
4
|
|
10
|
+
],
|
|
11
|
+
"compressor": {
|
|
12
|
+
"blocksize": 0,
|
|
13
|
+
"clevel": 5,
|
|
14
|
+
"cname": "lz4",
|
|
15
|
+
"id": "blosc",
|
|
16
|
+
"shuffle": 1
|
|
17
|
+
},
|
|
18
|
+
"dtype": "<i8",
|
|
19
|
+
"fill_value": null,
|
|
20
|
+
"filters": null,
|
|
21
|
+
"order": "C",
|
|
22
|
+
"shape": [
|
|
23
|
+
4
|
|
24
|
+
],
|
|
25
|
+
"zarr_format": 2
|
|
26
|
+
},
|
|
27
|
+
"abs_time/.zattrs": {
|
|
28
|
+
"_ARRAY_DIMENSIONS": [
|
|
29
|
+
"river_time"
|
|
30
|
+
],
|
|
31
|
+
"calendar": "proleptic_gregorian",
|
|
32
|
+
"long_name": "absolute time",
|
|
33
|
+
"units": "days since 1997-12-15 00:00:00"
|
|
34
|
+
},
|
|
35
|
+
"river_name/.zarray": {
|
|
36
|
+
"chunks": [
|
|
37
|
+
6
|
|
38
|
+
],
|
|
39
|
+
"compressor": {
|
|
40
|
+
"blocksize": 0,
|
|
41
|
+
"clevel": 5,
|
|
42
|
+
"cname": "lz4",
|
|
43
|
+
"id": "blosc",
|
|
44
|
+
"shuffle": 1
|
|
45
|
+
},
|
|
46
|
+
"dtype": "|O",
|
|
47
|
+
"fill_value": null,
|
|
48
|
+
"filters": [
|
|
49
|
+
{
|
|
50
|
+
"id": "vlen-utf8"
|
|
51
|
+
}
|
|
52
|
+
],
|
|
53
|
+
"order": "C",
|
|
54
|
+
"shape": [
|
|
55
|
+
6
|
|
56
|
+
],
|
|
57
|
+
"zarr_format": 2
|
|
58
|
+
},
|
|
59
|
+
"river_name/.zattrs": {
|
|
60
|
+
"_ARRAY_DIMENSIONS": [
|
|
61
|
+
"nriver"
|
|
62
|
+
],
|
|
63
|
+
"long_name": "River name"
|
|
64
|
+
},
|
|
65
|
+
"river_time/.zarray": {
|
|
66
|
+
"chunks": [
|
|
67
|
+
4
|
|
68
|
+
],
|
|
69
|
+
"compressor": {
|
|
70
|
+
"blocksize": 0,
|
|
71
|
+
"clevel": 5,
|
|
72
|
+
"cname": "lz4",
|
|
73
|
+
"id": "blosc",
|
|
74
|
+
"shuffle": 1
|
|
75
|
+
},
|
|
76
|
+
"dtype": "<f8",
|
|
77
|
+
"fill_value": "NaN",
|
|
78
|
+
"filters": null,
|
|
79
|
+
"order": "C",
|
|
80
|
+
"shape": [
|
|
81
|
+
4
|
|
82
|
+
],
|
|
83
|
+
"zarr_format": 2
|
|
84
|
+
},
|
|
85
|
+
"river_time/.zattrs": {
|
|
86
|
+
"_ARRAY_DIMENSIONS": [
|
|
87
|
+
"river_time"
|
|
88
|
+
],
|
|
89
|
+
"long_name": "relative time: days since 2000-01-01 00:00:00",
|
|
90
|
+
"units": "days"
|
|
91
|
+
},
|
|
92
|
+
"river_tracer/.zarray": {
|
|
93
|
+
"chunks": [
|
|
94
|
+
4,
|
|
95
|
+
2,
|
|
96
|
+
6
|
|
97
|
+
],
|
|
98
|
+
"compressor": {
|
|
99
|
+
"blocksize": 0,
|
|
100
|
+
"clevel": 5,
|
|
101
|
+
"cname": "lz4",
|
|
102
|
+
"id": "blosc",
|
|
103
|
+
"shuffle": 1
|
|
104
|
+
},
|
|
105
|
+
"dtype": "<f4",
|
|
106
|
+
"fill_value": "NaN",
|
|
107
|
+
"filters": null,
|
|
108
|
+
"order": "C",
|
|
109
|
+
"shape": [
|
|
110
|
+
4,
|
|
111
|
+
2,
|
|
112
|
+
6
|
|
113
|
+
],
|
|
114
|
+
"zarr_format": 2
|
|
115
|
+
},
|
|
116
|
+
"river_tracer/.zattrs": {
|
|
117
|
+
"_ARRAY_DIMENSIONS": [
|
|
118
|
+
"river_time",
|
|
119
|
+
"ntracers",
|
|
120
|
+
"nriver"
|
|
121
|
+
],
|
|
122
|
+
"coordinates": "abs_time river_name tracer_name",
|
|
123
|
+
"long_name": "River tracer data",
|
|
124
|
+
"units": "degrees C [temperature]; psu [salinity]"
|
|
125
|
+
},
|
|
126
|
+
"river_volume/.zarray": {
|
|
127
|
+
"chunks": [
|
|
128
|
+
4,
|
|
129
|
+
6
|
|
130
|
+
],
|
|
131
|
+
"compressor": {
|
|
132
|
+
"blocksize": 0,
|
|
133
|
+
"clevel": 5,
|
|
134
|
+
"cname": "lz4",
|
|
135
|
+
"id": "blosc",
|
|
136
|
+
"shuffle": 1
|
|
137
|
+
},
|
|
138
|
+
"dtype": "<f4",
|
|
139
|
+
"fill_value": "NaN",
|
|
140
|
+
"filters": null,
|
|
141
|
+
"order": "C",
|
|
142
|
+
"shape": [
|
|
143
|
+
4,
|
|
144
|
+
6
|
|
145
|
+
],
|
|
146
|
+
"zarr_format": 2
|
|
147
|
+
},
|
|
148
|
+
"river_volume/.zattrs": {
|
|
149
|
+
"_ARRAY_DIMENSIONS": [
|
|
150
|
+
"river_time",
|
|
151
|
+
"nriver"
|
|
152
|
+
],
|
|
153
|
+
"coordinates": "abs_time river_name",
|
|
154
|
+
"long_name": "River volume flux",
|
|
155
|
+
"units": "m^3/s"
|
|
156
|
+
},
|
|
157
|
+
"tracer_name/.zarray": {
|
|
158
|
+
"chunks": [
|
|
159
|
+
2
|
|
160
|
+
],
|
|
161
|
+
"compressor": {
|
|
162
|
+
"blocksize": 0,
|
|
163
|
+
"clevel": 5,
|
|
164
|
+
"cname": "lz4",
|
|
165
|
+
"id": "blosc",
|
|
166
|
+
"shuffle": 1
|
|
167
|
+
},
|
|
168
|
+
"dtype": "<U11",
|
|
169
|
+
"fill_value": null,
|
|
170
|
+
"filters": null,
|
|
171
|
+
"order": "C",
|
|
172
|
+
"shape": [
|
|
173
|
+
2
|
|
174
|
+
],
|
|
175
|
+
"zarr_format": 2
|
|
176
|
+
},
|
|
177
|
+
"tracer_name/.zattrs": {
|
|
178
|
+
"_ARRAY_DIMENSIONS": [
|
|
179
|
+
"ntracers"
|
|
180
|
+
],
|
|
181
|
+
"long_name": "Tracer name"
|
|
182
|
+
}
|
|
183
|
+
},
|
|
184
|
+
"zarr_consolidated_format": 1
|
|
185
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
{
|
|
2
|
+
"chunks": [
|
|
3
|
+
4
|
|
4
|
+
],
|
|
5
|
+
"compressor": {
|
|
6
|
+
"blocksize": 0,
|
|
7
|
+
"clevel": 5,
|
|
8
|
+
"cname": "lz4",
|
|
9
|
+
"id": "blosc",
|
|
10
|
+
"shuffle": 1
|
|
11
|
+
},
|
|
12
|
+
"dtype": "<i8",
|
|
13
|
+
"fill_value": null,
|
|
14
|
+
"filters": null,
|
|
15
|
+
"order": "C",
|
|
16
|
+
"shape": [
|
|
17
|
+
4
|
|
18
|
+
],
|
|
19
|
+
"zarr_format": 2
|
|
20
|
+
}
|
|
Binary file
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
{
|
|
2
|
+
"chunks": [
|
|
3
|
+
6
|
|
4
|
+
],
|
|
5
|
+
"compressor": {
|
|
6
|
+
"blocksize": 0,
|
|
7
|
+
"clevel": 5,
|
|
8
|
+
"cname": "lz4",
|
|
9
|
+
"id": "blosc",
|
|
10
|
+
"shuffle": 1
|
|
11
|
+
},
|
|
12
|
+
"dtype": "|O",
|
|
13
|
+
"fill_value": null,
|
|
14
|
+
"filters": [
|
|
15
|
+
{
|
|
16
|
+
"id": "vlen-utf8"
|
|
17
|
+
}
|
|
18
|
+
],
|
|
19
|
+
"order": "C",
|
|
20
|
+
"shape": [
|
|
21
|
+
6
|
|
22
|
+
],
|
|
23
|
+
"zarr_format": 2
|
|
24
|
+
}
|
|
Binary file
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
{
|
|
2
|
+
"chunks": [
|
|
3
|
+
4
|
|
4
|
+
],
|
|
5
|
+
"compressor": {
|
|
6
|
+
"blocksize": 0,
|
|
7
|
+
"clevel": 5,
|
|
8
|
+
"cname": "lz4",
|
|
9
|
+
"id": "blosc",
|
|
10
|
+
"shuffle": 1
|
|
11
|
+
},
|
|
12
|
+
"dtype": "<f8",
|
|
13
|
+
"fill_value": "NaN",
|
|
14
|
+
"filters": null,
|
|
15
|
+
"order": "C",
|
|
16
|
+
"shape": [
|
|
17
|
+
4
|
|
18
|
+
],
|
|
19
|
+
"zarr_format": 2
|
|
20
|
+
}
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
{
|
|
2
|
+
"chunks": [
|
|
3
|
+
4,
|
|
4
|
+
6
|
|
5
|
+
],
|
|
6
|
+
"compressor": {
|
|
7
|
+
"blocksize": 0,
|
|
8
|
+
"clevel": 5,
|
|
9
|
+
"cname": "lz4",
|
|
10
|
+
"id": "blosc",
|
|
11
|
+
"shuffle": 1
|
|
12
|
+
},
|
|
13
|
+
"dtype": "<f4",
|
|
14
|
+
"fill_value": "NaN",
|
|
15
|
+
"filters": null,
|
|
16
|
+
"order": "C",
|
|
17
|
+
"shape": [
|
|
18
|
+
4,
|
|
19
|
+
6
|
|
20
|
+
],
|
|
21
|
+
"zarr_format": 2
|
|
22
|
+
}
|
|
Binary file
|
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
{
|
|
2
2
|
"chunks": [
|
|
3
|
-
101,
|
|
4
|
-
3,
|
|
5
3
|
2
|
|
6
4
|
],
|
|
7
5
|
"compressor": {
|
|
@@ -11,13 +9,11 @@
|
|
|
11
9
|
"id": "blosc",
|
|
12
10
|
"shuffle": 1
|
|
13
11
|
},
|
|
14
|
-
"dtype": "<
|
|
15
|
-
"fill_value":
|
|
12
|
+
"dtype": "<U11",
|
|
13
|
+
"fill_value": null,
|
|
16
14
|
"filters": null,
|
|
17
15
|
"order": "C",
|
|
18
16
|
"shape": [
|
|
19
|
-
101,
|
|
20
|
-
3,
|
|
21
17
|
2
|
|
22
18
|
],
|
|
23
19
|
"zarr_format": 2
|
|
Binary file
|
|
@@ -114,7 +114,7 @@ def test_plot_save_methods(tmp_path):
|
|
|
114
114
|
|
|
115
115
|
|
|
116
116
|
def test_raise_if_domain_too_large():
|
|
117
|
-
with pytest.raises(ValueError, match="Domain size
|
|
117
|
+
with pytest.raises(ValueError, match="Domain size exceeds"):
|
|
118
118
|
Grid(nx=3, ny=3, size_x=30000, size_y=30000, center_lon=0, center_lat=51.5)
|
|
119
119
|
|
|
120
120
|
# test grid with reasonable domain size
|
|
@@ -181,12 +181,6 @@ def test_compatability_with_matlab_grid(tmp_path):
|
|
|
181
181
|
"lon_v",
|
|
182
182
|
"lat_coarse",
|
|
183
183
|
"lon_coarse",
|
|
184
|
-
"layer_depth_rho",
|
|
185
|
-
"layer_depth_u",
|
|
186
|
-
"layer_depth_v",
|
|
187
|
-
"interface_depth_rho",
|
|
188
|
-
"interface_depth_u",
|
|
189
|
-
"interface_depth_v",
|
|
190
184
|
]
|
|
191
185
|
)
|
|
192
186
|
actual_coords = set(grid.ds.coords.keys())
|
|
@@ -229,7 +223,7 @@ def test_roundtrip_netcdf(tmp_path):
|
|
|
229
223
|
center_lon=0.0,
|
|
230
224
|
center_lat=0.0,
|
|
231
225
|
rot=0.0,
|
|
232
|
-
topography_source="ETOPO5",
|
|
226
|
+
topography_source={"name": "ETOPO5"},
|
|
233
227
|
hmin=5.0,
|
|
234
228
|
)
|
|
235
229
|
|
|
@@ -267,7 +261,7 @@ def test_roundtrip_yaml(tmp_path):
|
|
|
267
261
|
center_lon=0.0,
|
|
268
262
|
center_lat=0.0,
|
|
269
263
|
rot=0.0,
|
|
270
|
-
topography_source="ETOPO5",
|
|
264
|
+
topography_source={"name": "ETOPO5"},
|
|
271
265
|
hmin=5.0,
|
|
272
266
|
)
|
|
273
267
|
|
|
@@ -300,7 +294,7 @@ def test_files_have_same_hash(tmp_path):
|
|
|
300
294
|
center_lon=0.0,
|
|
301
295
|
center_lat=0.0,
|
|
302
296
|
rot=0.0,
|
|
303
|
-
topography_source="ETOPO5",
|
|
297
|
+
topography_source={"name": "ETOPO5"},
|
|
304
298
|
hmin=5.0,
|
|
305
299
|
)
|
|
306
300
|
|
|
@@ -336,7 +330,8 @@ def test_from_yaml_missing_version(tmp_path):
|
|
|
336
330
|
center_lon: -10
|
|
337
331
|
center_lat: 61
|
|
338
332
|
rot: -20
|
|
339
|
-
topography_source:
|
|
333
|
+
topography_source:
|
|
334
|
+
name: ETOPO5
|
|
340
335
|
hmin: 5.0
|
|
341
336
|
"""
|
|
342
337
|
)
|
|
@@ -405,7 +400,8 @@ def test_from_yaml_version_mismatch(tmp_path, caplog):
|
|
|
405
400
|
center_lon: -10
|
|
406
401
|
center_lat: 61
|
|
407
402
|
rot: -20
|
|
408
|
-
topography_source:
|
|
403
|
+
topography_source:
|
|
404
|
+
name: ETOPO5
|
|
409
405
|
hmin: 5.0
|
|
410
406
|
"""
|
|
411
407
|
)
|
|
@@ -432,3 +428,105 @@ def test_from_yaml_version_mismatch(tmp_path, caplog):
|
|
|
432
428
|
|
|
433
429
|
yaml_filepath = Path(yaml_filepath)
|
|
434
430
|
yaml_filepath.unlink()
|
|
431
|
+
|
|
432
|
+
|
|
433
|
+
def test_invalid_theta_s_value():
|
|
434
|
+
"""Test the validation of the theta_s value."""
|
|
435
|
+
with pytest.raises(ValueError):
|
|
436
|
+
|
|
437
|
+
Grid(
|
|
438
|
+
nx=2,
|
|
439
|
+
ny=2,
|
|
440
|
+
size_x=500,
|
|
441
|
+
size_y=1000,
|
|
442
|
+
center_lon=0,
|
|
443
|
+
center_lat=55,
|
|
444
|
+
rot=10,
|
|
445
|
+
N=3,
|
|
446
|
+
theta_s=11.0, # Invalid value, should be 0 < theta_s <= 10
|
|
447
|
+
theta_b=2.0,
|
|
448
|
+
hc=250.0,
|
|
449
|
+
)
|
|
450
|
+
|
|
451
|
+
|
|
452
|
+
def test_invalid_theta_b_value():
|
|
453
|
+
"""Test the validation of the theta_b value."""
|
|
454
|
+
with pytest.raises(ValueError):
|
|
455
|
+
Grid(
|
|
456
|
+
nx=2,
|
|
457
|
+
ny=2,
|
|
458
|
+
size_x=500,
|
|
459
|
+
size_y=1000,
|
|
460
|
+
center_lon=0,
|
|
461
|
+
center_lat=55,
|
|
462
|
+
rot=10,
|
|
463
|
+
N=3,
|
|
464
|
+
theta_s=5.0,
|
|
465
|
+
theta_b=5.0, # Invalid value, should be 0 < theta_b <= 4
|
|
466
|
+
hc=250.0,
|
|
467
|
+
)
|
|
468
|
+
|
|
469
|
+
|
|
470
|
+
def test_update_vertical_coordinate():
|
|
471
|
+
|
|
472
|
+
grid = Grid(
|
|
473
|
+
nx=2, ny=2, size_x=500, size_y=1000, center_lon=0, center_lat=55, rot=10
|
|
474
|
+
)
|
|
475
|
+
|
|
476
|
+
assert grid.N == 100
|
|
477
|
+
assert grid.theta_s == 5.0
|
|
478
|
+
assert grid.theta_b == 2.0
|
|
479
|
+
assert grid.hc == 300.0
|
|
480
|
+
assert len(grid.ds.s_rho) == 100
|
|
481
|
+
|
|
482
|
+
grid.update_vertical_coordinate(N=3, theta_s=10.0, theta_b=1.0, hc=400.0)
|
|
483
|
+
|
|
484
|
+
assert grid.N == 3
|
|
485
|
+
assert grid.theta_s == 10.0
|
|
486
|
+
assert grid.theta_b == 1.0
|
|
487
|
+
assert grid.hc == 400.0
|
|
488
|
+
assert len(grid.ds.s_rho) == 3
|
|
489
|
+
|
|
490
|
+
grid.update_vertical_coordinate(N=5)
|
|
491
|
+
|
|
492
|
+
assert grid.N == 5
|
|
493
|
+
assert grid.theta_s == 10.0
|
|
494
|
+
assert grid.theta_b == 1.0
|
|
495
|
+
assert grid.hc == 400.0
|
|
496
|
+
assert len(grid.ds.s_rho) == 5
|
|
497
|
+
|
|
498
|
+
grid.update_vertical_coordinate()
|
|
499
|
+
|
|
500
|
+
assert grid.N == 5
|
|
501
|
+
assert grid.theta_s == 10.0
|
|
502
|
+
assert grid.theta_b == 1.0
|
|
503
|
+
assert grid.hc == 400.0
|
|
504
|
+
assert len(grid.ds.s_rho) == 5
|
|
505
|
+
|
|
506
|
+
|
|
507
|
+
def test_plot():
|
|
508
|
+
grid = Grid(
|
|
509
|
+
nx=2,
|
|
510
|
+
ny=2,
|
|
511
|
+
size_x=500,
|
|
512
|
+
size_y=1000,
|
|
513
|
+
center_lon=0,
|
|
514
|
+
center_lat=55,
|
|
515
|
+
rot=10,
|
|
516
|
+
N=3,
|
|
517
|
+
theta_s=5.0,
|
|
518
|
+
theta_b=2.0,
|
|
519
|
+
hc=250.0,
|
|
520
|
+
)
|
|
521
|
+
grid.plot_vertical_coordinate(s=-1)
|
|
522
|
+
grid.plot_vertical_coordinate(eta=0)
|
|
523
|
+
grid.plot_vertical_coordinate(xi=0)
|
|
524
|
+
|
|
525
|
+
with pytest.raises(ValueError, match="Exactly one of"):
|
|
526
|
+
grid.plot_vertical_coordinate(s=-1, eta=0)
|
|
527
|
+
with pytest.raises(ValueError, match="Exactly one of"):
|
|
528
|
+
grid.plot_vertical_coordinate(s=-1, xi=0)
|
|
529
|
+
with pytest.raises(ValueError, match="Exactly one of"):
|
|
530
|
+
grid.plot_vertical_coordinate(eta=-1, xi=0)
|
|
531
|
+
with pytest.raises(ValueError, match="Exactly one of"):
|
|
532
|
+
grid.plot_vertical_coordinate(eta=-1, xi=0, s=-1)
|
|
@@ -308,10 +308,9 @@ def test_from_yaml_missing_initial_conditions(tmp_path, use_dask):
|
|
|
308
308
|
center_lon: -10
|
|
309
309
|
center_lat: 61
|
|
310
310
|
rot: -20
|
|
311
|
-
topography_source:
|
|
312
|
-
|
|
311
|
+
topography_source:
|
|
312
|
+
name: ETOPO5
|
|
313
313
|
hmin: 5.0
|
|
314
|
-
rmax: 0.2
|
|
315
314
|
"""
|
|
316
315
|
)
|
|
317
316
|
|