From e138d9f61d3254cb027fedcdc41c900afa0196e0 Mon Sep 17 00:00:00 2001 From: MatevzVremec Date: Thu, 14 Mar 2024 14:20:20 +0100 Subject: [PATCH 01/25] Updated version and readme links. --- README.md | 20 ++++++++++---------- pyet/version.py | 2 +- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/README.md b/README.md index 386ddfe..e1374a6 100644 --- a/README.md +++ b/README.md @@ -42,29 +42,29 @@ $^a$ $T_{max}$ and $T_{min}$ can also be provided. $^b$ $RH_{max}$ and $RH_{min} Examples of using *pyet* can be found in the example folder: -* [Example 1](examples/01_example_zamg.ipynb): Estimating PET using pandas.Series +* [Example 1](docs/examples/01_example_zamg.ipynb): Estimating PET using pandas.Series -* [Example 2](examples/02_example_zamg_netcdf.ipynb): Estimating PET using xarray.DataArray +* [Example 2](docs/examples/02_example_zamg_netcdf.ipynb): Estimating PET using xarray.DataArray -* [Example 3](examples/03_example_knmi.ipynb): Benchmarking Makkink +* [Example 3](docs/examples/03_example_knmi.ipynb): Benchmarking Makkink against [KNMI data](https://www.knmi.nl/over-het-knmi/about) -* [Example 4](examples/04_example_coagmet.ipynb): Benchmarking FAO56 +* [Example 4](docs/examples/04_example_coagmet.ipynb): Benchmarking FAO56 against [CoAgMET data](https://coagmet.colostate.edu/) -* [Example 5](examples/05_example_calibration.ipynb): Calibrating the Romanenko and Abtew method against the PM-FAO56 +* [Example 5](docs/examples/05_example_calibration.ipynb): Calibrating the Romanenko and Abtew method against the PM-FAO56 -* [Example 6](examples/06_worked_examples_McMahon_etal_2013.ipynb): Worked examples for estimating meteorological +* [Example 6](docs/examples/06_worked_examples_McMahon_etal_2013.ipynb): Worked examples for estimating meteorological variables and potential evapotranspiration after McMahon et al., 2013 -* [Example 7](examples/07_example_climate_change.ipynb): Example for estimating potential evapotranspiration under +* [Example 7](docs/examples/07_example_climate_change.ipynb): Example for estimating potential evapotranspiration under warming and elevated $CO_2$ concentrations following Yang et al., (2019) -* [Example 8](examples/08_crop_coefficient.ipynb): Determining the crop coefficient function with Python +* [Example 8](docs/examples/08_crop_coefficient.ipynb): Determining the crop coefficient function with Python -* [Example 9](examples/09_CMIP6_data.ipynb): Estimating PET using CMIP data +* [Example 9](docs/examples/09_CMIP6_data.ipynb): Estimating PET using CMIP data -* [Example 10](examples/10_example_paper.ipynb): Notebook supporting PyEt manuscript +* [Example 10](docs/examples/10_example_paper.ipynb): Notebook supporting PyEt manuscript Documentation is hosted on [ReadTheDocs](https://pyet.readthedocs.io). diff --git a/pyet/version.py b/pyet/version.py index d88270b..ff5fea7 100644 --- a/pyet/version.py +++ b/pyet/version.py @@ -1,3 +1,3 @@ # This is the only location where the version will be written and changed. # Based on https://packaging.python.org/single_source_version/ -__version__ = "1.3.0" +__version__ = "1.3.1" From 52988aa3f11564d1a255cf4bdb5131cbd3f50d7d Mon Sep 17 00:00:00 2001 From: MatevzVremec Date: Thu, 14 Mar 2024 14:36:48 +0100 Subject: [PATCH 02/25] Update docs --- docs/examples/index.rst | 42 ++++++++++++++++++++++++++++++++++++++++- 1 file changed, 41 insertions(+), 1 deletion(-) diff --git a/docs/examples/index.rst b/docs/examples/index.rst index 9e90d39..f0047f0 100644 --- a/docs/examples/index.rst +++ b/docs/examples/index.rst @@ -8,7 +8,47 @@ evaporation. :numbered: :glob: - * + 01_example_zamg + 02_example_zamg_netcdf + 03_example_knmi + 04_example_coagmet + 05_example_calibration + 06_worked_examples_McMahon_etal_2013 + 07_example_climate_change + 08_crop_coefficient + 09_CMIP6_data + 10_example_paper + +`Estimating PET using pandas.Series`_ + +`Estimating PET using xarray.DataArray`_ + +`Benchmarking Makkink`_ + +`Benchmarking FAO56`_ + +`Calibration`_ + +`Examples from McMahon et al., 2013`_ + +`PET under climate change`_ + +`Crop coefficient`_ + +`Estimating PET using CMIP data`_ + +`Notebook supporting PyEt GMD manuscript`_ + +.. _Estimating PET using pandas.Series: 01_example_zamg.ipynb +.. _Estimating PET using xarray.DataArray: 02_example_zamg_netcdf.ipynb +.. _Benchmarking Makkink: 03_example_knmi.ipynb +.. _Benchmarking FAO56: 04_example_coagmet.ipynb +.. _Calibration: 05_example_calibration.ipynb +.. _Examples from McMahon et al., 2013: 06_worked_examples_McMahon_etal_2013.ipynb +.. _PET under climate change: 07_example_climate_change.ipynb +.. _Crop coefficient: 08_crop_coefficient.ipynb +.. _Estimating PET using CMIP data: 09_CMIP6_data.ipynb +.. _Notebook supporting PyEt GMD manuscript: 10_example_paper.ipynb .. tip:: The latest versions of the Jupyter Notebooks can be found in the From 0c31326b89cd09b43441da01a21693645a4be472 Mon Sep 17 00:00:00 2001 From: MatevzVremec Date: Thu, 14 Mar 2024 15:06:26 +0100 Subject: [PATCH 03/25] Updated docs --- .github/workflows/ci.yml | 5 +++++ README.md | 20 ++++++++++---------- docs/requirements.txt | 13 +++++++++++++ 3 files changed, 28 insertions(+), 10 deletions(-) create mode 100644 docs/requirements.txt diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 03c74a3..3b18e55 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -39,3 +39,8 @@ jobs: with: project-token: ${{ secrets.CODACY_PROJECT_TOKEN }} coverage-reports: coverage.xml + + - name: Install documentation dependencies + if: ${{ always() }} + run: | + if [ -f docs/requirements.txt ]; then pip install -r docs/requirements.txt; fi diff --git a/README.md b/README.md index e1374a6..c28aa44 100644 --- a/README.md +++ b/README.md @@ -42,29 +42,29 @@ $^a$ $T_{max}$ and $T_{min}$ can also be provided. $^b$ $RH_{max}$ and $RH_{min} Examples of using *pyet* can be found in the example folder: -* [Example 1](docs/examples/01_example_zamg.ipynb): Estimating PET using pandas.Series +* [Example 1](): Estimating PET using pandas.Series -* [Example 2](docs/examples/02_example_zamg_netcdf.ipynb): Estimating PET using xarray.DataArray +* [Example 2](): Estimating PET using xarray.DataArray -* [Example 3](docs/examples/03_example_knmi.ipynb): Benchmarking Makkink +* [Example 3](): Benchmarking Makkink against [KNMI data](https://www.knmi.nl/over-het-knmi/about) -* [Example 4](docs/examples/04_example_coagmet.ipynb): Benchmarking FAO56 +* [Example 4](): Benchmarking FAO56 against [CoAgMET data](https://coagmet.colostate.edu/) -* [Example 5](docs/examples/05_example_calibration.ipynb): Calibrating the Romanenko and Abtew method against the PM-FAO56 +* [Example 5](): Calibrating the Romanenko and Abtew method against the PM-FAO56 -* [Example 6](docs/examples/06_worked_examples_McMahon_etal_2013.ipynb): Worked examples for estimating meteorological +* [Example 6](): Worked examples for estimating meteorological variables and potential evapotranspiration after McMahon et al., 2013 -* [Example 7](docs/examples/07_example_climate_change.ipynb): Example for estimating potential evapotranspiration under +* [Example 7](): Example for estimating potential evapotranspiration under warming and elevated $CO_2$ concentrations following Yang et al., (2019) -* [Example 8](docs/examples/08_crop_coefficient.ipynb): Determining the crop coefficient function with Python +* [Example 8](): Determining the crop coefficient function with Python -* [Example 9](docs/examples/09_CMIP6_data.ipynb): Estimating PET using CMIP data +* [Example 9](): Estimating PET using CMIP data -* [Example 10](docs/examples/10_example_paper.ipynb): Notebook supporting PyEt manuscript +* [Example 10](): Notebook supporting PyEt manuscript Documentation is hosted on [ReadTheDocs](https://pyet.readthedocs.io). diff --git a/docs/requirements.txt b/docs/requirements.txt new file mode 100644 index 0000000..9aa12b3 --- /dev/null +++ b/docs/requirements.txt @@ -0,0 +1,13 @@ +numpy>=1.16 +xarray>=0.18.0 +pandas>=1.2 +flake8 +pytest +matplotlib +netcdf4 +scipy +seaborn +scikit-learn +pylab +mpl_toolkits +spotpy \ No newline at end of file From a866ca8f25e58858e987821ba648cbb8e8305ac9 Mon Sep 17 00:00:00 2001 From: MatevzVremec Date: Thu, 14 Mar 2024 16:07:16 +0100 Subject: [PATCH 04/25] Updated workflow --- .github/workflows/ci.yml | 2 +- docs/requirements.txt | 2 -- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 3b18e55..82301c6 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -43,4 +43,4 @@ jobs: - name: Install documentation dependencies if: ${{ always() }} run: | - if [ -f docs/requirements.txt ]; then pip install -r docs/requirements.txt; fi + if [ -f docs/requirements.txt ]; then pip install -v -r docs/requirements.txt; fi diff --git a/docs/requirements.txt b/docs/requirements.txt index 9aa12b3..7e0afa6 100644 --- a/docs/requirements.txt +++ b/docs/requirements.txt @@ -8,6 +8,4 @@ netcdf4 scipy seaborn scikit-learn -pylab -mpl_toolkits spotpy \ No newline at end of file From 79c2468c934bec3f9455a04991196270e7591f65 Mon Sep 17 00:00:00 2001 From: MatevzVremec Date: Thu, 14 Mar 2024 16:37:49 +0100 Subject: [PATCH 05/25] Updated requirements --- .github/workflows/ci.yml | 6 +----- docs/requirements.txt | 11 ----------- pyproject.toml | 5 +++++ 3 files changed, 6 insertions(+), 16 deletions(-) delete mode 100644 docs/requirements.txt diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 82301c6..231037d 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -39,8 +39,4 @@ jobs: with: project-token: ${{ secrets.CODACY_PROJECT_TOKEN }} coverage-reports: coverage.xml - - - name: Install documentation dependencies - if: ${{ always() }} - run: | - if [ -f docs/requirements.txt ]; then pip install -v -r docs/requirements.txt; fi + \ No newline at end of file diff --git a/docs/requirements.txt b/docs/requirements.txt deleted file mode 100644 index 7e0afa6..0000000 --- a/docs/requirements.txt +++ /dev/null @@ -1,11 +0,0 @@ -numpy>=1.16 -xarray>=0.18.0 -pandas>=1.2 -flake8 -pytest -matplotlib -netcdf4 -scipy -seaborn -scikit-learn -spotpy \ No newline at end of file diff --git a/pyproject.toml b/pyproject.toml index 659f390..fccbd93 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -61,4 +61,9 @@ rtd = [ "sphinxcontrib-bibtex", "matplotlib", "myst-nb", + "seaborn", + "netcdf4", + "sciki-learn", + "scipy", + "spotpy" ] \ No newline at end of file From 5f388b13713a8b481b4c8cb9130404170e22f715 Mon Sep 17 00:00:00 2001 From: MatevzVremec Date: Thu, 14 Mar 2024 16:42:33 +0100 Subject: [PATCH 06/25] Update pyproject.toml --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index fccbd93..c7a8982 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -63,7 +63,7 @@ rtd = [ "myst-nb", "seaborn", "netcdf4", - "sciki-learn", + "sciki-learn">=1.4.0, "scipy", "spotpy" ] \ No newline at end of file From 60bdf9f57224db6111645b4040b981f37bf70c18 Mon Sep 17 00:00:00 2001 From: MatevzVremec Date: Thu, 14 Mar 2024 16:45:17 +0100 Subject: [PATCH 07/25] Update pyproject.toml --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index c7a8982..8e2aa60 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -63,7 +63,7 @@ rtd = [ "myst-nb", "seaborn", "netcdf4", - "sciki-learn">=1.4.0, + "sciki-learn>=1.4.0", "scipy", "spotpy" ] \ No newline at end of file From db0e5437c75ad3d0c3098b6eeef48869c2ae1e8b Mon Sep 17 00:00:00 2001 From: MatevzVremec Date: Thu, 14 Mar 2024 16:50:58 +0100 Subject: [PATCH 08/25] Update pyproject.toml --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index 8e2aa60..a2770f2 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -63,7 +63,7 @@ rtd = [ "myst-nb", "seaborn", "netcdf4", - "sciki-learn>=1.4.0", + "scikit-learn", "scipy", "spotpy" ] \ No newline at end of file From c0c4b93e9ce901f7224fa236bf098df9f93365f3 Mon Sep 17 00:00:00 2001 From: MatevzVremec Date: Thu, 14 Mar 2024 16:56:23 +0100 Subject: [PATCH 09/25] Update pyproject.toml --- pyproject.toml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index a2770f2..479946b 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -65,5 +65,6 @@ rtd = [ "netcdf4", "scikit-learn", "scipy", - "spotpy" + "spotpy", + "openpyxl" ] \ No newline at end of file From 9d21693ca1408583dc9bf5f3d2818aa5b625d430 Mon Sep 17 00:00:00 2001 From: MatevzVremec Date: Thu, 14 Mar 2024 17:05:07 +0100 Subject: [PATCH 10/25] Update 10_example_paper.ipynb --- docs/examples/10_example_paper.ipynb | 1 - 1 file changed, 1 deletion(-) diff --git a/docs/examples/10_example_paper.ipynb b/docs/examples/10_example_paper.ipynb index 395e663..e767a99 100644 --- a/docs/examples/10_example_paper.ipynb +++ b/docs/examples/10_example_paper.ipynb @@ -120,7 +120,6 @@ "source": [ "#edit default values for plots\n", "params = {\n", - " \"font.family\": \"Arial\",\n", " \"legend.fontsize\": \"15\",\n", " \"axes.labelsize\": \"16\",\n", " \"xtick.labelsize\": \"15\",\n", From 0bdc4e5a945e308687f499b373026cd93f3abbba Mon Sep 17 00:00:00 2001 From: MatevzVremec Date: Thu, 14 Mar 2024 17:20:11 +0100 Subject: [PATCH 11/25] Update conf and docs --- docs/conf.py | 74 ++++++++++++++-------------- docs/examples/10_example_paper.ipynb | 8 +-- 2 files changed, 41 insertions(+), 41 deletions(-) diff --git a/docs/conf.py b/docs/conf.py index 9d7fec4..4e2dd5b 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -18,13 +18,11 @@ year = date.today().strftime("%Y") -sys.path.insert(0, os.path.abspath('.')) +sys.path.insert(0, os.path.abspath(".")) # Get a Bibtex reference file from the Zotero group for referencing url = "https://api.zotero.org/groups/4846265/collections/M9ZRDX2U/items/" -params = {"format": "bibtex", - "style": "apa", - "limit": 100} +params = {"format": "bibtex", "style": "apa", "limit": 100} r = requests.get(url=url, params=params) with open("references.bib", mode="w") as file: @@ -32,9 +30,7 @@ # Get a Bibtex reference file from the Zotero group for publications list url = "https://api.zotero.org/groups/4846265/collections/UR7PHVDK/items/" -params = {"format": "bibtex", - "style": "apa", - "limit": 100} +params = {"format": "bibtex", "style": "apa", "limit": 100} r = requests.get(url=url, params=params) with open("publications.bib", mode="w") as file: @@ -42,12 +38,12 @@ # -- Project information ----------------------------------------------------- -project = 'pyet' -copyright = '{}, M. Vremec, R.A. Collenteur'.format(year) -author = 'M. Vremec, R.A. Collenteur' +project = "pyet" +copyright = "{}, M. Vremec, R.A. Collenteur".format(year) +author = "M. Vremec, R.A. Collenteur" # The full version, including alpha/beta/rc tags -release = '2020' +release = "2020" # -- General configuration --------------------------------------------------- @@ -55,19 +51,19 @@ # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom # ones. extensions = [ - 'sphinx.ext.autodoc', - 'sphinx.ext.autosummary', - 'sphinx.ext.napoleon', - 'sphinx.ext.doctest', - 'sphinx.ext.intersphinx', - 'sphinx.ext.todo', - 'sphinx.ext.mathjax', - 'sphinx.ext.ifconfig', - 'sphinx.ext.viewcode', - 'IPython.sphinxext.ipython_console_highlighting', # lowercase didn't work - 'sphinx.ext.autosectionlabel', - 'sphinxcontrib.bibtex', - 'myst_nb', + "sphinx.ext.autodoc", + "sphinx.ext.autosummary", + "sphinx.ext.napoleon", + "sphinx.ext.doctest", + "sphinx.ext.intersphinx", + "sphinx.ext.todo", + "sphinx.ext.mathjax", + "sphinx.ext.ifconfig", + "sphinx.ext.viewcode", + "IPython.sphinxext.ipython_console_highlighting", # lowercase didn't work + "sphinx.ext.autosectionlabel", + "sphinxcontrib.bibtex", + "myst_nb", ] # Create custom bracket style with round brackets @@ -77,14 +73,13 @@ import sphinxcontrib.bibtex.plugin from sphinxcontrib.bibtex.style.referencing import BracketStyle -from sphinxcontrib.bibtex.style.referencing.author_year \ - import AuthorYearReferenceStyle +from sphinxcontrib.bibtex.style.referencing.author_year import AuthorYearReferenceStyle def bracket_style() -> BracketStyle: return BracketStyle( - left='(', - right=')', + left="(", + right=")", ) @@ -98,24 +93,24 @@ class MyReferenceStyle(AuthorYearReferenceStyle): sphinxcontrib.bibtex.plugin.register_plugin( - 'sphinxcontrib.bibtex.style.referencing', - 'author_year_round', MyReferenceStyle) + "sphinxcontrib.bibtex.style.referencing", "author_year_round", MyReferenceStyle +) -bibtex_bibfiles = ['references.bib', 'publications.bib'] +bibtex_bibfiles = ["references.bib", "publications.bib"] bibtex_reference_style = "author_year_round" # Add any paths that contain templates here, relative to this directory. -templates_path = ['_templates'] +templates_path = ["_templates"] -source_suffix = '.rst' +source_suffix = ".rst" # The master toctree document. -master_doc = 'index' +master_doc = "index" # List of patterns, relative to source directory, that match files and # directories to ignore when looking for source files. # This pattern also affects html_static_path and html_extra_path. -exclude_patterns = ['_build', '**.ipynb_checkpoints'] +exclude_patterns = ["_build", "**.ipynb_checkpoints"] # -- Options for HTML output ------------------------------------------------- @@ -125,12 +120,12 @@ class MyReferenceStyle(AuthorYearReferenceStyle): html_theme = "pydata_sphinx_theme" html_theme_options = { "github_url": "https://github.com/phydrus/pyet", - "use_edit_page_button": False + "use_edit_page_button": False, } # Add any paths that contain custom static files (such as style sheets) here, # relative to this directory. They are copied after the builtin static files, # so a file named "default.css" will overwrite the builtin "default.css". -html_static_path = ['_static'] +html_static_path = ["_static"] html_logo = "_static/logo.png" autosummary_generate = True @@ -148,3 +143,8 @@ class MyReferenceStyle(AuthorYearReferenceStyle): nb_execution_allow_errors = True # Allow errors in notebooks, to see the error online nb_execution_mode = "auto" + +# Enable specific MyST extensions, such as "dollarmath" for math rendering +myst_enable_extensions = [ + "dollarmath", +] diff --git a/docs/examples/10_example_paper.ipynb b/docs/examples/10_example_paper.ipynb index e767a99..1da24fd 100644 --- a/docs/examples/10_example_paper.ipynb +++ b/docs/examples/10_example_paper.ipynb @@ -1335,13 +1335,13 @@ "source": [ "# Load CO2 data for each RCP scenario\n", "rcp_co2 = pd.DataFrame()\n", - "rcp_co2[\"rcp_26\"] = pd.read_csv(\"data/example_10/co2_conc/RCP3PD_MIDYR_CONC.dat\", skiprows=38, \n", + "rcp_co2[\"rcp_26\"] = pd.read_csv(\"data/example_10/co2_conc/RCP3PD_MIDYR_CONC.DAT\", skiprows=38, \n", " delim_whitespace=True, index_col=\"YEARS\").loc[\"2020\":\"2100\", \"CO2\"]\n", - "rcp_co2[\"rcp_45\"] = pd.read_csv(\"data/example_10/co2_conc/RCP45_MIDYR_CONC.dat\", skiprows=38, \n", + "rcp_co2[\"rcp_45\"] = pd.read_csv(\"data/example_10/co2_conc/RCP45_MIDYR_CONC.DAT\", skiprows=38, \n", " delim_whitespace=True, index_col=\"YEARS\").loc[\"2020\":\"2100\", \"CO2\"]\n", - "rcp_co2[\"rcp_60\"] = pd.read_csv(\"data/example_10/co2_conc/RCP6_MIDYR_CONC.dat\", skiprows=38, \n", + "rcp_co2[\"rcp_60\"] = pd.read_csv(\"data/example_10/co2_conc/RCP6_MIDYR_CONC.DAT\", skiprows=38, \n", " delim_whitespace=True, index_col=\"YEARS\").loc[\"2020\":\"2100\", \"CO2\"]\n", - "rcp_co2[\"rcp_85\"] = pd.read_csv(\"data/example_10/co2_conc/RCP85_MIDYR_CONC.dat\", skiprows=38, \n", + "rcp_co2[\"rcp_85\"] = pd.read_csv(\"data/example_10/co2_conc/RCP85_MIDYR_CONC.DAT\", skiprows=38, \n", " delim_whitespace=True, index_col=\"YEARS\").loc[\"2020\":\"2100\", \"CO2\"]" ] }, From beb1628ff02bf1c56d25f03da4dc00f7c8f4e204 Mon Sep 17 00:00:00 2001 From: MatevzVremec Date: Thu, 14 Mar 2024 17:52:58 +0100 Subject: [PATCH 12/25] Update 10_example_paper.ipynb --- docs/examples/10_example_paper.ipynb | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/docs/examples/10_example_paper.ipynb b/docs/examples/10_example_paper.ipynb index 1da24fd..810530f 100644 --- a/docs/examples/10_example_paper.ipynb +++ b/docs/examples/10_example_paper.ipynb @@ -89,6 +89,7 @@ "import pylab\n", "import matplotlib.dates as mdates\n", "from mpl_toolkits.axes_grid1.inset_locator import inset_axes\n", + "import gc # Import the garbage collection module\n", "\n", "import pyet\n", "import spotpy\n", @@ -772,7 +773,7 @@ "fig.supxlabel(\"PET$_{benchmark}$ [mm/day]\", x=0.475, fontsize=16)\n", "fig.supylabel(\"PET$_{pyet}$ [mm/day]\", fontsize=16)\n", "fig.subplots_adjust(wspace=0.05, hspace=0.05, left=0.05)\n", - "plt.tight_layout()\n", + "plt.tight_layout();\n", "#fig.savefig(\"figure1.png\", dpi=600, bbox_inches=\"tight\")" ] }, @@ -871,7 +872,7 @@ "\n", "plt.tight_layout()\n", "\n", - "axs[2].legend(loc=(1.05,0.1), ncol=2, bbox_transform=axs[0].transAxes, fontsize=8)\n", + "axs[2].legend(loc=(1.05,0.1), ncol=2, bbox_transform=axs[0].transAxes, fontsize=8);\n", "#fig.savefig(\"figure2.png\", dpi=600, bbox_inches=\"tight\")" ] }, @@ -1006,7 +1007,7 @@ " cbar.set_label(\"PET [mm/day]\", labelpad=10)\n", " plt.subplots_adjust(hspace=0.02, wspace=0.1)\n", "\n", - "plt.subplots_adjust(hspace=0.02, wspace=0.01)\n", + "plt.subplots_adjust(hspace=0.02, wspace=0.01);\n", "\n", "#fig.savefig(\"figure3.png\", dpi=300, bbox_inches=\"tight\")" ] @@ -1286,7 +1287,7 @@ "axs[1,5].set_yticklabels([\"\",800,1000,\"\"])\n", "axs[0,5].legend(loc=(-3.65,1.05), ncol=7, bbox_transform=axs[1,5].transAxes)\n", "clb = fig.colorbar(density, orientation=\"horizontal\", ax=axs[0, 0], cax = axs[0, 0].inset_axes([0.04, 1.2, 1, 0.05]))\n", - "clb.ax.set_title(\"Number of points per pixel\")\n", + "clb.ax.set_title(\"Number of points per pixel\");\n", "#fig.savefig(\"figure4.png\", dpi=600, bbox_inches=\"tight\")" ] }, @@ -1429,7 +1430,9 @@ " dpet_rcp_et_95th.loc[year, rcp] = df_rcp_et.resample(\"y\").mean().mean().quantile(0.95)\n", " dpet_rcp_etco2.loc[year, rcp] = df_rcp_etco2.resample(\"y\").mean().mean().mean()\n", " dpet_rcp_etco2_5th.loc[year, rcp] = df_rcp_etco2.resample(\"y\").mean().mean().quantile(0.05)\n", - " dpet_rcp_etco2_95th.loc[year, rcp] = df_rcp_etco2.resample(\"y\").mean().mean().quantile(0.95)" + " dpet_rcp_etco2_95th.loc[year, rcp] = df_rcp_etco2.resample(\"y\").mean().mean().quantile(0.95)\n", + " # Call gc.collect() after processing each RCP scenario for a year\n", + " gc.collect()" ] }, { @@ -1486,7 +1489,7 @@ "\n", "for i, letter in enumerate([\"a\", \"b\", \"c\", \"d\"]):\n", " axs[i].text(0.85, 0.9, \"({})\".format(letter), transform=axs[i].transAxes, fontsize=12)\n", - " axs[i].tick_params(axis='both', which='major', labelsize=13)\n", + " axs[i].tick_params(axis='both', which='major', labelsize=13);\n", "\n", "#fig.savefig(\"figure5.png\", dpi=600, bbox_inches=\"tight\")" ] @@ -1528,7 +1531,7 @@ "pet_df.plot() # daily PET [mm/day]\n", "pet_df.boxplot() # boxplot PET[mm/day]\n", "pet_df.cumsum().plot() # cummulative PET [mm]\n", - "plt.scatter(pyet_makkink, pet_knmi) # plot Makkink pyet vs KNMI" + "plt.scatter(pyet_makkink, pet_knmi) # plot Makkink pyet vs KNMI;" ] }, { From 97691aeb875a1cb0a647c50a59d78b429399eb3b Mon Sep 17 00:00:00 2001 From: MatevzVremec Date: Thu, 14 Mar 2024 18:32:24 +0100 Subject: [PATCH 13/25] Update 10_example_paper.ipynb --- docs/examples/10_example_paper.ipynb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/examples/10_example_paper.ipynb b/docs/examples/10_example_paper.ipynb index 810530f..15a029d 100644 --- a/docs/examples/10_example_paper.ipynb +++ b/docs/examples/10_example_paper.ipynb @@ -1416,11 +1416,11 @@ "dpet_rcp_etco2 = pd.DataFrame(index=rcp_temp.index, columns=[\"rcp_26\", \"rcp_45\", \"rcp_60\", \"rcp_85\"])\n", "dpet_rcp_etco2_5th = pd.DataFrame(index=rcp_temp.index, columns=[\"rcp_26\", \"rcp_45\", \"rcp_60\", \"rcp_85\"])\n", "dpet_rcp_etco2_95th = pd.DataFrame(index=rcp_temp.index, columns=[\"rcp_26\", \"rcp_45\", \"rcp_60\", \"rcp_85\"])\n", - "for year in rcp_temp.index:\n", + "for year in rcp_temp.index: \n", " for rcp in [\"rcp_26\", \"rcp_45\", \"rcp_60\", \"rcp_85\"]:\n", " df_rcp_et = pd.DataFrame()\n", " df_rcp_etco2 = pd.DataFrame()\n", - " for i in np.arange(0, len(methods)):\n", + " for i in np.arange(0, len(methods[:2])): # only for two methods to reduce processing for RTD to handle!!!!!!!!!!!!\n", " input1 = input_rcp(rcp_temp.loc[year, rcp])\n", " df_rcp_et[methods[i]] = simulate(sollutions2[i], methods[i], input1[i])\n", " df_rcp_etco2[methods[i]] = simulate(sollutions2[i], methods[i], \n", From efb7e5bc7e07821274e34062d54b970c07e22fa4 Mon Sep 17 00:00:00 2001 From: MatevzVremec Date: Fri, 15 Mar 2024 08:13:24 +0100 Subject: [PATCH 14/25] Update python-publish.yml --- .github/workflows/python-publish.yml | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/.github/workflows/python-publish.yml b/.github/workflows/python-publish.yml index 1a03a7b..4725cc9 100644 --- a/.github/workflows/python-publish.yml +++ b/.github/workflows/python-publish.yml @@ -13,19 +13,17 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: Set up Python - uses: actions/setup-python@v2 + uses: actions/setup-python@v5 with: python-version: '3.x' - name: Install dependencies run: | python -m pip install --upgrade pip pip install setuptools wheel twine - - name: Build and publish - env: - TWINE_USERNAME: ${{ secrets.PYPI_USERNAME }} - TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }} - run: | - python setup.py sdist bdist_wheel - twine upload dist/* + - name: Upload Python Package + uses: pypa/gh-action-pypi-publish@release/v1 + with: + user: __token__ + password: ${{ secrets.PYPI_TOKEN }} From 8b36d95fecd7b90f2234d2245b8463a7a5532491 Mon Sep 17 00:00:00 2001 From: MatevzVremec Date: Fri, 15 Mar 2024 08:31:50 +0100 Subject: [PATCH 15/25] Update index.rst --- docs/index.rst | 268 ++++++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 254 insertions(+), 14 deletions(-) diff --git a/docs/index.rst b/docs/index.rst index da15f96..f13fb56 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -1,23 +1,263 @@ *pyet* - Estimation of Potential Evapotranspiration =================================================== -Pyet is an open source Python package for the estimation of reference and potential evapotranspiration (PET) from +*pyet* is an open source Python package for the estimation of reference and potential evapotranspiration (PET) from time series data (`Pandas `_) and gridded data (`Xarray `_). This allows users to estimate potential evapotranspiration and calibrate the models with just a few lines of python code. -Citing PyET ------------ -If you find *pyet* helpful in your work, please consider citing PyET. This way you support the project and we can keep -track of the usage of the package. +.. grid:: -Contents --------- -.. toctree:: - :maxdepth: 1 + .. grid-item-card:: Getting started + :link: userguide/index + :link-type: doc - Getting started - Examples - API-docs - Publications - References + User guide on the basic concepts of Pastas. + .. grid-item-card:: Examples + :link: examples/index + :link-type: doc + + Examples of *pyet* usage. + + .. grid-item-card:: Code Reference + :link: api/index + :link-type: doc + + *pyet* code reference. + +.. grid:: + + .. grid-item-card:: Publications + :link: publications + :link-type: doc + + Overview of publications that use *pyet* + + .. grid-item-card:: References + :link: references + :link-type: doc + + References used in the package. + + +Currently, 18 methods are implemented for calculating daily PET +----------------------------- + +.. list-table:: + :widths: 20 20 5 5 5 5 5 5 15 + :header-rows: 1 + + * - Method name + - pyet function + - T + - RH + - R + - u2 + - Lat. + - El. + - Benchmarked? + * - Penman + - penman + - ✓ `a`_ + - ✓ `b,c`_ + - ✓ `d`_ + - ✓ + - ✓ `d`_ + - ✓ `e`_ + - ✓ + * - Penman-Monteith + - pm + - ✓ `a`_ + - ✓ `b,c`_ + - ✓ `d`_ + - ✓ + - ✓ `d`_ + - ✓ `e`_ + - ✓ + * - ASCE-PM + - pm_asce + - ✓ `a`_ + - ✓ `b,c`_ + - ✓ `d`_ + - ✓ + - ✓ `d`_ + - ✓ `e`_ + - ✓ + * - FAO-56 + - pm_fao56 + - ✓ `a`_ + - ✓ `b,c`_ + - ✓ `d`_ + - ✓ + - ✓ `d`_ + - ✓ `e`_ + - ✓ + * - Priestley-Taylor + - priestley_taylor + - ✓ + - ✓ `h`_ + - ✓ `h`_ + - - + - ✓ `h`_ + - ✓ `e`_ + - ✓ + * - Kimberly-Penman + - kimberly_penman + - ✓ `a`_ + - ✓ `b,c`_ + - ✓ `d`_ + - ✓ + - ✓ `d`_ + - ✓ `e`_ + - - + * - Thom-Oliver + - thom_oliver + - ✓ `a`_ + - ✓ `b,c`_ + - ✓ `d`_ + - ✓ + - ✓ `d`_ + - ✓ `e`_ + - - + * - Blaney-Criddle + - blaney_criddle + - ✓ + - - `i`_ + - - `i`_ + - - `i`_ + - ✓ + - - + - ✓ + * - Hamon + - hamon + - ✓ + - - + - - + - - + - ✓ + - - + - ✓ + * - Romanenko + - romanenko + - ✓ + - ✓ + - - + - - + - - + - - + - ✓ + * - Linacre + - linacre + - ✓ `j`_ + - - + - - + - - + - - + - ✓ + - ✓ + * - Haude + - haude + - ✓ + - ✓ `k`_ + - - + - - + - - + - - + - ✓ + * - Turc + - turc + - ✓ + - ✓ + - ✓ + - - + - - + - - + - ✓ + * - Jensen-Haise + - jensen_haise + - ✓ + - - + - ✓ `l`_ + - - + - ✓ `l`_ + - - + - ✓ + * - McGuinness-Bordne + - mcguinness_bordne + - ✓ + - - + - - + - - + - ✓ + - - + - ✓ + * - Hargreaves + - hargreaves + - ✓ `m`_ + - - + - - + - - + - ✓ + - - + - ✓ + * - FAO-24 radiation + - fao_24 + - ✓ + - ✓ + - ✓ + - ✓ + - - + - ✓ `e`_ + - - + * - Abtew + - abtew + - ✓ + - - + - ✓ + - - + - - + - - + - ✓ + * - Makkink + - makkink + - ✓ + - - + - ✓ + - - + - - + - ✓ `e`_ + - ✓ + * - Oudin + - oudin + - ✓ + - - + - - + - - + - ✓ + - - + - - + +.. rubric:: Footnotes + +.. _`a`: T_max and T_min can also be provided. +.. _`b`: RH_max and RH_min can also be provided. +.. _`c`: If actual vapor pressure is provided, RH is not needed. +.. _`d`: Input for radiation can be (1) Net radiation, (2) solar radiation, or (3) sunshine hours. If (1), then latitude is not needed. If (1, 3) then latitude and elevation are needed. +.. _`e`: One must provide either the atmospheric pressure or elevation. +.. _`h`: If net radiation is provided, RH and Lat are not needed. +.. _`i`: If method==2, u2, RH_min, and sunshine hours are required. +.. _`j`: Additional input of Tmax and Tmin, or Tdew. +.. _`k`: Input can be RH or actual vapor pressure. +.. _`l`: If method==1, latitude is needed instead of Rs. +.. _`m`: Tmax and Tmin also needed. + + +Using *pyet*? Show your support by citing us! +----------------------------- + +If you find *pyet* useful and use it in your research or project, we kindly ask you to cite +the *pyet* preprint published in Hydrology and Earth System Sciences (HESS) as follows: + +- Vremec, M., Collenteur, R. A., and Birk, S.: Technical note: Improved handling of potential + evapotranspiration in hydrological studies with PyEt, Hydrol. Earth Syst. Sci. Discuss. + [preprint], https://doi.org/10.5194/hess-2022-417, 2023. \ No newline at end of file From 2df23c6e368ce7720409e9ee6cd567b6d7cab30c Mon Sep 17 00:00:00 2001 From: MatevzVremec Date: Fri, 15 Mar 2024 08:32:51 +0100 Subject: [PATCH 16/25] Updated docs --- docs/publications.rst | 2 +- docs/references.rst | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/publications.rst b/docs/publications.rst index 271eee6..26eb54c 100644 --- a/docs/publications.rst +++ b/docs/publications.rst @@ -1,7 +1,7 @@ Publications ============ -This page provides an overview of the publications that use PyET. The list is generated from the public Zotero +This page provides an overview of the publications that use *pyet*. The list is generated from the public Zotero library with the references. If you have used *pyet* in your work, please add the reference to the `Zotero library `_ (collection `Publications`) and it will show up here! diff --git a/docs/references.rst b/docs/references.rst index a4c911a..b13c7e4 100644 --- a/docs/references.rst +++ b/docs/references.rst @@ -1,8 +1,8 @@ References ========== -PyET is built on a lot of scientific literature on the estimation of potential evapotranspiration. Here the -references are listed for all the methods implemented in PyET, and the references used to benchmark the methods. This +*pyet* is built on a lot of scientific literature on the estimation of potential evapotranspiration. Here the +references are listed for all the methods implemented in *pyet*, and the references used to benchmark the methods. This list is automatically generated from a public `Zotero library `_ (collection `References`). For a list of publications using *pyet* we refer to the `Publications` page of this website. From 4a5db92c393a2a8232aef2a2e27645a1753016b1 Mon Sep 17 00:00:00 2001 From: MatevzVremec Date: Fri, 15 Mar 2024 09:53:11 +0100 Subject: [PATCH 17/25] Update docs --- docs/examples/index.rst | 31 ------ docs/index.rst | 213 ---------------------------------------- 2 files changed, 244 deletions(-) diff --git a/docs/examples/index.rst b/docs/examples/index.rst index f0047f0..88cfd06 100644 --- a/docs/examples/index.rst +++ b/docs/examples/index.rst @@ -19,37 +19,6 @@ evaporation. 09_CMIP6_data 10_example_paper -`Estimating PET using pandas.Series`_ - -`Estimating PET using xarray.DataArray`_ - -`Benchmarking Makkink`_ - -`Benchmarking FAO56`_ - -`Calibration`_ - -`Examples from McMahon et al., 2013`_ - -`PET under climate change`_ - -`Crop coefficient`_ - -`Estimating PET using CMIP data`_ - -`Notebook supporting PyEt GMD manuscript`_ - -.. _Estimating PET using pandas.Series: 01_example_zamg.ipynb -.. _Estimating PET using xarray.DataArray: 02_example_zamg_netcdf.ipynb -.. _Benchmarking Makkink: 03_example_knmi.ipynb -.. _Benchmarking FAO56: 04_example_coagmet.ipynb -.. _Calibration: 05_example_calibration.ipynb -.. _Examples from McMahon et al., 2013: 06_worked_examples_McMahon_etal_2013.ipynb -.. _PET under climate change: 07_example_climate_change.ipynb -.. _Crop coefficient: 08_crop_coefficient.ipynb -.. _Estimating PET using CMIP data: 09_CMIP6_data.ipynb -.. _Notebook supporting PyEt GMD manuscript: 10_example_paper.ipynb - .. tip:: The latest versions of the Jupyter Notebooks can be found in the examples folder on GitHub! diff --git a/docs/index.rst b/docs/index.rst index f13fb56..cde8e29 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -39,219 +39,6 @@ allows users to estimate potential evapotranspiration and calibrate the models w References used in the package. - -Currently, 18 methods are implemented for calculating daily PET ------------------------------ - -.. list-table:: - :widths: 20 20 5 5 5 5 5 5 15 - :header-rows: 1 - - * - Method name - - pyet function - - T - - RH - - R - - u2 - - Lat. - - El. - - Benchmarked? - * - Penman - - penman - - ✓ `a`_ - - ✓ `b,c`_ - - ✓ `d`_ - - ✓ - - ✓ `d`_ - - ✓ `e`_ - - ✓ - * - Penman-Monteith - - pm - - ✓ `a`_ - - ✓ `b,c`_ - - ✓ `d`_ - - ✓ - - ✓ `d`_ - - ✓ `e`_ - - ✓ - * - ASCE-PM - - pm_asce - - ✓ `a`_ - - ✓ `b,c`_ - - ✓ `d`_ - - ✓ - - ✓ `d`_ - - ✓ `e`_ - - ✓ - * - FAO-56 - - pm_fao56 - - ✓ `a`_ - - ✓ `b,c`_ - - ✓ `d`_ - - ✓ - - ✓ `d`_ - - ✓ `e`_ - - ✓ - * - Priestley-Taylor - - priestley_taylor - - ✓ - - ✓ `h`_ - - ✓ `h`_ - - - - - ✓ `h`_ - - ✓ `e`_ - - ✓ - * - Kimberly-Penman - - kimberly_penman - - ✓ `a`_ - - ✓ `b,c`_ - - ✓ `d`_ - - ✓ - - ✓ `d`_ - - ✓ `e`_ - - - - * - Thom-Oliver - - thom_oliver - - ✓ `a`_ - - ✓ `b,c`_ - - ✓ `d`_ - - ✓ - - ✓ `d`_ - - ✓ `e`_ - - - - * - Blaney-Criddle - - blaney_criddle - - ✓ - - - `i`_ - - - `i`_ - - - `i`_ - - ✓ - - - - - ✓ - * - Hamon - - hamon - - ✓ - - - - - - - - - - - ✓ - - - - - ✓ - * - Romanenko - - romanenko - - ✓ - - ✓ - - - - - - - - - - - - - - ✓ - * - Linacre - - linacre - - ✓ `j`_ - - - - - - - - - - - - - - ✓ - - ✓ - * - Haude - - haude - - ✓ - - ✓ `k`_ - - - - - - - - - - - - - - ✓ - * - Turc - - turc - - ✓ - - ✓ - - ✓ - - - - - - - - - - - ✓ - * - Jensen-Haise - - jensen_haise - - ✓ - - - - - ✓ `l`_ - - - - - ✓ `l`_ - - - - - ✓ - * - McGuinness-Bordne - - mcguinness_bordne - - ✓ - - - - - - - - - - - ✓ - - - - - ✓ - * - Hargreaves - - hargreaves - - ✓ `m`_ - - - - - - - - - - - ✓ - - - - - ✓ - * - FAO-24 radiation - - fao_24 - - ✓ - - ✓ - - ✓ - - ✓ - - - - - ✓ `e`_ - - - - * - Abtew - - abtew - - ✓ - - - - - ✓ - - - - - - - - - - - ✓ - * - Makkink - - makkink - - ✓ - - - - - ✓ - - - - - - - - ✓ `e`_ - - ✓ - * - Oudin - - oudin - - ✓ - - - - - - - - - - - ✓ - - - - - - - -.. rubric:: Footnotes - -.. _`a`: T_max and T_min can also be provided. -.. _`b`: RH_max and RH_min can also be provided. -.. _`c`: If actual vapor pressure is provided, RH is not needed. -.. _`d`: Input for radiation can be (1) Net radiation, (2) solar radiation, or (3) sunshine hours. If (1), then latitude is not needed. If (1, 3) then latitude and elevation are needed. -.. _`e`: One must provide either the atmospheric pressure or elevation. -.. _`h`: If net radiation is provided, RH and Lat are not needed. -.. _`i`: If method==2, u2, RH_min, and sunshine hours are required. -.. _`j`: Additional input of Tmax and Tmin, or Tdew. -.. _`k`: Input can be RH or actual vapor pressure. -.. _`l`: If method==1, latitude is needed instead of Rs. -.. _`m`: Tmax and Tmin also needed. - - Using *pyet*? Show your support by citing us! ----------------------------- From 546e70eb296509ca2f8b9cb6c7878c27a9c37760 Mon Sep 17 00:00:00 2001 From: MatevzVremec Date: Fri, 15 Mar 2024 10:11:49 +0100 Subject: [PATCH 18/25] Update conf.py --- docs/conf.py | 22 ++++++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) diff --git a/docs/conf.py b/docs/conf.py index 4e2dd5b..5fea541 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -64,6 +64,8 @@ "sphinx.ext.autosectionlabel", "sphinxcontrib.bibtex", "myst_nb", + "numpydoc", + "sphinx_design", ] # Create custom bracket style with round brackets @@ -118,15 +120,27 @@ class MyReferenceStyle(AuthorYearReferenceStyle): # a list of builtin themes. html_theme = "pydata_sphinx_theme" -html_theme_options = { - "github_url": "https://github.com/phydrus/pyet", - "use_edit_page_button": False, -} # Add any paths that contain custom static files (such as style sheets) here, # relative to this directory. They are copied after the builtin static files, # so a file named "default.css" will overwrite the builtin "default.css". html_static_path = ["_static"] html_logo = "_static/logo.png" +html_use_smartypants = True +html_show_sourcelink = True + +html_theme_options = { + "github_url": "https://github.com/pyet-org/pyet", + "use_edit_page_button": True, + "header_links_before_dropdown": 6, + "icon_links": [ + { + "name": "GitHub", # Label for this link + "url": "https://github.com/pyet-org/pyet", # required + "icon": "fab fa-github-square", + "type": "fontawesome", # Default is fontawesome + } + ], +} autosummary_generate = True numpydoc_show_class_members = False From 2a15966b477116cc705469d2e5dc28a314605dd2 Mon Sep 17 00:00:00 2001 From: MatevzVremec Date: Fri, 15 Mar 2024 10:16:20 +0100 Subject: [PATCH 19/25] Update docs --- docs/conf.py | 5 +++++ pyproject.toml | 2 ++ 2 files changed, 7 insertions(+) diff --git a/docs/conf.py b/docs/conf.py index 5fea541..3b2cc6d 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -162,3 +162,8 @@ class MyReferenceStyle(AuthorYearReferenceStyle): myst_enable_extensions = [ "dollarmath", ] + +# -- Numpydoc settings ---------------------------------------------------------------- + +numpydoc_class_members_toctree = True +numpydoc_show_class_members = False diff --git a/pyproject.toml b/pyproject.toml index 479946b..baa29cf 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -61,6 +61,8 @@ rtd = [ "sphinxcontrib-bibtex", "matplotlib", "myst-nb", + "numpydoc", + "sphinx-design", "seaborn", "netcdf4", "scikit-learn", From 5d4dc194712d32136048e1ca5af5682282f2f30f Mon Sep 17 00:00:00 2001 From: MatevzVremec Date: Fri, 15 Mar 2024 10:37:57 +0100 Subject: [PATCH 20/25] Updated docs --- docs/conf.py | 2 ++ docs/index.rst | 62 ++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 64 insertions(+) diff --git a/docs/conf.py b/docs/conf.py index 3b2cc6d..5280168 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -66,6 +66,8 @@ "myst_nb", "numpydoc", "sphinx_design", + "recommonmark", + "myst_parser", ] # Create custom bracket style with round brackets diff --git a/docs/index.rst b/docs/index.rst index cde8e29..32256fa 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -39,6 +39,68 @@ allows users to estimate potential evapotranspiration and calibrate the models w References used in the package. +Currently, 18 methods are implemented for calculating daily PET +----------------------------- + ++---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ +| Method name | pyet function | T | RH | R | u2 | Lat.| El. | Benchmarked? | ++=====================+=====================+=====+=====+=====+=====+=====+=====+===============+ +| Penman | penman | ✓ 1 | ✓ 2 | ✓ 3 | ✓ | ✓ 3 | ✓ 4 | ✓ | ++---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ +| Penman-Monteith | pm | ✓ 1 | ✓ 2 | ✓ 3 | ✓ | ✓ 3 | ✓ 4 | ✓ | ++---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ +| ASCE-PM | pm_asce | ✓ 1 | ✓ 2 | ✓ 3 | ✓ | ✓ 3 | ✓ 4 | ✓ | ++---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ +| FAO-56 | pm_fao56 | ✓ 1 | ✓ 2 | ✓ 3 | ✓ | ✓ 3 | ✓ 4 | ✓ | ++---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ +| Priestley-Taylor | priestley_taylor | ✓ | ✓ 5 | ✓ 5 | - | ✓ 5 | ✓ 4 | ✓ | ++---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ +| Kimberly-Penman | kimberly_penman | ✓ 1 | ✓ 2 | ✓ 3 | ✓ | ✓ 3 | ✓ 4 | - | ++---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ +| Thom-Oliver | thom_oliver | ✓ 1 | ✓ 2 | ✓ 3 | ✓ | ✓ 3 | ✓ 4 | - | ++---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ +| Blaney-Criddle | blaney_criddle | ✓ | - 6 | - 6 | - 6 | ✓ | - | ✓ | ++---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ +| Hamon | hamon | ✓ | - | - | - | ✓ | - | ✓ | ++---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ +| Romanenko | romanenko | ✓ | ✓ | - | - | - | - | ✓ | ++---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ +| Linacre | linacre | ✓ 7 | - | - | - | - | ✓ | ✓ | ++---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ +| Haude | haude | ✓ | ✓ 8 | - | - | - | - | ✓ | ++---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ +| Turc | turc | ✓ | ✓ | ✓ | - | - | - | ✓ | ++---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ +| Jensen-Haise | jensen_haise | ✓ | - | ✓ 9 | - | ✓ 9 | - | ✓ | ++---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ +| McGuinness-Bordne | mcguinness_bordne | ✓ | - | - | - | ✓ | - | ✓ | ++---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ +| Hargreaves | hargreaves | ✓ 10| - | - | - | ✓ | - | ✓ | ++---------------------+---------------------+-----+-----+-----+-----+-----+----- ++---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ +| FAO-24 radiation | fao_24 | ✓ | ✓ | ✓ | ✓ | - | ✓ 4 | - | ++---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ +| Abtew | abtew | ✓ | - | ✓ | - | - | - | ✓ | ++---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ +| Makkink | makkink | ✓ | - | ✓ | - | - | ✓ 4 | ✓ | ++---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ +| Oudin | oudin | ✓ | - | - | - | ✓ | - | - | ++---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ + +.. rubric:: Footnotes + +.. [1] T_max and T_min can also be provided. +.. [2] RH_max and RH_min can also be provided. If actual vapor pressure is provided, RH is not needed. +.. [3] Input for radiation can be (1) Net radiation, (2) solar radiation, or (3) sunshine hours. If (1), then latitude is not needed. If (1, 3) then latitude and elevation are needed. +.. [4] One must provide either the atmospheric pressure or elevation. +.. [5] If net radiation is provided, RH and Lat are not needed. +.. [6] If method==2, u2, RH_min, and sunshine hours are required. +.. [7] Additional input of Tmax and Tmin, or Tdew. +.. [8] Input can be RH or actual vapor pressure. +.. [9] If method==1, latitude is needed instead of Rs. +.. [10] Tmax and Tmin also needed. + + Using *pyet*? Show your support by citing us! ----------------------------- From 679f89a21803d74f208c5003404da750200b480c Mon Sep 17 00:00:00 2001 From: MatevzVremec Date: Fri, 15 Mar 2024 10:54:25 +0100 Subject: [PATCH 21/25] Update docs --- docs/conf.py | 1 - pyproject.toml | 1 + 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/conf.py b/docs/conf.py index 5280168..727cb8a 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -67,7 +67,6 @@ "numpydoc", "sphinx_design", "recommonmark", - "myst_parser", ] # Create custom bracket style with round brackets diff --git a/pyproject.toml b/pyproject.toml index baa29cf..46f28a0 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -61,6 +61,7 @@ rtd = [ "sphinxcontrib-bibtex", "matplotlib", "myst-nb", + "recommonmark", "numpydoc", "sphinx-design", "seaborn", From f984e2bcfbd0752c4f9d311dc13b0ab468681558 Mon Sep 17 00:00:00 2001 From: MatevzVremec Date: Fri, 15 Mar 2024 11:00:34 +0100 Subject: [PATCH 22/25] Update doc --- docs/conf.py | 1 - pyproject.toml | 1 - 2 files changed, 2 deletions(-) diff --git a/docs/conf.py b/docs/conf.py index 727cb8a..3b2cc6d 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -66,7 +66,6 @@ "myst_nb", "numpydoc", "sphinx_design", - "recommonmark", ] # Create custom bracket style with round brackets diff --git a/pyproject.toml b/pyproject.toml index 46f28a0..baa29cf 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -61,7 +61,6 @@ rtd = [ "sphinxcontrib-bibtex", "matplotlib", "myst-nb", - "recommonmark", "numpydoc", "sphinx-design", "seaborn", From 54f0d203943528646c91acf99f8d34245308edf6 Mon Sep 17 00:00:00 2001 From: MatevzVremec Date: Fri, 15 Mar 2024 11:33:55 +0100 Subject: [PATCH 23/25] Update index.rst --- docs/index.rst | 41 ++++++++++++++++++++--------------------- 1 file changed, 20 insertions(+), 21 deletions(-) diff --git a/docs/index.rst b/docs/index.rst index 32256fa..0d79080 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -45,46 +45,45 @@ Currently, 18 methods are implemented for calculating daily PET +---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ | Method name | pyet function | T | RH | R | u2 | Lat.| El. | Benchmarked? | +=====================+=====================+=====+=====+=====+=====+=====+=====+===============+ -| Penman | penman | ✓ 1 | ✓ 2 | ✓ 3 | ✓ | ✓ 3 | ✓ 4 | ✓ | +| Penman | penman | ✓ 1 | ✓ 2 | ✓ 3 | ✓ | ✓ 3 | ✓ 4 | ✓ | +---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ -| Penman-Monteith | pm | ✓ 1 | ✓ 2 | ✓ 3 | ✓ | ✓ 3 | ✓ 4 | ✓ | +| Penman-Monteith | pm | ✓ 1 | ✓ 2 | ✓ 3 | ✓ | ✓ 3 | ✓ 4 | ✓ | +---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ -| ASCE-PM | pm_asce | ✓ 1 | ✓ 2 | ✓ 3 | ✓ | ✓ 3 | ✓ 4 | ✓ | +| ASCE-PM | pm_asce | ✓ 1 | ✓ 2 | ✓ 3 | ✓ | ✓ 3 | ✓ 4 | ✓ | +---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ -| FAO-56 | pm_fao56 | ✓ 1 | ✓ 2 | ✓ 3 | ✓ | ✓ 3 | ✓ 4 | ✓ | +| FAO-56 | pm_fao56 | ✓ 1 | ✓ 2 | ✓ 3 | ✓ | ✓ 3 | ✓ 4 | ✓ | +---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ -| Priestley-Taylor | priestley_taylor | ✓ | ✓ 5 | ✓ 5 | - | ✓ 5 | ✓ 4 | ✓ | +| Priestley-Taylor | priestley_taylor | ✓ | ✓ 5 | ✓ 5 | - | ✓ 5 | ✓ 4 | ✓ | +---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ -| Kimberly-Penman | kimberly_penman | ✓ 1 | ✓ 2 | ✓ 3 | ✓ | ✓ 3 | ✓ 4 | - | +| Kimberly-Penman | kimberly_penman | ✓ 1 | ✓ 2 | ✓ 3 | ✓ | ✓ 3 | ✓ 4 | - | +---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ -| Thom-Oliver | thom_oliver | ✓ 1 | ✓ 2 | ✓ 3 | ✓ | ✓ 3 | ✓ 4 | - | +| Thom-Oliver | thom_oliver | ✓ 1 | ✓ 2 | ✓ 3 | ✓ | ✓ 3 | ✓ 4 | - | +---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ -| Blaney-Criddle | blaney_criddle | ✓ | - 6 | - 6 | - 6 | ✓ | - | ✓ | +| Blaney-Criddle | blaney_criddle | ✓ | - 6 | - 6 | - 6 | ✓ | - | ✓ | +---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ -| Hamon | hamon | ✓ | - | - | - | ✓ | - | ✓ | +| Hamon | hamon | ✓ | - | - | - | ✓ | - | ✓ | +---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ -| Romanenko | romanenko | ✓ | ✓ | - | - | - | - | ✓ | +| Romanenko | romanenko | ✓ | ✓ | - | - | - | - | ✓ | +---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ -| Linacre | linacre | ✓ 7 | - | - | - | - | ✓ | ✓ | +| Linacre | linacre | ✓ 7 | - | - | - | - | ✓ | ✓ | +---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ -| Haude | haude | ✓ | ✓ 8 | - | - | - | - | ✓ | +| Haude | haude | ✓ | ✓ 8 | - | - | - | - | ✓ | +---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ -| Turc | turc | ✓ | ✓ | ✓ | - | - | - | ✓ | +| Turc | turc | ✓ | ✓ | ✓ | - | - | - | ✓ | +---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ -| Jensen-Haise | jensen_haise | ✓ | - | ✓ 9 | - | ✓ 9 | - | ✓ | +| Jensen-Haise | jensen_haise | ✓ | - | ✓ 9 | - | ✓ 9 | - | ✓ | +---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ -| McGuinness-Bordne | mcguinness_bordne | ✓ | - | - | - | ✓ | - | ✓ | +| McGuinness-Bordne | mcguinness_bordne | ✓ | - | - | - | ✓ | - | ✓ | +---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ -| Hargreaves | hargreaves | ✓ 10| - | - | - | ✓ | - | ✓ | -+---------------------+---------------------+-----+-----+-----+-----+-----+----- +| Hargreaves | hargreaves | ✓ 10| - | - | - | ✓ | - | ✓ | +---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ -| FAO-24 radiation | fao_24 | ✓ | ✓ | ✓ | ✓ | - | ✓ 4 | - | +| FAO-24 radiation | fao_24 | ✓ | ✓ | ✓ | ✓ | - | ✓ 4 | - | +---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ -| Abtew | abtew | ✓ | - | ✓ | - | - | - | ✓ | +| Abtew | abtew | ✓ | - | ✓ | - | - | - | ✓ | +---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ -| Makkink | makkink | ✓ | - | ✓ | - | - | ✓ 4 | ✓ | +| Makkink | makkink | ✓ | - | ✓ | - | - | ✓ 4 | ✓ | +---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ -| Oudin | oudin | ✓ | - | - | - | ✓ | - | - | +| Oudin | oudin | ✓ | - | - | - | ✓ | - | - | +---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ .. rubric:: Footnotes From 7407436187647588f9f7b9df0a8c4a8bf80f63d5 Mon Sep 17 00:00:00 2001 From: MatevzVremec Date: Fri, 15 Mar 2024 12:41:01 +0100 Subject: [PATCH 24/25] Update docs --- docs/examples/index.rst | 40 +++++-- docs/index.rst | 238 ++++++++++++++++++++++++++++++++-------- 2 files changed, 224 insertions(+), 54 deletions(-) diff --git a/docs/examples/index.rst b/docs/examples/index.rst index 88cfd06..da106d4 100644 --- a/docs/examples/index.rst +++ b/docs/examples/index.rst @@ -8,16 +8,36 @@ evaporation. :numbered: :glob: - 01_example_zamg - 02_example_zamg_netcdf - 03_example_knmi - 04_example_coagmet - 05_example_calibration - 06_worked_examples_McMahon_etal_2013 - 07_example_climate_change - 08_crop_coefficient - 09_CMIP6_data - 10_example_paper +`Estimating PET using pandas.Series`_ + +`Estimating PET using xarray.DataArray`_ + +`Benchmarking Makkink`_ + +`Benchmarking FAO56`_ + +`Calibration`_ + +`Examples from McMahon et al., 2013`_ + +`PET under climate change`_ + +`Crop coefficient`_ + +`Estimating PET using CMIP data`_ + +`Notebook supporting PyEt GMD manuscript`_ + +.. _Estimating PET using pandas.Series: 01_example_zamg.ipynb +.. _Estimating PET using xarray.DataArray: 02_example_zamg_netcdf.ipynb +.. _Benchmarking Makkink: 03_example_knmi.ipynb +.. _Benchmarking FAO56: 04_example_coagmet.ipynb +.. _Calibration: 05_example_calibration.ipynb +.. _Examples from McMahon et al., 2013: 06_worked_examples_McMahon_etal_2013.ipynb +.. _PET under climate change: 07_example_climate_change.ipynb +.. _Crop coefficient: 08_crop_coefficient.ipynb +.. _Estimating PET using CMIP data: 09_CMIP6_data.ipynb +.. _Notebook supporting PyEt GMD manuscript: 10_example_paper.ipynb .. tip:: The latest versions of the Jupyter Notebooks can be found in the diff --git a/docs/index.rst b/docs/index.rst index 0d79080..4defe8e 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -8,7 +8,7 @@ allows users to estimate potential evapotranspiration and calibrate the models w .. grid:: .. grid-item-card:: Getting started - :link: userguide/index + :link: user_guide/index :link-type: doc User guide on the basic concepts of Pastas. @@ -42,49 +42,199 @@ allows users to estimate potential evapotranspiration and calibrate the models w Currently, 18 methods are implemented for calculating daily PET ----------------------------- -+---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ -| Method name | pyet function | T | RH | R | u2 | Lat.| El. | Benchmarked? | -+=====================+=====================+=====+=====+=====+=====+=====+=====+===============+ -| Penman | penman | ✓ 1 | ✓ 2 | ✓ 3 | ✓ | ✓ 3 | ✓ 4 | ✓ | -+---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ -| Penman-Monteith | pm | ✓ 1 | ✓ 2 | ✓ 3 | ✓ | ✓ 3 | ✓ 4 | ✓ | -+---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ -| ASCE-PM | pm_asce | ✓ 1 | ✓ 2 | ✓ 3 | ✓ | ✓ 3 | ✓ 4 | ✓ | -+---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ -| FAO-56 | pm_fao56 | ✓ 1 | ✓ 2 | ✓ 3 | ✓ | ✓ 3 | ✓ 4 | ✓ | -+---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ -| Priestley-Taylor | priestley_taylor | ✓ | ✓ 5 | ✓ 5 | - | ✓ 5 | ✓ 4 | ✓ | -+---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ -| Kimberly-Penman | kimberly_penman | ✓ 1 | ✓ 2 | ✓ 3 | ✓ | ✓ 3 | ✓ 4 | - | -+---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ -| Thom-Oliver | thom_oliver | ✓ 1 | ✓ 2 | ✓ 3 | ✓ | ✓ 3 | ✓ 4 | - | -+---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ -| Blaney-Criddle | blaney_criddle | ✓ | - 6 | - 6 | - 6 | ✓ | - | ✓ | -+---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ -| Hamon | hamon | ✓ | - | - | - | ✓ | - | ✓ | -+---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ -| Romanenko | romanenko | ✓ | ✓ | - | - | - | - | ✓ | -+---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ -| Linacre | linacre | ✓ 7 | - | - | - | - | ✓ | ✓ | -+---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ -| Haude | haude | ✓ | ✓ 8 | - | - | - | - | ✓ | -+---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ -| Turc | turc | ✓ | ✓ | ✓ | - | - | - | ✓ | -+---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ -| Jensen-Haise | jensen_haise | ✓ | - | ✓ 9 | - | ✓ 9 | - | ✓ | -+---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ -| McGuinness-Bordne | mcguinness_bordne | ✓ | - | - | - | ✓ | - | ✓ | -+---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ -| Hargreaves | hargreaves | ✓ 10| - | - | - | ✓ | - | ✓ | -+---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ -| FAO-24 radiation | fao_24 | ✓ | ✓ | ✓ | ✓ | - | ✓ 4 | - | -+---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ -| Abtew | abtew | ✓ | - | ✓ | - | - | - | ✓ | -+---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ -| Makkink | makkink | ✓ | - | ✓ | - | - | ✓ 4 | ✓ | -+---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ -| Oudin | oudin | ✓ | - | - | - | ✓ | - | - | -+---------------------+---------------------+-----+-----+-----+-----+-----+-----+---------------+ +.. list-table:: PET Calculation Methods + :widths: 15 15 5 5 5 5 5 5 10 + :header-rows: 1 + + * - Method name + - pyet function + - T + - RH + - R + - u2 + - Lat. + - El. + - Benchmarked? + * - Penman + - penman + - ✓ [1] + - ✓ [2] + - ✓ [3] + - ✓ + - ✓ [3] + - ✓ [4] + - ✓ + * - Penman-Monteith + - pm + - ✓ [1] + - ✓ [2] + - ✓ [3] + - ✓ + - ✓ [3] + - ✓ [4] + - ✓ + * - ASCE-PM + - pm_asce + - ✓ [1] + - ✓ [2] + - ✓ [3] + - ✓ + - ✓ [3] + - ✓ [4] + - ✓ + * - FAO-56 + - pm_fao56 + - ✓ [1] + - ✓ [2] + - ✓ [3] + - ✓ + - ✓ [3] + - ✓ [4] + - ✓ + * - Priestley-Taylor + - priestley_taylor + - ✓ + - ✓ [5] + - ✓ [5] + - - + - ✓ [5] + - ✓ [4] + - ✓ + * - Kimberly-Penman + - kimberly_penman + - ✓ [1] + - ✓ [2] + - ✓ [3] + - ✓ + - ✓ [3] + - ✓ [4] + - - + * - Thom-Oliver + - thom_oliver + - ✓ [1] + - ✓ [2] + - ✓ [3] + - ✓ + - ✓ [3] + - ✓ [4] + - - + * - Blaney-Criddle + - blaney_criddle + - ✓ + - - [6] + - - [6] + - - [6] + - ✓ + - - + - ✓ + * - Hamon + - hamon + - ✓ + - - + - - + - - + - ✓ + - - + - ✓ + * - Romanenko + - romanenko + - ✓ + - ✓ + - - + - - + - - + - - + - ✓ + * - Linacre + - linacre + - ✓ [7] + - - + - - + - - + - - + - ✓ + - ✓ + * - Haude + - haude + - ✓ + - ✓ [8] + - - + - - + - - + - - + - ✓ + * - Turc + - turc + - ✓ + - ✓ + - ✓ + - - + - - + - - + - ✓ + * - Jensen-Haise + - jensen_haise + - ✓ + - - + - ✓ [9] + - - + - ✓ [9] + - - + - ✓ + * - McGuinness-Bordne + - mcguinness_bordne + - ✓ + - - + - - + - - + - ✓ + - - + - ✓ + * - Hargreaves + - hargreaves + - ✓ [10] + - - + - - + - - + - ✓ + - - + - ✓ + * - FAO-24 radiation + - fao_24 + - ✓ + - ✓ + - ✓ + - ✓ + - - + - ✓ [4] + - - + * - Abtew + - abtew + - ✓ + - - + - ✓ + - - + - - + - - + - ✓ + * - Makkink + - makkink + - ✓ + - - + - ✓ + - - + - - + - ✓ [4] + - ✓ + * - Oudin + - oudin + - ✓ + - - + - - + - - + - ✓ + - - + - - .. rubric:: Footnotes From a79066b792ac7bd2b4917b15d77036e5b266fca2 Mon Sep 17 00:00:00 2001 From: MatevzVremec Date: Fri, 15 Mar 2024 12:49:54 +0100 Subject: [PATCH 25/25] Update index.rst --- docs/examples/index.rst | 54 ++++++++++++++++++++++++----------------- 1 file changed, 32 insertions(+), 22 deletions(-) diff --git a/docs/examples/index.rst b/docs/examples/index.rst index da106d4..25cb7ad 100644 --- a/docs/examples/index.rst +++ b/docs/examples/index.rst @@ -4,40 +4,50 @@ Below you can find examples of how *pyet* models are used for estimating (potent evaporation. .. toctree:: + :hidden: :maxdepth: 1 - :numbered: - :glob: -`Estimating PET using pandas.Series`_ + 01_example_zamg + 02_example_zamg_netcdf + 03_example_knmi + 04_example_coagmet + 05_example_calibration + 06_worked_examples_McMahon_etal_2013 + 07_example_climate_change + 08_crop_coefficient + 09_CMIP6_data + 10_example_paper -`Estimating PET using xarray.DataArray`_ +`Estimating PET using pandas.Series`_ -`Benchmarking Makkink`_ +`Estimating PET using xarray.DataArray`_ -`Benchmarking FAO56`_ +`Benchmarking Makkink`_ -`Calibration`_ +`Benchmarking FAO56`_ -`Examples from McMahon et al., 2013`_ +`Calibration`_ -`PET under climate change`_ +`Examples from McMahon et al., 2013`_ -`Crop coefficient`_ +`PET under climate change`_ -`Estimating PET using CMIP data`_ +`Crop coefficient`_ -`Notebook supporting PyEt GMD manuscript`_ +`Estimating PET using CMIP data`_ -.. _Estimating PET using pandas.Series: 01_example_zamg.ipynb -.. _Estimating PET using xarray.DataArray: 02_example_zamg_netcdf.ipynb -.. _Benchmarking Makkink: 03_example_knmi.ipynb -.. _Benchmarking FAO56: 04_example_coagmet.ipynb -.. _Calibration: 05_example_calibration.ipynb -.. _Examples from McMahon et al., 2013: 06_worked_examples_McMahon_etal_2013.ipynb -.. _PET under climate change: 07_example_climate_change.ipynb -.. _Crop coefficient: 08_crop_coefficient.ipynb -.. _Estimating PET using CMIP data: 09_CMIP6_data.ipynb -.. _Notebook supporting PyEt GMD manuscript: 10_example_paper.ipynb +`Notebook supporting PyEt GMD manuscript`_ + +.. _Estimating PET using pandas.Series: 01_example_zamg.html +.. _Estimating PET using xarray.DataArray: 02_example_zamg_netcdf.html +.. _Benchmarking Makkink: 03_example_knmi.html +.. _Benchmarking FAO56: 04_example_coagmet.html +.. _Calibration: 05_example_calibration.html +.. _Examples from McMahon et al., 2013: 06_worked_examples_McMahon_etal_2013.html +.. _PET under climate change: 07_example_climate_change.html +.. _Crop coefficient: 08_crop_coefficient.html +.. _Estimating PET using CMIP data: 09_CMIP6_data.html +.. _Notebook supporting PyEt GMD manuscript: 10_example_paper.html .. tip:: The latest versions of the Jupyter Notebooks can be found in the