roms-tools 1.4.0__py3-none-any.whl → 1.4.1__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.
Files changed (247) hide show
  1. ci/environment.yml +1 -8
  2. roms_tools/_version.py +1 -1
  3. roms_tools/setup/grid.py +92 -8
  4. roms_tools/setup/topography.py +30 -4
  5. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/ALK_ALT_CO2_east/0.0.0 +0 -0
  6. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/ALK_ALT_CO2_north/0.0.0 +0 -0
  7. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/ALK_ALT_CO2_south/0.0.0 +0 -0
  8. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/ALK_ALT_CO2_west/0.0.0 +0 -0
  9. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/ALK_east/0.0.0 +0 -0
  10. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/ALK_north/0.0.0 +0 -0
  11. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/ALK_south/0.0.0 +0 -0
  12. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/ALK_west/0.0.0 +0 -0
  13. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DIC_ALT_CO2_east/0.0.0 +0 -0
  14. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DIC_ALT_CO2_north/0.0.0 +0 -0
  15. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DIC_ALT_CO2_south/0.0.0 +0 -0
  16. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DIC_ALT_CO2_west/0.0.0 +0 -0
  17. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DIC_east/0.0.0 +0 -0
  18. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DIC_north/0.0.0 +0 -0
  19. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DIC_south/0.0.0 +0 -0
  20. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DIC_west/0.0.0 +0 -0
  21. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DOC_east/0.0.0 +0 -0
  22. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DOC_north/0.0.0 +0 -0
  23. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DOC_south/0.0.0 +0 -0
  24. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DOC_west/0.0.0 +0 -0
  25. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DOCr_east/0.0.0 +0 -0
  26. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DOCr_north/0.0.0 +0 -0
  27. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DOCr_south/0.0.0 +0 -0
  28. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DOCr_west/0.0.0 +0 -0
  29. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DON_east/0.0.0 +0 -0
  30. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DON_north/0.0.0 +0 -0
  31. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DON_south/0.0.0 +0 -0
  32. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DON_west/0.0.0 +0 -0
  33. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DONr_east/0.0.0 +0 -0
  34. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DONr_north/0.0.0 +0 -0
  35. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DONr_south/0.0.0 +0 -0
  36. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DONr_west/0.0.0 +0 -0
  37. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DOP_east/0.0.0 +0 -0
  38. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DOP_north/0.0.0 +0 -0
  39. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DOP_south/0.0.0 +0 -0
  40. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DOP_west/0.0.0 +0 -0
  41. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DOPr_east/0.0.0 +0 -0
  42. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DOPr_north/0.0.0 +0 -0
  43. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DOPr_south/0.0.0 +0 -0
  44. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/DOPr_west/0.0.0 +0 -0
  45. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/Fe_east/0.0.0 +0 -0
  46. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/Fe_north/0.0.0 +0 -0
  47. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/Fe_south/0.0.0 +0 -0
  48. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/Fe_west/0.0.0 +0 -0
  49. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/Lig_east/0.0.0 +0 -0
  50. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/Lig_north/0.0.0 +0 -0
  51. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/Lig_south/0.0.0 +0 -0
  52. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/Lig_west/0.0.0 +0 -0
  53. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/NH4_east/0.0.0 +0 -0
  54. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/NH4_north/0.0.0 +0 -0
  55. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/NH4_south/0.0.0 +0 -0
  56. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/NH4_west/0.0.0 +0 -0
  57. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/NO3_east/0.0.0 +0 -0
  58. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/NO3_north/0.0.0 +0 -0
  59. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/NO3_south/0.0.0 +0 -0
  60. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/NO3_west/0.0.0 +0 -0
  61. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/O2_east/0.0.0 +0 -0
  62. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/O2_north/0.0.0 +0 -0
  63. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/O2_south/0.0.0 +0 -0
  64. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/O2_west/0.0.0 +0 -0
  65. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/PO4_east/0.0.0 +0 -0
  66. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/PO4_north/0.0.0 +0 -0
  67. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/PO4_south/0.0.0 +0 -0
  68. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/PO4_west/0.0.0 +0 -0
  69. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/SiO3_east/0.0.0 +0 -0
  70. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/SiO3_north/0.0.0 +0 -0
  71. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/SiO3_south/0.0.0 +0 -0
  72. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/SiO3_west/0.0.0 +0 -0
  73. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diatC_east/0.0.0 +0 -0
  74. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diatC_north/0.0.0 +0 -0
  75. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diatC_south/0.0.0 +0 -0
  76. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diatC_west/0.0.0 +0 -0
  77. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diatChl_east/0.0.0 +0 -0
  78. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diatChl_north/0.0.0 +0 -0
  79. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diatChl_south/0.0.0 +0 -0
  80. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diatChl_west/0.0.0 +0 -0
  81. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diatFe_east/0.0.0 +0 -0
  82. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diatFe_north/0.0.0 +0 -0
  83. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diatFe_south/0.0.0 +0 -0
  84. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diatFe_west/0.0.0 +0 -0
  85. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diatP_east/0.0.0 +0 -0
  86. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diatP_north/0.0.0 +0 -0
  87. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diatP_south/0.0.0 +0 -0
  88. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diatP_west/0.0.0 +0 -0
  89. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diatSi_east/0.0.0 +0 -0
  90. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diatSi_north/0.0.0 +0 -0
  91. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diatSi_south/0.0.0 +0 -0
  92. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diatSi_west/0.0.0 +0 -0
  93. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diazC_east/0.0.0 +0 -0
  94. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diazC_north/0.0.0 +0 -0
  95. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diazC_south/0.0.0 +0 -0
  96. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diazC_west/0.0.0 +0 -0
  97. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diazChl_east/0.0.0 +0 -0
  98. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diazChl_north/0.0.0 +0 -0
  99. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diazChl_south/0.0.0 +0 -0
  100. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diazChl_west/0.0.0 +0 -0
  101. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diazFe_east/0.0.0 +0 -0
  102. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diazFe_north/0.0.0 +0 -0
  103. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diazFe_south/0.0.0 +0 -0
  104. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diazFe_west/0.0.0 +0 -0
  105. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diazP_east/0.0.0 +0 -0
  106. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diazP_north/0.0.0 +0 -0
  107. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diazP_south/0.0.0 +0 -0
  108. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/diazP_west/0.0.0 +0 -0
  109. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/spC_east/0.0.0 +0 -0
  110. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/spC_north/0.0.0 +0 -0
  111. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/spC_south/0.0.0 +0 -0
  112. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/spC_west/0.0.0 +0 -0
  113. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/spCaCO3_east/0.0.0 +0 -0
  114. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/spCaCO3_north/0.0.0 +0 -0
  115. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/spCaCO3_south/0.0.0 +0 -0
  116. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/spCaCO3_west/0.0.0 +0 -0
  117. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/spChl_east/0.0.0 +0 -0
  118. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/spChl_north/0.0.0 +0 -0
  119. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/spChl_south/0.0.0 +0 -0
  120. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/spChl_west/0.0.0 +0 -0
  121. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/spFe_east/0.0.0 +0 -0
  122. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/spFe_north/0.0.0 +0 -0
  123. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/spFe_south/0.0.0 +0 -0
  124. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/spFe_west/0.0.0 +0 -0
  125. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/spP_east/0.0.0 +0 -0
  126. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/spP_north/0.0.0 +0 -0
  127. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/spP_south/0.0.0 +0 -0
  128. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/spP_west/0.0.0 +0 -0
  129. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/zooC_east/0.0.0 +0 -0
  130. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/zooC_north/0.0.0 +0 -0
  131. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/zooC_south/0.0.0 +0 -0
  132. roms_tools/tests/test_setup/test_data/bgc_boundary_forcing_from_climatology.zarr/zooC_west/0.0.0 +0 -0
  133. roms_tools/tests/test_setup/test_data/boundary_forcing.zarr/salt_east/0.0.0 +0 -0
  134. roms_tools/tests/test_setup/test_data/boundary_forcing.zarr/salt_north/0.0.0 +0 -0
  135. roms_tools/tests/test_setup/test_data/boundary_forcing.zarr/salt_south/0.0.0 +0 -0
  136. roms_tools/tests/test_setup/test_data/boundary_forcing.zarr/salt_west/0.0.0 +0 -0
  137. roms_tools/tests/test_setup/test_data/boundary_forcing.zarr/temp_east/0.0.0 +0 -0
  138. roms_tools/tests/test_setup/test_data/boundary_forcing.zarr/temp_north/0.0.0 +0 -0
  139. roms_tools/tests/test_setup/test_data/boundary_forcing.zarr/temp_south/0.0.0 +0 -0
  140. roms_tools/tests/test_setup/test_data/boundary_forcing.zarr/temp_west/0.0.0 +0 -0
  141. roms_tools/tests/test_setup/test_data/boundary_forcing.zarr/u_east/0.0.0 +0 -0
  142. roms_tools/tests/test_setup/test_data/boundary_forcing.zarr/u_north/0.0.0 +0 -0
  143. roms_tools/tests/test_setup/test_data/boundary_forcing.zarr/u_west/0.0.0 +0 -0
  144. roms_tools/tests/test_setup/test_data/boundary_forcing.zarr/ubar_east/0.0 +0 -0
  145. roms_tools/tests/test_setup/test_data/boundary_forcing.zarr/ubar_north/0.0 +0 -0
  146. roms_tools/tests/test_setup/test_data/boundary_forcing.zarr/ubar_west/0.0 +0 -0
  147. roms_tools/tests/test_setup/test_data/boundary_forcing.zarr/v_east/0.0.0 +0 -0
  148. roms_tools/tests/test_setup/test_data/boundary_forcing.zarr/v_north/0.0.0 +0 -0
  149. roms_tools/tests/test_setup/test_data/boundary_forcing.zarr/v_south/0.0.0 +0 -0
  150. roms_tools/tests/test_setup/test_data/boundary_forcing.zarr/v_west/0.0.0 +0 -0
  151. roms_tools/tests/test_setup/test_data/boundary_forcing.zarr/vbar_east/0.0 +0 -0
  152. roms_tools/tests/test_setup/test_data/boundary_forcing.zarr/vbar_north/0.0 +0 -0
  153. roms_tools/tests/test_setup/test_data/boundary_forcing.zarr/vbar_south/0.0 +0 -0
  154. roms_tools/tests/test_setup/test_data/boundary_forcing.zarr/vbar_west/0.0 +0 -0
  155. roms_tools/tests/test_setup/test_data/grid.zarr/.zattrs +2 -2
  156. roms_tools/tests/test_setup/test_data/grid.zarr/.zmetadata +62 -2
  157. roms_tools/tests/test_setup/test_data/grid.zarr/angle/0.0 +0 -0
  158. roms_tools/tests/test_setup/test_data/grid.zarr/angle_coarse/0.0 +0 -0
  159. roms_tools/tests/test_setup/test_data/grid.zarr/f/0.0 +0 -0
  160. roms_tools/tests/test_setup/test_data/grid.zarr/h/0.0 +0 -0
  161. roms_tools/tests/test_setup/test_data/grid.zarr/lat_coarse/0.0 +0 -0
  162. roms_tools/tests/test_setup/test_data/grid.zarr/lat_psi/.zarray +22 -0
  163. roms_tools/tests/test_setup/test_data/grid.zarr/lat_psi/.zattrs +8 -0
  164. roms_tools/tests/test_setup/test_data/grid.zarr/lat_psi/0.0 +0 -0
  165. roms_tools/tests/test_setup/test_data/grid.zarr/lat_rho/0.0 +0 -0
  166. roms_tools/tests/test_setup/test_data/grid.zarr/lat_u/0.0 +0 -0
  167. roms_tools/tests/test_setup/test_data/grid.zarr/lat_v/0.0 +0 -0
  168. roms_tools/tests/test_setup/test_data/grid.zarr/lon_psi/.zarray +22 -0
  169. roms_tools/tests/test_setup/test_data/grid.zarr/lon_psi/.zattrs +8 -0
  170. roms_tools/tests/test_setup/test_data/grid.zarr/lon_psi/0.0 +0 -0
  171. roms_tools/tests/test_setup/test_data/grid.zarr/lon_u/0.0 +0 -0
  172. roms_tools/tests/test_setup/test_data/grid.zarr/pm/0.0 +0 -0
  173. roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/.zattrs +2 -2
  174. roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/.zmetadata +62 -2
  175. roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/angle/0.0 +0 -0
  176. roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/angle_coarse/0.0 +0 -0
  177. roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/f/0.0 +0 -0
  178. roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/h/0.0 +0 -0
  179. roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/lat_coarse/0.0 +0 -0
  180. roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/lat_psi/.zarray +22 -0
  181. roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/lat_psi/.zattrs +8 -0
  182. roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/lat_psi/0.0 +0 -0
  183. roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/lat_rho/0.0 +0 -0
  184. roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/lat_u/0.0 +0 -0
  185. roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/lat_v/0.0 +0 -0
  186. roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/lon_coarse/0.0 +0 -0
  187. roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/lon_psi/.zarray +22 -0
  188. roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/lon_psi/.zattrs +8 -0
  189. roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/lon_psi/0.0 +0 -0
  190. roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/lon_rho/0.0 +0 -0
  191. roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/lon_u/0.0 +0 -0
  192. roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/lon_v/0.0 +0 -0
  193. roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/pm/0.0 +0 -0
  194. roms_tools/tests/test_setup/test_data/grid_that_straddles_dateline.zarr/pn/0.0 +0 -0
  195. roms_tools/tests/test_setup/test_data/initial_conditions_with_bgc_from_climatology.zarr/ALK/0.0.0.0 +0 -0
  196. roms_tools/tests/test_setup/test_data/initial_conditions_with_bgc_from_climatology.zarr/ALK_ALT_CO2/0.0.0.0 +0 -0
  197. roms_tools/tests/test_setup/test_data/initial_conditions_with_bgc_from_climatology.zarr/DIC/0.0.0.0 +0 -0
  198. roms_tools/tests/test_setup/test_data/initial_conditions_with_bgc_from_climatology.zarr/DIC_ALT_CO2/0.0.0.0 +0 -0
  199. roms_tools/tests/test_setup/test_data/initial_conditions_with_bgc_from_climatology.zarr/DOC/0.0.0.0 +0 -0
  200. roms_tools/tests/test_setup/test_data/initial_conditions_with_bgc_from_climatology.zarr/DOCr/0.0.0.0 +0 -0
  201. roms_tools/tests/test_setup/test_data/initial_conditions_with_bgc_from_climatology.zarr/DON/0.0.0.0 +0 -0
  202. roms_tools/tests/test_setup/test_data/initial_conditions_with_bgc_from_climatology.zarr/DONr/0.0.0.0 +0 -0
  203. roms_tools/tests/test_setup/test_data/initial_conditions_with_bgc_from_climatology.zarr/DOP/0.0.0.0 +0 -0
  204. roms_tools/tests/test_setup/test_data/initial_conditions_with_bgc_from_climatology.zarr/DOPr/0.0.0.0 +0 -0
  205. roms_tools/tests/test_setup/test_data/initial_conditions_with_bgc_from_climatology.zarr/Fe/0.0.0.0 +0 -0
  206. roms_tools/tests/test_setup/test_data/initial_conditions_with_bgc_from_climatology.zarr/Lig/0.0.0.0 +0 -0
  207. roms_tools/tests/test_setup/test_data/initial_conditions_with_bgc_from_climatology.zarr/NH4/0.0.0.0 +0 -0
  208. roms_tools/tests/test_setup/test_data/initial_conditions_with_bgc_from_climatology.zarr/NO3/0.0.0.0 +0 -0
  209. roms_tools/tests/test_setup/test_data/initial_conditions_with_bgc_from_climatology.zarr/O2/0.0.0.0 +0 -0
  210. roms_tools/tests/test_setup/test_data/initial_conditions_with_bgc_from_climatology.zarr/PO4/0.0.0.0 +0 -0
  211. roms_tools/tests/test_setup/test_data/initial_conditions_with_bgc_from_climatology.zarr/SiO3/0.0.0.0 +0 -0
  212. roms_tools/tests/test_setup/test_data/initial_conditions_with_bgc_from_climatology.zarr/diatC/0.0.0.0 +0 -0
  213. roms_tools/tests/test_setup/test_data/initial_conditions_with_bgc_from_climatology.zarr/diatChl/0.0.0.0 +0 -0
  214. roms_tools/tests/test_setup/test_data/initial_conditions_with_bgc_from_climatology.zarr/diatFe/0.0.0.0 +0 -0
  215. roms_tools/tests/test_setup/test_data/initial_conditions_with_bgc_from_climatology.zarr/diatP/0.0.0.0 +0 -0
  216. roms_tools/tests/test_setup/test_data/initial_conditions_with_bgc_from_climatology.zarr/diatSi/0.0.0.0 +0 -0
  217. roms_tools/tests/test_setup/test_data/initial_conditions_with_bgc_from_climatology.zarr/diazC/0.0.0.0 +0 -0
  218. roms_tools/tests/test_setup/test_data/initial_conditions_with_bgc_from_climatology.zarr/diazChl/0.0.0.0 +0 -0
  219. roms_tools/tests/test_setup/test_data/initial_conditions_with_bgc_from_climatology.zarr/diazFe/0.0.0.0 +0 -0
  220. roms_tools/tests/test_setup/test_data/initial_conditions_with_bgc_from_climatology.zarr/diazP/0.0.0.0 +0 -0
  221. roms_tools/tests/test_setup/test_data/initial_conditions_with_bgc_from_climatology.zarr/salt/0.0.0.0 +0 -0
  222. roms_tools/tests/test_setup/test_data/initial_conditions_with_bgc_from_climatology.zarr/spC/0.0.0.0 +0 -0
  223. roms_tools/tests/test_setup/test_data/initial_conditions_with_bgc_from_climatology.zarr/spCaCO3/0.0.0.0 +0 -0
  224. roms_tools/tests/test_setup/test_data/initial_conditions_with_bgc_from_climatology.zarr/spChl/0.0.0.0 +0 -0
  225. roms_tools/tests/test_setup/test_data/initial_conditions_with_bgc_from_climatology.zarr/spFe/0.0.0.0 +0 -0
  226. roms_tools/tests/test_setup/test_data/initial_conditions_with_bgc_from_climatology.zarr/spP/0.0.0.0 +0 -0
  227. roms_tools/tests/test_setup/test_data/initial_conditions_with_bgc_from_climatology.zarr/temp/0.0.0.0 +0 -0
  228. roms_tools/tests/test_setup/test_data/initial_conditions_with_bgc_from_climatology.zarr/u/0.0.0.0 +0 -0
  229. roms_tools/tests/test_setup/test_data/initial_conditions_with_bgc_from_climatology.zarr/ubar/0.0.0 +0 -0
  230. roms_tools/tests/test_setup/test_data/initial_conditions_with_bgc_from_climatology.zarr/v/0.0.0.0 +0 -0
  231. roms_tools/tests/test_setup/test_data/initial_conditions_with_bgc_from_climatology.zarr/vbar/0.0.0 +0 -0
  232. roms_tools/tests/test_setup/test_data/initial_conditions_with_bgc_from_climatology.zarr/zooC/0.0.0.0 +0 -0
  233. roms_tools/tests/test_setup/test_data/tidal_forcing.zarr/u_Im/0.0.0 +0 -0
  234. roms_tools/tests/test_setup/test_data/tidal_forcing.zarr/u_Re/0.0.0 +0 -0
  235. roms_tools/tests/test_setup/test_data/tidal_forcing.zarr/v_Im/0.0.0 +0 -0
  236. roms_tools/tests/test_setup/test_data/tidal_forcing.zarr/v_Re/0.0.0 +0 -0
  237. roms_tools/tests/test_setup/test_grid.py +56 -0
  238. roms_tools/tests/test_setup/test_surface_forcing.py +2 -2
  239. roms_tools/tests/test_setup/test_topography.py +40 -0
  240. roms_tools/tests/test_utils.py +30 -0
  241. roms_tools/utils.py +39 -3
  242. roms_tools-1.4.1.dist-info/LICENSE +201 -0
  243. {roms_tools-1.4.0.dist-info → roms_tools-1.4.1.dist-info}/METADATA +3 -1
  244. {roms_tools-1.4.0.dist-info → roms_tools-1.4.1.dist-info}/RECORD +246 -234
  245. {roms_tools-1.4.0.dist-info → roms_tools-1.4.1.dist-info}/WHEEL +1 -1
  246. roms_tools-1.4.0.dist-info/LICENSE +0 -674
  247. {roms_tools-1.4.0.dist-info → roms_tools-1.4.1.dist-info}/top_level.txt +0 -0
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "center_lat": 0,
3
3
  "center_lon": -20,
