Skip to content

Commit 0ee07ee

Browse files
committed
add notebooks to the docs
1 parent c3155e4 commit 0ee07ee

8 files changed

Lines changed: 7370 additions & 14 deletions

File tree

docs/background/index.rst

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
Background
2+
==========
3+
4+
These articles explain the concepts, theory, and design decisions behind scikit-downscale and statistical downscaling methods.
5+
6+
.. note::
7+
Background articles are explanatory and conceptual. They provide context and deeper understanding but are not task-oriented.
8+
9+
Coming Soon
10+
-----------
11+
12+
We are actively developing background articles. Future topics will include:
13+
14+
Statistical Downscaling Concepts
15+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
16+
17+
* What is statistical downscaling?
18+
* Bias correction vs. spatial disaggregation
19+
* When to use statistical vs. dynamical downscaling
20+
* Understanding quantile mapping
21+
* Stationarity assumptions in downscaling
22+
23+
Method Comparisons
24+
~~~~~~~~~~~~~~~~~~
25+
26+
* Comparing downscaling methods: strengths and weaknesses
27+
* Performance metrics for evaluating downscaling
28+
* Handling extremes in downscaling
29+
* Temporal and spatial consistency
30+
31+
Design and Architecture
32+
~~~~~~~~~~~~~~~~~~~~~~~
33+
34+
* Why scikit-learn's API?
35+
* Pointwise vs. spatial downscaling approaches
36+
* Integration with Xarray and Dask
37+
* Extensibility and custom methods
38+
39+
Related Documentation
40+
---------------------
41+
42+
While we develop these articles, you might find these resources helpful:
43+
44+
* :doc:`../tutorials/index` - Hands-on learning with examples
45+
* :doc:`../roadmap` - Project development roadmap
46+
* `Scientific References <https://scikit-downscale.readthedocs.io>`_ - Key papers and methods
47+
48+
External Resources
49+
------------------
50+
51+
For broader context on statistical downscaling:
52+
53+
* `Gutmann et al. (2014) <https://journals.ametsoc.org/view/journals/clim/27/23/jcli-d-13-00503.1.xml>`_ - Intercomparison of statistical downscaling methods
54+
* `Maraun et al. (2010) <https://journals.ametsoc.org/view/journals/clim/23/21/2010jcli3557.1.xml>`_ - Precipitation downscaling under climate change
55+
* `IPCC AR6 WG1 Chapter 10 <https://www.ipcc.ch/report/ar6/wg1/>`_ - Linking global to regional climate change

docs/conf.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,11 @@
3131
myst_enable_extensions = ['amsmath', 'colon_fence', 'deflist', 'html_image']
3232
myst_url_schemes = ['http', 'https', 'mailto']
3333

34+
# Jupyter notebook config
35+
nb_execution_mode = 'auto' # Don't execute notebooks during build
36+
nb_execution_allow_errors = False
37+
nb_execution_timeout = 300
38+
3439
# sphinx-copybutton configurations
3540
copybutton_prompt_text = r'>>> |\.\.\. |\$ |In \[\d*\]: | {2,5}\.\.\.: | {5,8}: '
3641
copybutton_prompt_is_regexp = True

docs/how-to/index.rst

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
How-to Guides
2+
=============
3+
4+
These guides provide step-by-step instructions for accomplishing specific tasks with scikit-downscale.
5+
6+
.. note::
7+
How-to guides are task-oriented and focus on solving specific problems. They assume you have basic familiarity with scikit-downscale.
8+
9+
Coming Soon
10+
-----------
11+
12+
We are actively developing how-to guides. Future topics will include:
13+
14+
* Working with spatial data using PointWiseDownscaler
15+
* Handling missing data in climate datasets
16+
* Creating custom downscaling methods
17+
* Parallel processing with Dask
18+
* Cross-validation strategies for downscaling
19+
* Ensemble downscaling approaches
20+
* Downscaling multiple variables simultaneously
21+
22+
Have a specific task in mind? Let us know by opening an issue on our `GitHub repository <https://github.com/jhamman/scikit-downscale/issues>`_.
23+
24+
Related Documentation
25+
---------------------
26+
27+
While we develop these guides, you might find these resources helpful:
28+
29+
* :doc:`../tutorials/index` - Learn downscaling fundamentals
30+
* :doc:`../api` - Detailed API reference

docs/index.rst

Lines changed: 61 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,36 +1,83 @@
1-
.. scikit-downscale documentation master file, created by
2-
sphinx-quickstart on Wed Oct 9 13:59:33 2019.
3-
You can adapt this file completely to your liking, but it should at least
4-
contain the root `toctree` directive.
5-
61
Scikit-downscale: toolkit for statistical downscaling
72
=====================================================
83

94
Scikit-downscale is a toolkit for statistical downscaling using Scikit-Learn_.
105
It is meant to support the development of new and existing downscaling
116
methods in a common framework. It implements Scikit-learn's `fit`/`predict` API
12-
facilitating the development of a wide range of statitical downscaling models.
7+
facilitating the development of a wide range of statistical downscaling models.
138
Utilities and a high-level API built on Xarray_ and Dask_ support both
149
point-wise and global downscaling applications.
1510

1611
.. _Xarray: http://xarray.pydata.org
1712
.. _Scikit-Learn: https://scikit-learn.org
1813
.. _Dask: https://dask.org
1914

15+
Quick Start
16+
-----------
17+
18+
Install scikit-downscale:
19+
20+
.. code-block:: bash
21+
22+
pip install scikit-downscale
23+
24+
Then try your first downscaling example:
25+
26+
.. code-block:: python
27+
28+
from skdownscale.pointwise_models import QuantileMapper
29+
30+
# Initialize the model
31+
qm = QuantileMapper()
32+
33+
# Fit on training data
34+
qm.fit(model_data, observations)
35+
36+
# Generate downscaled predictions
37+
downscaled = qm.predict(model_data)
38+
39+
Ready to learn more? Check out our :doc:`tutorials/getting-started`!
40+
41+
Documentation Structure
42+
-----------------------
43+
44+
This documentation is organized following the `Diátaxis framework <https://diataxis.fr/>`_:
45+
46+
📚 **Tutorials** - *Learning-oriented*
47+
Step-by-step lessons to learn scikit-downscale. Start here if you're new!
48+
49+
🔧 **How-to Guides** - *Problem-oriented*
50+
Practical guides for accomplishing specific tasks.
51+
52+
📖 **Background** - *Understanding-oriented*
53+
Explanations of concepts, theory, and design decisions.
54+
55+
📋 **Reference** - *Information-oriented*
56+
Complete API documentation and technical specifications.
57+
58+
.. toctree::
59+
:maxdepth: 1
60+
:caption: Documentation
61+
62+
tutorials/index
63+
how-to/index
64+
background/index
65+
api
66+
67+
.. toctree::
68+
:maxdepth: 1
69+
:caption: Project Info
70+
71+
roadmap
72+
2073
Under Active Development
2174
~~~~~~~~~~~~~~~~~~~~~~~~
75+
2276
Scikit-downscale is under active development. We are looking for additional
2377
contributors to help fill out the list of downscaling methods supported here.
2478
We are also looking to find collaborators interested in using deep learning
2579
to build global downscaling tools. Get in touch with us on our
26-
`GitHub page <https://github.com/jhamman/scikit-downscale>`_.
27-
28-
.. toctree::
29-
:maxdepth: 2
30-
:caption: Contents:
31-
32-
roadmap
33-
api
80+
`GitHub page <https://github.com/pangeo-data/scikit-downscale>`_.
3481

3582
Indices and tables
3683
==================

0 commit comments

Comments
 (0)