4
- "coordinates": "interface_depth_rho interface_depth_u interface_depth_v layer_depth_rho layer_depth_u layer_depth_v",
4
+ "coordinates": "interface_depth_rho interface_depth_u interface_depth_v lat_psi layer_depth_rho layer_depth_u layer_depth_v lon_psi",
5
5
  "hc": 300.0,
6
6
  "hmin": 5.0,
7
- "roms_tools_version": "0.1.dev152+dirty",
7
+ "roms_tools_version": "0.1.dev138+dirty",
8
8
  "rot": 0,
9
9
  "size_x": 100,
10
10
  "size_y": 100,
@@ -3,10 +3,10 @@
3
3
  ".zattrs": {
4
4
  "center_lat": 0,
5
5
  "center_lon": -20,
6
- "coordinates": "interface_depth_rho interface_depth_u interface_depth_v layer_depth_rho layer_depth_u layer_depth_v",
6
+ "coordinates": "interface_depth_rho interface_depth_u interface_depth_v lat_psi layer_depth_rho layer_depth_u layer_depth_v lon_psi",
7
7
  "hc": 300.0,
8
8
  "hmin": 5.0,
9
- "roms_tools_version": "0.1.dev152+dirty",
9
+ "roms_tools_version": "0.1.dev138+dirty",
10
10
  "rot": 0,
11
11
  "size_x": 100,
12
12
  "size_y": 100,
@@ -325,6 +325,36 @@
325
325
  "long_name": "latitude of rho-points on coarsened grid",
326
326
  "units": "degrees North"
327
327
  },
328
+ "lat_psi/.zarray": {
329
+ "chunks": [
330
+ 4,
331
+ 4
332
+ ],
333
+ "compressor": {
334
+ "blocksize": 0,
335
+ "clevel": 5,
336
+ "cname": "lz4",
337
+ "id": "blosc",
338
+ "shuffle": 1
339
+ },
340
+ "dtype": "<f8",
341
+ "fill_value": "NaN",
342
+ "filters": null,
343
+ "order": "C",
344
+ "shape": [
345
+ 4,
346
+ 4
347
+ ],
348
+ "zarr_format": 2
349
+ },
350
+ "lat_psi/.zattrs": {
351
+ "_ARRAY_DIMENSIONS": [
352
+ "eta_psi",
353
+ "xi_psi"
354
+ ],
355
+ "long_name": "latitude of psi-points",
356
+ "units": "degrees North"
357
+ },
328
358
  "lat_rho/.zarray": {
329
359
  "chunks": [
330
360
  3,
@@ -544,6 +574,36 @@
544
574
  "long_name": "longitude of rho-points on coarsened grid",
545
575
  "units": "degrees East"
546
576
  },
577
+ "lon_psi/.zarray": {
578
+ "chunks": [
579
+ 4,
580
+ 4
581
+ ],
582
+ "compressor": {
583
+ "blocksize": 0,
584
+ "clevel": 5,
585
+ "cname": "lz4",
586
+ "id": "blosc",
587
+ "shuffle": 1
588
+ },
589
+ "dtype": "<f8",
590
+ "fill_value": "NaN",
591
+ "filters": null,
592
+ "order": "C",
593
+ "shape": [
594
+ 4,
595
+ 4
596
+ ],
597
+ "zarr_format": 2
598
+ },
599
+ "lon_psi/.zattrs": {
600
+ "_ARRAY_DIMENSIONS": [
601
+ "eta_psi",
602
+ "xi_psi"
603
+ ],
604
+ "long_name": "longitude of psi-points",
605
+ "units": "degrees East"
606
+ },
547
607
  "lon_rho/.zarray": {
548
608
  "chunks": [
549
609
  3,
@@ -0,0 +1,22 @@
1
+ {
2
+ "chunks": [
3
+ 4,
4
+ 4
5
+ ],
6
+ "compressor": {
7
+ "blocksize": 0,
8
+ "clevel": 5,
9
+ "cname": "lz4",
10
+ "id": "blosc",
11
+ "shuffle": 1
12
+ },
13
+ "dtype": "<f8",
14
+ "fill_value": "NaN",
15
+ "filters": null,
16
+ "order": "C",
17
+ "shape": [
18
+ 4,
19
+ 4
20
+ ],
21
+ "zarr_format": 2
22
+ }
@@ -0,0 +1,8 @@
1
+ {
2
+ "_ARRAY_DIMENSIONS": [
3
+ "eta_psi",
4
+ "xi_psi"
5
+ ],
6
+ "long_name": "latitude of psi-points",
7
+ "units": "degrees North"
8
+ }
@@ -0,0 +1,22 @@
1
+ {
2
+ "chunks": [
3
+ 4,
4
+ 4
5
+ ],
6
+ "compressor": {
7
+ "blocksize": 0,
8
+ "clevel": 5,
9
+ "cname": "lz4",
10
+ "id": "blosc",
11
+ "shuffle": 1
12
+ },
13
+ "dtype": "<f8",
14
+ "fill_value": "NaN",
15
+ "filters": null,
16
+ "order": "C",
17
+ "shape": [
18
+ 4,
19
+ 4
20
+ ],
21
+ "zarr_format": 2
22
+ }
@@ -0,0 +1,8 @@
1
+ {
2
+ "_ARRAY_DIMENSIONS": [
3
+ "eta_psi",
4
+ "xi_psi"
5
+ ],
6
+ "long_name": "longitude of psi-points",
7
+ "units": "degrees East"
8
+ }
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "center_lat": 0,
3
3
  "center_lon": 0,
4
- "coordinates": "interface_depth_rho interface_depth_u interface_depth_v layer_depth_rho layer_depth_u layer_depth_v",
4
+ "coordinates": "interface_depth_rho interface_depth_u interface_depth_v lat_psi layer_depth_rho layer_depth_u layer_depth_v lon_psi",
5
5
  "hc": 300.0,
6
6
  "hmin": 5.0,
7
- "roms_tools_version": "0.1.dev152+dirty",
7
+ "roms_tools_version": "0.1.dev138+dirty",
8
8
  "rot": 20,
9
9
  "size_x": 100,
10
10
  "size_y": 100,
@@ -3,10 +3,10 @@
3
3
  ".zattrs": {
4
4
  "center_lat": 0,
5
5
  "center_lon": 0,
6
- "coordinates": "interface_depth_rho interface_depth_u interface_depth_v layer_depth_rho layer_depth_u layer_depth_v",
6
+ "coordinates": "interface_depth_rho interface_depth_u interface_depth_v lat_psi layer_depth_rho layer_depth_u layer_depth_v lon_psi",
7
7
  "hc": 300.0,
8
8
  "hmin": 5.0,
9
- "roms_tools_version": "0.1.dev152+dirty",
9
+ "roms_tools_version": "0.1.dev138+dirty",
10
10
  "rot": 20,
11
11
  "size_x": 100,
12
12
  "size_y": 100,
@@ -325,6 +325,36 @@
325
325
  "long_name": "latitude of rho-points on coarsened grid",
326
326
  "units": "degrees North"
327
327
  },
328
+ "lat_psi/.zarray": {
329
+ "chunks": [
330
+ 4,
331
+ 4
332
+ ],
333
+ "compressor": {
334
+ "blocksize": 0,
335
+ "clevel": 5,
336
+ "cname": "lz4",
337
+ "id": "blosc",
338
+ "shuffle": 1
339
+ },
340
+ "dtype": "<f8",
341
+ "fill_value": "NaN",
342
+ "filters": null,
343
+ "order": "C",
344
+ "shape": [
345
+ 4,
346
+ 4
347
+ ],
348
+ "zarr_format": 2
349
+ },
350
+ "lat_psi/.zattrs": {
351
+ "_ARRAY_DIMENSIONS": [
352
+ "eta_psi",
353
+ "xi_psi"
354
+ ],
355
+ "long_name": "latitude of psi-points",
356
+ "units": "degrees North"
357
+ },
328
358
  "lat_rho/.zarray": {
329
359
  "chunks": [
330
360
  3,
@@ -544,6 +574,36 @@
544
574
  "long_name": "longitude of rho-points on coarsened grid",
545
575
  "units": "degrees East"
546
576
  },
577
+ "lon_psi/.zarray": {
578
+ "chunks": [
579
+ 4,
580
+ 4
581
+ ],
582
+ "compressor": {
583
+ "blocksize": 0,
584
+ "clevel": 5,
585
+ "cname": "lz4",
586
+ "id": "blosc",
587
+ "shuffle": 1
588
+ },
589
+ "dtype": "<f8",
590
+ "fill_value": "NaN",
591
+ "filters": null,
592
+ "order": "C",
593
+ "shape": [
594
+ 4,
595
+ 4
596
+ ],
597
+ "zarr_format": 2
598
+ },
599
+ "lon_psi/.zattrs": {
600
+ "_ARRAY_DIMENSIONS": [
601
+ "eta_psi",
602
+ "xi_psi"
603
+ ],
604
+ "long_name": "longitude of psi-points",
605
+ "units": "degrees East"
606
+ },
547
607
  "lon_rho/.zarray": {
548
608
  "chunks": [
549
609
  3,
@@ -0,0 +1,22 @@
1
+ {
2
+ "chunks": [
3
+ 4,
4
+ 4
5
+ ],
6
+ "compressor": {
7
+ "blocksize": 0,
8
+ "clevel": 5,
9
+ "cname": "lz4",
10
+ "id": "blosc",
11
+ "shuffle": 1
12
+ },
13
+ "dtype": "<f8",
14
+ "fill_value": "NaN",
15
+ "filters": null,
16
+ "order": "C",
17
+ "shape": [
18
+ 4,
19
+ 4
20
+ ],
21
+ "zarr_format": 2
22
+ }
@@ -0,0 +1,8 @@
1
+ {
2
+ "_ARRAY_DIMENSIONS": [
3
+ "eta_psi",
4
+ "xi_psi"
5
+ ],
6
+ "long_name": "latitude of psi-points",
7
+ "units": "degrees North"
8
+ }
@@ -0,0 +1,22 @@
1
+ {
2
+ "chunks": [
3
+ 4,
4
+ 4
5
+ ],
6
+ "compressor": {
7
+ "blocksize": 0,
8
+ "clevel": 5,
9
+ "cname": "lz4",
10
+ "id": "blosc",
11
+ "shuffle": 1
12
+ },
13
+ "dtype": "<f8",
14
+ "fill_value": "NaN",
15
+ "filters": null,
16
+ "order": "C",
17
+ "shape": [
18
+ 4,
19
+ 4
20
+ ],
21
+ "zarr_format": 2
22
+ }
@@ -0,0 +1,8 @@
1
+ {
2
+ "_ARRAY_DIMENSIONS": [
3
+ "eta_psi",
4
+ "xi_psi"
5
+ ],
6
+ "long_name": "longitude of psi-points",
7
+ "units": "degrees East"
8
+ }
@@ -8,6 +8,26 @@ from conftest import calculate_file_hash
8
8
  from pathlib import Path
9
9
 
10
10
 
11
+ @pytest.fixture()
12
+ def counter_clockwise_rotated_grid():
13
+
14
+ grid = Grid(
15
+ nx=1, ny=1, size_x=100, size_y=100, center_lon=-20, center_lat=0, rot=20
16
+ )
17
+
18
+ return grid
19
+
20
+
21
+ @pytest.fixture()
22
+ def clockwise_rotated_grid():
23
+
24
+ grid = Grid(
25
+ nx=1, ny=1, size_x=100, size_y=100, center_lon=-20, center_lat=0, rot=-20
26
+ )
27
+
28
+ return grid
29
+
30
+
11
31
  def test_grid_creation(grid):
12
32
 
13
33
  assert grid.nx == 1
@@ -20,6 +40,42 @@ def test_grid_creation(grid):
20
40
  assert isinstance(grid.ds, xr.Dataset)
21
41
 
22
42
 
43
+ @pytest.mark.parametrize(
44
+ "grid_fixture",
45
+ ["grid", "counter_clockwise_rotated_grid", "clockwise_rotated_grid"],
46
+ )
47
+ def test_coords_relation(grid_fixture, request):
48
+ """
49
+ Test that the coordinates satisfy the expected relations on a C-grid.
50
+ """
51
+ grid = request.getfixturevalue(grid_fixture)
52
+
53
+ # psi versus rho
54
+ assert grid.ds.lon_psi.min() < grid.ds.lon_rho.min()
55
+ assert grid.ds.lon_psi.max() > grid.ds.lon_rho.max()
56
+ assert grid.ds.lat_psi.min() < grid.ds.lat_rho.min()
57
+ assert grid.ds.lat_psi.max() > grid.ds.lat_rho.max()
58
+
59
+ # Assertion with tolerance is necessary for non-rotated grids
60
+ def assert_larger_equal_than_with_tolerance(value1, value2, tolerance=1e-5):
61
+ assert value1 >= value2 - tolerance
62
+
63
+ def assert_smaller_equal_than_with_tolerance(value1, value2, tolerance=1e-5):
64
+ assert value1 <= value2 + tolerance
65
+
66
+ # u versus rho
67
+ assert_larger_equal_than_with_tolerance(grid.ds.lon_u.min(), grid.ds.lon_rho.min())
68
+ assert_larger_equal_than_with_tolerance(grid.ds.lat_u.min(), grid.ds.lat_rho.min())
69
+ assert_smaller_equal_than_with_tolerance(grid.ds.lon_u.max(), grid.ds.lon_rho.max())
70
+ assert_smaller_equal_than_with_tolerance(grid.ds.lon_u.max(), grid.ds.lon_rho.max())
71
+
72
+ # v versus rho
73
+ assert_larger_equal_than_with_tolerance(grid.ds.lon_v.min(), grid.ds.lon_rho.min())
74
+ assert_larger_equal_than_with_tolerance(grid.ds.lat_v.min(), grid.ds.lat_rho.min())
75
+ assert_smaller_equal_than_with_tolerance(grid.ds.lon_v.max(), grid.ds.lon_rho.max())
76
+ assert_smaller_equal_than_with_tolerance(grid.ds.lon_v.max(), grid.ds.lon_rho.max())
77
+
78
+
23
79
  def test_plot_save_methods(tmp_path):
24
80
 
25
81
  grid = Grid(
@@ -13,8 +13,8 @@ def grid_that_straddles_dateline():
13
13
  Fixture for creating a domain that straddles the dateline and lies within the bounds of the regional ERA5 data.
14
14
  """
15
15
  grid = Grid(
16
- nx=5,
17
- ny=5,
16
+ nx=20,
17
+ ny=20,
18
18
  size_x=1800,
19
19
  size_y=2400,
20
20
  center_lon=-10,