diff --git a/.gitignore b/.gitignore index 1667960d27..72b65484d3 100644 --- a/.gitignore +++ b/.gitignore @@ -39,9 +39,9 @@ pvlib/spa_c_files/spa.h pvlib/spa_c_files/spa_tester.c # generated documentation -docs/sphinx/source/generated +docs/sphinx/source/reference/generated docs/sphinx/source/savefig -docs/sphinx/source/auto_examples +docs/sphinx/source/gallery # Installer logs pip-log.txt diff --git a/docs/sphinx/Makefile b/docs/sphinx/Makefile index 0c96b4ed23..6ce74bc014 100644 --- a/docs/sphinx/Makefile +++ b/docs/sphinx/Makefile @@ -48,8 +48,8 @@ help: clean: rm -rf $(BUILDDIR)/* - rm -rf source/generated - rm -rf source/auto_examples + rm -rf source/reference/generated + rm -rf source/gallery rm -rf source/savefig html: diff --git a/docs/sphinx/make.bat b/docs/sphinx/make.bat index d12b216553..555f7d31c0 100644 --- a/docs/sphinx/make.bat +++ b/docs/sphinx/make.bat @@ -17,8 +17,8 @@ if "%1" == "clean" ( REM override the default `make clean` behavior of sphinx-build; REM this lets us clean out the various build files in sphinx/source/ for /d %%i in (%BUILDDIR%\*) do rmdir /q /s %%i - rmdir /q /s %SOURCEDIR%\generated >nul 2>&1 - rmdir /q /s %SOURCEDIR%\auto_examples >nul 2>&1 + rmdir /q /s %SOURCEDIR%\reference\generated >nul 2>&1 + rmdir /q /s %SOURCEDIR%\gallery >nul 2>&1 rmdir /q /s %SOURCEDIR%\savefig >nul 2>&1 goto end ) diff --git a/docs/sphinx/source/_static/favicon-16x16.png b/docs/sphinx/source/_static/favicon-16x16.png new file mode 100644 index 0000000000..c6b8e9618a Binary files /dev/null and b/docs/sphinx/source/_static/favicon-16x16.png differ diff --git a/docs/sphinx/source/_static/favicon-32x32.png b/docs/sphinx/source/_static/favicon-32x32.png new file mode 100644 index 0000000000..ae109e9a70 Binary files /dev/null and b/docs/sphinx/source/_static/favicon-32x32.png differ diff --git a/docs/sphinx/source/_templates/breadcrumbs.html b/docs/sphinx/source/_templates/breadcrumbs.html deleted file mode 100644 index b2078c9119..0000000000 --- a/docs/sphinx/source/_templates/breadcrumbs.html +++ /dev/null @@ -1,26 +0,0 @@ -{# - -Modify the "Edit on Github" links to handle auto-generated pages in the -example gallery and the API reference listings. The GH links that sphinx -generates by default make the assumption that an HTML file comes from an RST -file with the same filepath, which isn't the case for autogenerated files. - -We need to generate the target URL differently based on the type -of page. We use the built-in `pagename` variable to determine what -kind of page this is. `pagename` is the path at the end of the -URL, without the extension. For instance, -https://pvlib-python.rtfd.org/en/stable/auto_examples/plot_singlediode.html -will have pagename = "auto_examples/plot_singlediode". - -Note: make_github_url is defined in conf.py -#} - -{% extends "!breadcrumbs.html" %} -{% block breadcrumbs_aside %} -
  • - {# Get the appropriate GH link based on this page's name: #} - {% set target_url = make_github_url(pagename) %} - {# Create the HTML element with our custom GH link: #} - View on Github -
  • -{% endblock %} diff --git a/docs/sphinx/source/_templates/edit-this-page.html b/docs/sphinx/source/_templates/edit-this-page.html new file mode 100644 index 0000000000..66a09f1e2c --- /dev/null +++ b/docs/sphinx/source/_templates/edit-this-page.html @@ -0,0 +1,19 @@ +{# + +Modify the "Edit on Github" links to handle auto-generated pages in the +example gallery and the API reference listings. The GH links that sphinx +generates by default make the assumption that an HTML file comes from an RST +file with the same filepath, which isn't the case for autogenerated files. The +logic to generate the correct URL is in conf.py, but we still have to modify +the template here to change the "Edit this page" text to "View on GitHub". + +#} + +{% if sourcename is defined and theme_use_edit_page_button==true and page_source_suffix %} +{% set src = sourcename.split('.') %} +
    + + {{ _("View on GitHub") }} + +
    +{% endif %} diff --git a/docs/sphinx/source/api.rst b/docs/sphinx/source/api.rst deleted file mode 100644 index 6d08e742b3..0000000000 --- a/docs/sphinx/source/api.rst +++ /dev/null @@ -1,715 +0,0 @@ -.. currentmodule:: pvlib - -############# -API reference -############# - - -Classes -======= - -pvlib-python provides a collection of classes for users that prefer -object-oriented programming. These classes can help users keep track of -data in a more organized way, and can help to simplify the modeling -process. The classes do not add any functionality beyond the procedural -code. Most of the object methods are simple wrappers around the -corresponding procedural code. For examples of using these classes, see -the :ref:`pvsystemdoc` and :ref:`modelchaindoc` pages. - -.. autosummary:: - :toctree: generated/ - - location.Location - pvsystem.PVSystem - pvsystem.Array - pvsystem.FixedMount - pvsystem.SingleAxisTrackerMount - tracking.SingleAxisTracker - modelchain.ModelChain - modelchain.ModelChainResult - -Solar Position -============== - -Functions and methods for calculating solar position. - -The :py:meth:`location.Location.get_solarposition` method and the -:py:func:`solarposition.get_solarposition` function with default -parameters are fast and accurate. We recommend using these functions -unless you know that you need a different function. - -.. autosummary:: - :toctree: generated/ - - location.Location.get_solarposition - solarposition.get_solarposition - solarposition.spa_python - solarposition.ephemeris - solarposition.pyephem - solarposition.spa_c - - -Additional functions for quantities closely related to solar position. - -.. autosummary:: - :toctree: generated/ - - solarposition.calc_time - solarposition.pyephem_earthsun_distance - solarposition.nrel_earthsun_distance - spa.calculate_deltat - - -Functions for calculating sunrise, sunset and transit times. - -.. autosummary:: - :toctree: generated/ - - location.Location.get_sun_rise_set_transit - solarposition.sun_rise_set_transit_ephem - solarposition.sun_rise_set_transit_spa - solarposition.sun_rise_set_transit_geometric - - -The spa module contains the implementation of the built-in NREL SPA -algorithm. - -.. autosummary:: - :toctree: generated/ - - spa - -Correlations and analytical expressions for low precision solar position -calculations. - -.. autosummary:: - :toctree: generated/ - - solarposition.solar_zenith_analytical - solarposition.solar_azimuth_analytical - solarposition.declination_spencer71 - solarposition.declination_cooper69 - solarposition.equation_of_time_spencer71 - solarposition.equation_of_time_pvcdrom - solarposition.hour_angle - - -Clear sky -========= - -.. autosummary:: - :toctree: generated/ - - location.Location.get_clearsky - clearsky.ineichen - clearsky.lookup_linke_turbidity - clearsky.simplified_solis - clearsky.haurwitz - clearsky.detect_clearsky - clearsky.bird - - -Airmass and atmospheric models -============================== - -.. autosummary:: - :toctree: generated/ - - location.Location.get_airmass - atmosphere.get_absolute_airmass - atmosphere.get_relative_airmass - atmosphere.pres2alt - atmosphere.alt2pres - atmosphere.gueymard94_pw - atmosphere.first_solar_spectral_correction - atmosphere.bird_hulstrom80_aod_bb - atmosphere.kasten96_lt - atmosphere.angstrom_aod_at_lambda - atmosphere.angstrom_alpha - - -Irradiance -========== - -Methods for irradiance calculations ------------------------------------ - -.. autosummary:: - :toctree: generated/ - - pvsystem.PVSystem.get_irradiance - pvsystem.PVSystem.get_aoi - pvsystem.PVSystem.get_iam - tracking.SingleAxisTracker.get_irradiance - -Decomposing and combining irradiance ------------------------------------- - -.. autosummary:: - :toctree: generated/ - - irradiance.get_extra_radiation - irradiance.aoi - irradiance.aoi_projection - irradiance.poa_horizontal_ratio - irradiance.beam_component - irradiance.poa_components - irradiance.get_ground_diffuse - irradiance.dni - -Transposition models --------------------- - -.. autosummary:: - :toctree: generated/ - - irradiance.get_total_irradiance - irradiance.get_sky_diffuse - irradiance.isotropic - irradiance.perez - irradiance.haydavies - irradiance.klucher - irradiance.reindl - irradiance.king - -.. _dniestmodels: - -DNI estimation models ---------------------- - -.. autosummary:: - :toctree: generated/ - - irradiance.disc - irradiance.dirint - irradiance.dirindex - irradiance.erbs - irradiance.campbell_norman - irradiance.gti_dirint - -Clearness index models ----------------------- - -.. autosummary:: - :toctree: generated/ - - irradiance.clearness_index - irradiance.clearness_index_zenith_independent - irradiance.clearsky_index - - -PV Modeling -=========== - -Classes -------- - -The :py:class:`~pvsystem.PVSystem` class provides many methods that -wrap the functions listed below. See its documentation for details. - -.. autosummary:: - :toctree: generated/ - - pvsystem.PVSystem - -Incident angle modifiers ------------------------- - -.. autosummary:: - :toctree: generated/ - - iam.physical - iam.ashrae - iam.martin_ruiz - iam.martin_ruiz_diffuse - iam.sapm - iam.interp - iam.marion_diffuse - iam.marion_integrate - -PV temperature models ---------------------- - -.. autosummary:: - :toctree: generated/ - - temperature.sapm_cell - temperature.sapm_module - temperature.sapm_cell_from_module - temperature.pvsyst_cell - temperature.faiman - temperature.fuentes - temperature.ross - temperature.noct_sam - pvsystem.PVSystem.get_cell_temperature - -Temperature Model Parameters -^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -.. currentmodule:: pvlib.temperature -.. autodata:: TEMPERATURE_MODEL_PARAMETERS - :annotation: - -.. currentmodule:: pvlib - -Single diode models -------------------- - -Functions relevant for single diode models. - -.. autosummary:: - :toctree: generated/ - - pvsystem.calcparams_cec - pvsystem.calcparams_desoto - pvsystem.calcparams_pvsyst - pvsystem.i_from_v - pvsystem.singlediode - pvsystem.v_from_i - pvsystem.max_power_point - ivtools.sdm.pvsyst_temperature_coeff - -Low-level functions for solving the single diode equation. - -.. autosummary:: - :toctree: generated/ - - singlediode.estimate_voc - singlediode.bishop88 - singlediode.bishop88_i_from_v - singlediode.bishop88_v_from_i - singlediode.bishop88_mpp - -Functions for fitting diode models - -.. autosummary:: - :toctree: generated/ - - ivtools.sde.fit_sandia_simple - ivtools.sdm.fit_cec_sam - ivtools.sdm.fit_desoto - -Inverter models (DC to AC conversion) -------------------------------------- - -.. autosummary:: - :toctree: generated/ - - pvsystem.PVSystem.get_ac - inverter.sandia - inverter.sandia_multi - inverter.adr - inverter.pvwatts - inverter.pvwatts_multi - -Functions for fitting inverter models - -.. autosummary:: - :toctree: generated/ - - inverter.fit_sandia - - -PV System Models ----------------- - -Sandia array performance model (SAPM) -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -.. autosummary:: - :toctree: generated/ - - pvsystem.sapm - pvsystem.sapm_effective_irradiance - pvsystem.sapm_spectral_loss - inverter.sandia - temperature.sapm_cell - -Pvsyst model -^^^^^^^^^^^^ - -.. autosummary:: - :toctree: generated/ - - temperature.pvsyst_cell - pvsystem.calcparams_pvsyst - pvsystem.singlediode - ivtools.sdm.pvsyst_temperature_coeff - pvsystem.dc_ohms_from_percent - pvsystem.dc_ohmic_losses - -PVWatts model -^^^^^^^^^^^^^ - -.. autosummary:: - :toctree: generated/ - - pvsystem.pvwatts_dc - inverter.pvwatts - pvsystem.pvwatts_losses - -Estimating PV model parameters ------------------------------- - -Functions for fitting single diode models - -.. autosummary:: - :toctree: generated/ - - ivtools.sdm.fit_cec_sam - ivtools.sdm.fit_desoto - ivtools.sdm.fit_pvsyst_sandia - ivtools.sdm.fit_desoto_sandia - -Functions for fitting the single diode equation - -.. autosummary:: - :toctree: generated/ - - ivtools.sde.fit_sandia_simple - -Utilities for working with IV curve data - -.. autosummary:: - :toctree: generated/ - - ivtools.utils.rectify_iv_curve - -Other ------ - -.. autosummary:: - :toctree: generated/ - - pvsystem.retrieve_sam - pvsystem.scale_voltage_current_power - - -Effects on PV System Output -=========================== - -Loss models ------------ - -.. autosummary:: - :toctree: generated/ - - pvsystem.combine_loss_factors - pvsystem.dc_ohms_from_percent - -Snow ----- - -.. autosummary:: - :toctree: generated/ - - snow.coverage_nrel - snow.fully_covered_nrel - snow.dc_loss_nrel - -Soiling -------- - -.. autosummary:: - :toctree: generated/ - - soiling.hsu - soiling.kimber - -Shading -------- - -.. autosummary:: - :toctree: generated/ - - shading.masking_angle - shading.masking_angle_passias - shading.sky_diffuse_passias - -Spectrum --------- - -.. autosummary:: - :toctree: generated/ - - spectrum.spectrl2 - -Tracking -======== - -SingleAxisTracker ------------------ - -The :py:class:`~tracking.SingleAxisTracker` inherits from -:py:class:`~pvsystem.PVSystem`. - -.. autosummary:: - :toctree: generated/ - - tracking.SingleAxisTracker - tracking.SingleAxisTracker.singleaxis - tracking.SingleAxisTracker.get_irradiance - -Functions ---------- - -.. autosummary:: - :toctree: generated/ - - tracking.singleaxis - tracking.calc_axis_tilt - tracking.calc_cross_axis_tilt - - -.. _iotools: - -IO Tools -======== - -Functions for retrieving, reading, and writing data from a variety -of sources and file formats relevant to solar energy modeling. - -.. autosummary:: - :toctree: generated/ - - iotools.read_tmy2 - iotools.read_tmy3 - iotools.read_epw - iotools.parse_epw - iotools.read_srml - iotools.read_srml_month_from_solardat - iotools.read_surfrad - iotools.read_midc - iotools.read_midc_raw_data_from_nrel - iotools.read_ecmwf_macc - iotools.get_ecmwf_macc - iotools.read_crn - iotools.read_solrad - iotools.get_psm3 - iotools.read_psm3 - iotools.parse_psm3 - iotools.get_pvgis_tmy - iotools.read_pvgis_tmy - iotools.get_pvgis_hourly - iotools.read_pvgis_hourly - iotools.get_bsrn - iotools.read_bsrn - iotools.parse_bsrn - iotools.get_cams - iotools.read_cams - iotools.parse_cams - -A :py:class:`~pvlib.location.Location` object may be created from metadata -in some files. - -.. autosummary:: - :toctree: generated/ - - location.Location.from_tmy - location.Location.from_epw - - -Forecasting -=========== - -Forecast models ---------------- - -.. autosummary:: - :toctree: generated/ - - forecast.GFS - forecast.NAM - forecast.RAP - forecast.HRRR - forecast.HRRR_ESRL - forecast.NDFD - -Getting data ------------- - -.. autosummary:: - :toctree: generated/ - - forecast.ForecastModel.get_data - forecast.ForecastModel.get_processed_data - -Processing data ---------------- - -.. autosummary:: - :toctree: generated/ - - forecast.ForecastModel.process_data - forecast.ForecastModel.rename - forecast.ForecastModel.cloud_cover_to_ghi_linear - forecast.ForecastModel.cloud_cover_to_irradiance_clearsky_scaling - forecast.ForecastModel.cloud_cover_to_transmittance_linear - forecast.ForecastModel.cloud_cover_to_irradiance_campbell_norman - forecast.ForecastModel.cloud_cover_to_irradiance - forecast.ForecastModel.kelvin_to_celsius - forecast.ForecastModel.isobaric_to_ambient_temperature - forecast.ForecastModel.uv_to_speed - forecast.ForecastModel.gust_to_speed - -IO support ----------- - -These are public for now, but use at your own risk. - -.. autosummary:: - :toctree: generated/ - - forecast.ForecastModel.set_dataset - forecast.ForecastModel.set_query_latlon - forecast.ForecastModel.set_location - forecast.ForecastModel.set_time - - -ModelChain -========== - -Creating a ModelChain object. - -.. autosummary:: - :toctree: generated/ - - modelchain.ModelChain - modelchain.ModelChain.with_pvwatts - modelchain.ModelChain.with_sapm - -.. _modelchain_runmodel: - -Running -------- - -A ModelChain can be run from a number of starting points, depending on the -input data available. - -.. autosummary:: - :toctree: generated/ - - modelchain.ModelChain.run_model - modelchain.ModelChain.run_model_from_poa - modelchain.ModelChain.run_model_from_effective_irradiance - -Functions to assist with setting up ModelChains to run - -.. autosummary:: - :toctree: generated/ - - modelchain.ModelChain.complete_irradiance - modelchain.ModelChain.prepare_inputs - modelchain.ModelChain.prepare_inputs_from_poa - -Results -------- - -Output from the running the ModelChain is stored in the -:py:attr:`modelchain.ModelChain.results` attribute. For more -information see :py:class:`modelchain.ModelChainResult`. - -Attributes ----------- - -Simple ModelChain attributes: - -``system, location, clearsky_model, transposition_model, -solar_position_method, airmass_model`` - -Properties ----------- - -ModelChain properties that are aliases for your specific modeling functions. - -.. autosummary:: - :toctree: generated/ - - modelchain.ModelChain.dc_model - modelchain.ModelChain.ac_model - modelchain.ModelChain.aoi_model - modelchain.ModelChain.spectral_model - modelchain.ModelChain.temperature_model - modelchain.ModelChain.dc_ohmic_model - modelchain.ModelChain.losses_model - modelchain.ModelChain.effective_irradiance_model - -Model definitions ------------------ - -ModelChain model definitions. - -.. autosummary:: - :toctree: generated/ - - modelchain.ModelChain.sapm - modelchain.ModelChain.cec - modelchain.ModelChain.desoto - modelchain.ModelChain.pvsyst - modelchain.ModelChain.pvwatts_dc - modelchain.ModelChain.sandia_inverter - modelchain.ModelChain.adr_inverter - modelchain.ModelChain.pvwatts_inverter - modelchain.ModelChain.ashrae_aoi_loss - modelchain.ModelChain.physical_aoi_loss - modelchain.ModelChain.sapm_aoi_loss - modelchain.ModelChain.no_aoi_loss - modelchain.ModelChain.first_solar_spectral_loss - modelchain.ModelChain.sapm_spectral_loss - modelchain.ModelChain.no_spectral_loss - modelchain.ModelChain.sapm_temp - modelchain.ModelChain.pvsyst_temp - modelchain.ModelChain.faiman_temp - modelchain.ModelChain.fuentes_temp - modelchain.ModelChain.dc_ohmic_model - modelchain.ModelChain.no_dc_ohmic_loss - modelchain.ModelChain.pvwatts_losses - modelchain.ModelChain.no_extra_losses - -Inference methods ------------------ - -Methods that automatically determine which models should be used based -on the information in the associated :py:class:`~pvsystem.PVSystem` object. - -.. autosummary:: - :toctree: generated/ - - modelchain.ModelChain.infer_dc_model - modelchain.ModelChain.infer_ac_model - modelchain.ModelChain.infer_aoi_model - modelchain.ModelChain.infer_spectral_model - modelchain.ModelChain.infer_temperature_model - modelchain.ModelChain.infer_losses_model - -Functions ---------- - -Functions for power modeling. - -.. autosummary:: - :toctree: generated/ - - modelchain.basic_chain - modelchain.get_orientation - - -Bifacial -======== - -Methods for calculating back surface irradiance - -.. autosummary:: - :toctree: generated/ - - bifacial.pvfactors_timeseries - - -Scaling -======= - -Methods for manipulating irradiance for temporal or spatial considerations - -.. autosummary:: - :toctree: generated/ - - scaling.wvm diff --git a/docs/sphinx/source/conf.py b/docs/sphinx/source/conf.py index b99dc48302..e63d561a51 100644 --- a/docs/sphinx/source/conf.py +++ b/docs/sphinx/source/conf.py @@ -70,7 +70,7 @@ # General information about the project. project = 'pvlib python' copyright = \ - '2013-2020, Sandia National Laboratories and pvlib python Development Team' + '2013-2021, Sandia National Laboratories and pvlib python Development Team' # The version info for the project you're documenting, acts as replacement for # |version| and |release|, also used in various other places throughout the @@ -127,20 +127,38 @@ # The theme to use for HTML and HTML Help pages. See the documentation for # a list of builtin themes. -# on_rtd is whether we are on readthedocs.org -on_rtd = os.environ.get('READTHEDOCS', None) == 'True' - -if not on_rtd: # only import and set the theme if we're building docs locally - import sphinx_rtd_theme - html_theme = 'sphinx_rtd_theme' - html_theme_path = [sphinx_rtd_theme.get_html_theme_path()] -else: - html_theme = 'default' +html_theme = "pydata_sphinx_theme" # Theme options are theme-specific and customize the look and feel of a theme # further. For a list of options available for each theme, see the # documentation. -#html_theme_options = {} +# https://pydata-sphinx-theme.rtfd.io/en/latest/user_guide/configuring.html +html_theme_options = { + "github_url": "https://github.com/pvlib/pvlib-python", + "favicons": [ + {"rel": "icon", "sizes": "16x16", "href": "favicon-16x16.png"}, + {"rel": "icon", "sizes": "32x32", "href": "favicon-32x32.png"}, + ], + "icon_links": [ + { + "name": "StackOverflow", + "url": "https://stackoverflow.com/questions/tagged/pvlib", + "icon": "fab fa-stack-overflow", + }, + { + "name": "Google Group", + "url": "https://groups.google.com/g/pvlib-python", + "icon": "fab fa-google", + }, + { + "name": "PyPI", + "url": "https://pypi.org/project/pvlib/", + "icon": "fab fa-python", + }, + ], + "use_edit_page_button": True, + "show_toc_level": 1, +} # Add any paths that contain custom themes here, relative to this directory. #html_theme_path = [] @@ -154,7 +172,7 @@ # The name of an image file (relative to this directory) to place at the top # of the sidebar. -#html_logo = None +html_logo = '_images/pvlib_logo_horiz.png' # The name of an image file (within the static path) to use as favicon of the # docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32 @@ -332,12 +350,12 @@ def setup(app): # settings for sphinx-gallery sphinx_gallery_conf = { 'examples_dirs': ['../../examples'], # location of gallery scripts - 'gallery_dirs': ['auto_examples'], # location of generated output + 'gallery_dirs': ['gallery'], # location of generated output # sphinx-gallery only shows plots from plot_*.py files by default: # 'filename_pattern': '*.py', # directory where function/class granular galleries are stored - 'backreferences_dir': 'generated/gallery_backreferences', + 'backreferences_dir': 'reference/generated/gallery_backreferences', # Modules for which function/class level galleries are created. In # this case only pvlib, could include others though. must be tuple of str @@ -398,32 +416,30 @@ def get_linenos(obj): return start, start + len(lines) - 1 -def make_github_url(pagename): +def make_github_url(file_name): """ Generate the appropriate GH link for a given docs page. This function is intended for use in sphinx template files. - The target URL is built differently based on the type of page. Sphinx - provides templates with a built-in `pagename` variable that is the path - at the end of the URL, without the extension. For instance, - https://pvlib-python.rtfd.org/en/stable/auto_examples/plot_singlediode.html - will have pagename = "auto_examples/plot_singlediode". + The target URL is built differently based on the type of page. The pydata + sphinx theme has a built-in `file_name` variable that looks like + "/docs/sphinx/source/api.rst" or "generated/pvlib.atmosphere.alt2pres.rst" """ URL_BASE = "https://github.com/pvlib/pvlib-python/blob/master/" # is it a gallery page? - if any(d in pagename for d in sphinx_gallery_conf['gallery_dirs']): - if pagename.split("/")[-1] == "index": + if any(d in file_name for d in sphinx_gallery_conf['gallery_dirs']): + if file_name.split("/")[-1] == "index": example_file = "README.rst" else: - example_file = pagename.split("/")[-1] + ".py" + example_file = file_name.split("/")[-1].replace('.rst', '.py') target_url = URL_BASE + "docs/examples/" + example_file # is it an API autogen page? - elif "generated" in pagename: - # pagename looks like "generated/pvlib.location.Location" - qualname = pagename.split("/")[-1] + elif "generated" in file_name: + # pagename looks like "generated/pvlib.atmosphere.alt2pres.rst" + qualname = file_name.split("/")[-1].replace('.rst', '') obj, module = get_obj_module(qualname) path = module.__name__.replace(".", "/") + ".py" target_url = URL_BASE + path @@ -434,7 +450,7 @@ def make_github_url(pagename): # Just a normal source RST page else: - target_url = URL_BASE + "docs/sphinx/source/" + pagename + ".rst" + target_url = URL_BASE + "docs/sphinx/source/" + file_name return target_url @@ -443,4 +459,5 @@ def make_github_url(pagename): # _templates/breadcrumbs.html html_context = { 'make_github_url': make_github_url, + 'edit_page_url_template': '{{ make_github_url(file_name) }}', } diff --git a/docs/sphinx/source/index.rst b/docs/sphinx/source/index.rst index c2fe9ff106..3d291b362a 100644 --- a/docs/sphinx/source/index.rst +++ b/docs/sphinx/source/index.rst @@ -102,21 +102,11 @@ Contents .. toctree:: :maxdepth: 1 - package_overview - introtutorial - auto_examples/index + user_guide/index + gallery/index + reference/index whatsnew - installation contributing - pvsystem - modelchain - timetimezones - clearsky - forecasts - api - comparison_pvlib_matlab - variables_style_rules - singlediode Indices and tables diff --git a/docs/sphinx/source/reference/airmass_atmospheric.rst b/docs/sphinx/source/reference/airmass_atmospheric.rst new file mode 100644 index 0000000000..fbd33a5f28 --- /dev/null +++ b/docs/sphinx/source/reference/airmass_atmospheric.rst @@ -0,0 +1,19 @@ +.. currentmodule:: pvlib + +Airmass and atmospheric models +============================== + +.. autosummary:: + :toctree: generated/ + + location.Location.get_airmass + atmosphere.get_absolute_airmass + atmosphere.get_relative_airmass + atmosphere.pres2alt + atmosphere.alt2pres + atmosphere.gueymard94_pw + atmosphere.first_solar_spectral_correction + atmosphere.bird_hulstrom80_aod_bb + atmosphere.kasten96_lt + atmosphere.angstrom_aod_at_lambda + atmosphere.angstrom_alpha diff --git a/docs/sphinx/source/reference/bifacial.rst b/docs/sphinx/source/reference/bifacial.rst new file mode 100644 index 0000000000..f19195429f --- /dev/null +++ b/docs/sphinx/source/reference/bifacial.rst @@ -0,0 +1,11 @@ +.. currentmodule:: pvlib + +Bifacial +======== + +Methods for calculating back surface irradiance + +.. autosummary:: + :toctree: generated/ + + bifacial.pvfactors_timeseries diff --git a/docs/sphinx/source/reference/classes.rst b/docs/sphinx/source/reference/classes.rst new file mode 100644 index 0000000000..d96db6422d --- /dev/null +++ b/docs/sphinx/source/reference/classes.rst @@ -0,0 +1,24 @@ +.. currentmodule:: pvlib + +Classes +======= + +pvlib-python provides a collection of classes for users that prefer +object-oriented programming. These classes can help users keep track of +data in a more organized way, and can help to simplify the modeling +process. The classes do not add any functionality beyond the procedural +code. Most of the object methods are simple wrappers around the +corresponding procedural code. For examples of using these classes, see +the :ref:`pvsystemdoc` and :ref:`modelchaindoc` pages. + +.. autosummary:: + :toctree: generated/ + + location.Location + pvsystem.PVSystem + pvsystem.Array + pvsystem.FixedMount + pvsystem.SingleAxisTrackerMount + tracking.SingleAxisTracker + modelchain.ModelChain + modelchain.ModelChainResult diff --git a/docs/sphinx/source/reference/clearsky.rst b/docs/sphinx/source/reference/clearsky.rst new file mode 100644 index 0000000000..e81372cc2d --- /dev/null +++ b/docs/sphinx/source/reference/clearsky.rst @@ -0,0 +1,15 @@ +.. currentmodule:: pvlib + +Clear sky +========= + +.. autosummary:: + :toctree: generated/ + + location.Location.get_clearsky + clearsky.ineichen + clearsky.lookup_linke_turbidity + clearsky.simplified_solis + clearsky.haurwitz + clearsky.detect_clearsky + clearsky.bird diff --git a/docs/sphinx/source/reference/effects_on_pv_system_output.rst b/docs/sphinx/source/reference/effects_on_pv_system_output.rst new file mode 100644 index 0000000000..92efa946b4 --- /dev/null +++ b/docs/sphinx/source/reference/effects_on_pv_system_output.rst @@ -0,0 +1,50 @@ +.. currentmodule:: pvlib + +Effects on PV System Output +=========================== + +Loss models +----------- + +.. autosummary:: + :toctree: generated/ + + pvsystem.combine_loss_factors + pvsystem.dc_ohms_from_percent + +Snow +---- + +.. autosummary:: + :toctree: generated/ + + snow.coverage_nrel + snow.fully_covered_nrel + snow.dc_loss_nrel + +Soiling +------- + +.. autosummary:: + :toctree: generated/ + + soiling.hsu + soiling.kimber + +Shading +------- + +.. autosummary:: + :toctree: generated/ + + shading.masking_angle + shading.masking_angle_passias + shading.sky_diffuse_passias + +Spectrum +-------- + +.. autosummary:: + :toctree: generated/ + + spectrum.spectrl2 diff --git a/docs/sphinx/source/reference/forecasting.rst b/docs/sphinx/source/reference/forecasting.rst new file mode 100644 index 0000000000..ff4df7ed4d --- /dev/null +++ b/docs/sphinx/source/reference/forecasting.rst @@ -0,0 +1,57 @@ +.. currentmodule:: pvlib + +Forecasting +=========== + +Forecast models +--------------- + +.. autosummary:: + :toctree: generated/ + + forecast.GFS + forecast.NAM + forecast.RAP + forecast.HRRR + forecast.HRRR_ESRL + forecast.NDFD + +Getting data +------------ + +.. autosummary:: + :toctree: generated/ + + forecast.ForecastModel.get_data + forecast.ForecastModel.get_processed_data + +Processing data +--------------- + +.. autosummary:: + :toctree: generated/ + + forecast.ForecastModel.process_data + forecast.ForecastModel.rename + forecast.ForecastModel.cloud_cover_to_ghi_linear + forecast.ForecastModel.cloud_cover_to_irradiance_clearsky_scaling + forecast.ForecastModel.cloud_cover_to_transmittance_linear + forecast.ForecastModel.cloud_cover_to_irradiance_campbell_norman + forecast.ForecastModel.cloud_cover_to_irradiance + forecast.ForecastModel.kelvin_to_celsius + forecast.ForecastModel.isobaric_to_ambient_temperature + forecast.ForecastModel.uv_to_speed + forecast.ForecastModel.gust_to_speed + +IO support +---------- + +These are public for now, but use at your own risk. + +.. autosummary:: + :toctree: generated/ + + forecast.ForecastModel.set_dataset + forecast.ForecastModel.set_query_latlon + forecast.ForecastModel.set_location + forecast.ForecastModel.set_time diff --git a/docs/sphinx/source/reference/index.rst b/docs/sphinx/source/reference/index.rst new file mode 100644 index 0000000000..0f1902325a --- /dev/null +++ b/docs/sphinx/source/reference/index.rst @@ -0,0 +1,22 @@ +.. currentmodule:: pvlib + +############# +API reference +############# + +.. toctree:: + :maxdepth: 2 + + classes + solarposition + clearsky + airmass_atmospheric + irradiance + pv_modeling + effects_on_pv_system_output + tracking + iotools + forecasting + modelchain + bifacial + scaling diff --git a/docs/sphinx/source/reference/iotools.rst b/docs/sphinx/source/reference/iotools.rst new file mode 100644 index 0000000000..514aeac2f5 --- /dev/null +++ b/docs/sphinx/source/reference/iotools.rst @@ -0,0 +1,48 @@ +.. currentmodule:: pvlib + +.. _iotools: + +IO Tools +======== + +Functions for retrieving, reading, and writing data from a variety +of sources and file formats relevant to solar energy modeling. + +.. autosummary:: + :toctree: generated/ + + iotools.read_tmy2 + iotools.read_tmy3 + iotools.read_epw + iotools.parse_epw + iotools.read_srml + iotools.read_srml_month_from_solardat + iotools.read_surfrad + iotools.read_midc + iotools.read_midc_raw_data_from_nrel + iotools.read_ecmwf_macc + iotools.get_ecmwf_macc + iotools.read_crn + iotools.read_solrad + iotools.get_psm3 + iotools.read_psm3 + iotools.parse_psm3 + iotools.get_pvgis_tmy + iotools.read_pvgis_tmy + iotools.get_pvgis_hourly + iotools.read_pvgis_hourly + iotools.get_bsrn + iotools.read_bsrn + iotools.parse_bsrn + iotools.get_cams + iotools.read_cams + iotools.parse_cams + +A :py:class:`~pvlib.location.Location` object may be created from metadata +in some files. + +.. autosummary:: + :toctree: generated/ + + location.Location.from_tmy + location.Location.from_epw diff --git a/docs/sphinx/source/reference/irradiance.rst b/docs/sphinx/source/reference/irradiance.rst new file mode 100644 index 0000000000..e0a5777533 --- /dev/null +++ b/docs/sphinx/source/reference/irradiance.rst @@ -0,0 +1,70 @@ +.. currentmodule:: pvlib + +Irradiance +========== + +Methods for irradiance calculations +----------------------------------- + +.. autosummary:: + :toctree: generated/ + + pvsystem.PVSystem.get_irradiance + pvsystem.PVSystem.get_aoi + pvsystem.PVSystem.get_iam + tracking.SingleAxisTracker.get_irradiance + +Decomposing and combining irradiance +------------------------------------ + +.. autosummary:: + :toctree: generated/ + + irradiance.get_extra_radiation + irradiance.aoi + irradiance.aoi_projection + irradiance.poa_horizontal_ratio + irradiance.beam_component + irradiance.poa_components + irradiance.get_ground_diffuse + irradiance.dni + +Transposition models +-------------------- + +.. autosummary:: + :toctree: generated/ + + irradiance.get_total_irradiance + irradiance.get_sky_diffuse + irradiance.isotropic + irradiance.perez + irradiance.haydavies + irradiance.klucher + irradiance.reindl + irradiance.king + +.. _dniestmodels: + +DNI estimation models +--------------------- + +.. autosummary:: + :toctree: generated/ + + irradiance.disc + irradiance.dirint + irradiance.dirindex + irradiance.erbs + irradiance.campbell_norman + irradiance.gti_dirint + +Clearness index models +---------------------- + +.. autosummary:: + :toctree: generated/ + + irradiance.clearness_index + irradiance.clearness_index_zenith_independent + irradiance.clearsky_index diff --git a/docs/sphinx/source/reference/modelchain.rst b/docs/sphinx/source/reference/modelchain.rst new file mode 100644 index 0000000000..b8ce6744fb --- /dev/null +++ b/docs/sphinx/source/reference/modelchain.rst @@ -0,0 +1,128 @@ +.. currentmodule:: pvlib + +ModelChain +========== + +Creating a ModelChain object. + +.. autosummary:: + :toctree: generated/ + + modelchain.ModelChain + modelchain.ModelChain.with_pvwatts + modelchain.ModelChain.with_sapm + +.. _modelchain_runmodel: + +Running +------- + +A ModelChain can be run from a number of starting points, depending on the +input data available. + +.. autosummary:: + :toctree: generated/ + + modelchain.ModelChain.run_model + modelchain.ModelChain.run_model_from_poa + modelchain.ModelChain.run_model_from_effective_irradiance + +Functions to assist with setting up ModelChains to run + +.. autosummary:: + :toctree: generated/ + + modelchain.ModelChain.complete_irradiance + modelchain.ModelChain.prepare_inputs + modelchain.ModelChain.prepare_inputs_from_poa + +Results +------- + +Output from the running the ModelChain is stored in the +:py:attr:`modelchain.ModelChain.results` attribute. For more +information see :py:class:`modelchain.ModelChainResult`. + +Attributes +---------- + +Simple ModelChain attributes: + +``system, location, clearsky_model, transposition_model, +solar_position_method, airmass_model`` + +Properties +---------- + +ModelChain properties that are aliases for your specific modeling functions. + +.. autosummary:: + :toctree: generated/ + + modelchain.ModelChain.dc_model + modelchain.ModelChain.ac_model + modelchain.ModelChain.aoi_model + modelchain.ModelChain.spectral_model + modelchain.ModelChain.temperature_model + modelchain.ModelChain.dc_ohmic_model + modelchain.ModelChain.losses_model + modelchain.ModelChain.effective_irradiance_model + +Model definitions +----------------- + +ModelChain model definitions. + +.. autosummary:: + :toctree: generated/ + + modelchain.ModelChain.sapm + modelchain.ModelChain.cec + modelchain.ModelChain.desoto + modelchain.ModelChain.pvsyst + modelchain.ModelChain.pvwatts_dc + modelchain.ModelChain.sandia_inverter + modelchain.ModelChain.adr_inverter + modelchain.ModelChain.pvwatts_inverter + modelchain.ModelChain.ashrae_aoi_loss + modelchain.ModelChain.physical_aoi_loss + modelchain.ModelChain.sapm_aoi_loss + modelchain.ModelChain.no_aoi_loss + modelchain.ModelChain.first_solar_spectral_loss + modelchain.ModelChain.sapm_spectral_loss + modelchain.ModelChain.no_spectral_loss + modelchain.ModelChain.sapm_temp + modelchain.ModelChain.pvsyst_temp + modelchain.ModelChain.faiman_temp + modelchain.ModelChain.fuentes_temp + modelchain.ModelChain.dc_ohmic_model + modelchain.ModelChain.no_dc_ohmic_loss + modelchain.ModelChain.pvwatts_losses + modelchain.ModelChain.no_extra_losses + +Inference methods +----------------- + +Methods that automatically determine which models should be used based +on the information in the associated :py:class:`~pvsystem.PVSystem` object. + +.. autosummary:: + :toctree: generated/ + + modelchain.ModelChain.infer_dc_model + modelchain.ModelChain.infer_ac_model + modelchain.ModelChain.infer_aoi_model + modelchain.ModelChain.infer_spectral_model + modelchain.ModelChain.infer_temperature_model + modelchain.ModelChain.infer_losses_model + +Functions +--------- + +Functions for power modeling. + +.. autosummary:: + :toctree: generated/ + + modelchain.basic_chain + modelchain.get_orientation diff --git a/docs/sphinx/source/reference/pv_modeling.rst b/docs/sphinx/source/reference/pv_modeling.rst new file mode 100644 index 0000000000..dc2f8f1099 --- /dev/null +++ b/docs/sphinx/source/reference/pv_modeling.rst @@ -0,0 +1,186 @@ +.. currentmodule:: pvlib + +PV Modeling +=========== + +Classes +------- + +The :py:class:`~pvsystem.PVSystem` class provides many methods that +wrap the functions listed below. See its documentation for details. + +.. autosummary:: + :toctree: generated/ + + pvsystem.PVSystem + +Incident angle modifiers +------------------------ + +.. autosummary:: + :toctree: generated/ + + iam.physical + iam.ashrae + iam.martin_ruiz + iam.martin_ruiz_diffuse + iam.sapm + iam.interp + iam.marion_diffuse + iam.marion_integrate + +PV temperature models +--------------------- + +.. autosummary:: + :toctree: generated/ + + temperature.sapm_cell + temperature.sapm_module + temperature.sapm_cell_from_module + temperature.pvsyst_cell + temperature.faiman + temperature.fuentes + temperature.ross + temperature.noct_sam + pvsystem.PVSystem.get_cell_temperature + +Temperature Model Parameters +^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +.. currentmodule:: pvlib.temperature +.. autodata:: TEMPERATURE_MODEL_PARAMETERS + :annotation: + +.. currentmodule:: pvlib + +Single diode models +------------------- + +Functions relevant for single diode models. + +.. autosummary:: + :toctree: generated/ + + pvsystem.calcparams_cec + pvsystem.calcparams_desoto + pvsystem.calcparams_pvsyst + pvsystem.i_from_v + pvsystem.singlediode + pvsystem.v_from_i + pvsystem.max_power_point + ivtools.sdm.pvsyst_temperature_coeff + +Low-level functions for solving the single diode equation. + +.. autosummary:: + :toctree: generated/ + + singlediode.estimate_voc + singlediode.bishop88 + singlediode.bishop88_i_from_v + singlediode.bishop88_v_from_i + singlediode.bishop88_mpp + +Functions for fitting diode models + +.. autosummary:: + :toctree: generated/ + + ivtools.sde.fit_sandia_simple + ivtools.sdm.fit_cec_sam + ivtools.sdm.fit_desoto + +Inverter models (DC to AC conversion) +------------------------------------- + +.. autosummary:: + :toctree: generated/ + + pvsystem.PVSystem.get_ac + inverter.sandia + inverter.sandia_multi + inverter.adr + inverter.pvwatts + inverter.pvwatts_multi + +Functions for fitting inverter models + +.. autosummary:: + :toctree: generated/ + + inverter.fit_sandia + + +PV System Models +---------------- + +Sandia array performance model (SAPM) +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +.. autosummary:: + :toctree: generated/ + + pvsystem.sapm + pvsystem.sapm_effective_irradiance + pvsystem.sapm_spectral_loss + inverter.sandia + temperature.sapm_cell + +Pvsyst model +^^^^^^^^^^^^ + +.. autosummary:: + :toctree: generated/ + + temperature.pvsyst_cell + pvsystem.calcparams_pvsyst + pvsystem.singlediode + ivtools.sdm.pvsyst_temperature_coeff + pvsystem.dc_ohms_from_percent + pvsystem.dc_ohmic_losses + +PVWatts model +^^^^^^^^^^^^^ + +.. autosummary:: + :toctree: generated/ + + pvsystem.pvwatts_dc + inverter.pvwatts + pvsystem.pvwatts_losses + +Estimating PV model parameters +------------------------------ + +Functions for fitting single diode models + +.. autosummary:: + :toctree: generated/ + + ivtools.sdm.fit_cec_sam + ivtools.sdm.fit_desoto + ivtools.sdm.fit_pvsyst_sandia + ivtools.sdm.fit_desoto_sandia + +Functions for fitting the single diode equation + +.. autosummary:: + :toctree: generated/ + + ivtools.sde.fit_sandia_simple + +Utilities for working with IV curve data + +.. autosummary:: + :toctree: generated/ + + ivtools.utils.rectify_iv_curve + +Other +----- + +.. autosummary:: + :toctree: generated/ + + pvsystem.retrieve_sam + pvsystem.scale_voltage_current_power diff --git a/docs/sphinx/source/reference/scaling.rst b/docs/sphinx/source/reference/scaling.rst new file mode 100644 index 0000000000..75599282e2 --- /dev/null +++ b/docs/sphinx/source/reference/scaling.rst @@ -0,0 +1,11 @@ +.. currentmodule:: pvlib + +Scaling +======= + +Methods for manipulating irradiance for temporal or spatial considerations + +.. autosummary:: + :toctree: generated/ + + scaling.wvm diff --git a/docs/sphinx/source/reference/solarposition.rst b/docs/sphinx/source/reference/solarposition.rst new file mode 100644 index 0000000000..dbe93d5392 --- /dev/null +++ b/docs/sphinx/source/reference/solarposition.rst @@ -0,0 +1,66 @@ +.. currentmodule:: pvlib + +Solar Position +============== + +Functions and methods for calculating solar position. + +The :py:meth:`location.Location.get_solarposition` method and the +:py:func:`solarposition.get_solarposition` function with default +parameters are fast and accurate. We recommend using these functions +unless you know that you need a different function. + +.. autosummary:: + :toctree: generated/ + + location.Location.get_solarposition + solarposition.get_solarposition + solarposition.spa_python + solarposition.ephemeris + solarposition.pyephem + solarposition.spa_c + + +Additional functions for quantities closely related to solar position. + +.. autosummary:: + :toctree: generated/ + + solarposition.calc_time + solarposition.pyephem_earthsun_distance + solarposition.nrel_earthsun_distance + spa.calculate_deltat + + +Functions for calculating sunrise, sunset and transit times. + +.. autosummary:: + :toctree: generated/ + + location.Location.get_sun_rise_set_transit + solarposition.sun_rise_set_transit_ephem + solarposition.sun_rise_set_transit_spa + solarposition.sun_rise_set_transit_geometric + + +The spa module contains the implementation of the built-in NREL SPA +algorithm. + +.. autosummary:: + :toctree: generated/ + + spa + +Correlations and analytical expressions for low precision solar position +calculations. + +.. autosummary:: + :toctree: generated/ + + solarposition.solar_zenith_analytical + solarposition.solar_azimuth_analytical + solarposition.declination_spencer71 + solarposition.declination_cooper69 + solarposition.equation_of_time_spencer71 + solarposition.equation_of_time_pvcdrom + solarposition.hour_angle diff --git a/docs/sphinx/source/reference/tracking.rst b/docs/sphinx/source/reference/tracking.rst new file mode 100644 index 0000000000..7f2599b6a0 --- /dev/null +++ b/docs/sphinx/source/reference/tracking.rst @@ -0,0 +1,27 @@ +.. currentmodule:: pvlib + +Tracking +======== + +SingleAxisTracker +----------------- + +The :py:class:`~tracking.SingleAxisTracker` inherits from +:py:class:`~pvsystem.PVSystem`. + +.. autosummary:: + :toctree: generated/ + + tracking.SingleAxisTracker + tracking.SingleAxisTracker.singleaxis + tracking.SingleAxisTracker.get_irradiance + +Functions +--------- + +.. autosummary:: + :toctree: generated/ + + tracking.singleaxis + tracking.calc_axis_tilt + tracking.calc_cross_axis_tilt diff --git a/docs/sphinx/source/clearsky.rst b/docs/sphinx/source/user_guide/clearsky.rst similarity index 100% rename from docs/sphinx/source/clearsky.rst rename to docs/sphinx/source/user_guide/clearsky.rst diff --git a/docs/sphinx/source/comparison_pvlib_matlab.rst b/docs/sphinx/source/user_guide/comparison_pvlib_matlab.rst similarity index 100% rename from docs/sphinx/source/comparison_pvlib_matlab.rst rename to docs/sphinx/source/user_guide/comparison_pvlib_matlab.rst diff --git a/docs/sphinx/source/forecasts.rst b/docs/sphinx/source/user_guide/forecasts.rst similarity index 100% rename from docs/sphinx/source/forecasts.rst rename to docs/sphinx/source/user_guide/forecasts.rst diff --git a/docs/sphinx/source/user_guide/index.rst b/docs/sphinx/source/user_guide/index.rst new file mode 100644 index 0000000000..1ee6059acb --- /dev/null +++ b/docs/sphinx/source/user_guide/index.rst @@ -0,0 +1,19 @@ +========== +User Guide +========== + + +.. toctree:: + :maxdepth: 2 + + package_overview + installation + introtutorial + pvsystem + modelchain + timetimezones + clearsky + forecasts + comparison_pvlib_matlab + variables_style_rules + singlediode diff --git a/docs/sphinx/source/installation.rst b/docs/sphinx/source/user_guide/installation.rst similarity index 99% rename from docs/sphinx/source/installation.rst rename to docs/sphinx/source/user_guide/installation.rst index 2724a4adcf..42d27faa6e 100644 --- a/docs/sphinx/source/installation.rst +++ b/docs/sphinx/source/user_guide/installation.rst @@ -146,7 +146,7 @@ Follow these steps to obtain the library using git/GitHub: This button is circled in the image below. Remember the system path that you clone the library to. -.. image:: _images/clonebutton.png +.. image:: ../_images/clonebutton.png Please see GitHub's `Forking Projects `_, diff --git a/docs/sphinx/source/introtutorial.rst b/docs/sphinx/source/user_guide/introtutorial.rst similarity index 100% rename from docs/sphinx/source/introtutorial.rst rename to docs/sphinx/source/user_guide/introtutorial.rst diff --git a/docs/sphinx/source/modelchain.rst b/docs/sphinx/source/user_guide/modelchain.rst similarity index 100% rename from docs/sphinx/source/modelchain.rst rename to docs/sphinx/source/user_guide/modelchain.rst diff --git a/docs/sphinx/source/package_overview.rst b/docs/sphinx/source/user_guide/package_overview.rst similarity index 100% rename from docs/sphinx/source/package_overview.rst rename to docs/sphinx/source/user_guide/package_overview.rst diff --git a/docs/sphinx/source/pvsystem.rst b/docs/sphinx/source/user_guide/pvsystem.rst similarity index 100% rename from docs/sphinx/source/pvsystem.rst rename to docs/sphinx/source/user_guide/pvsystem.rst diff --git a/docs/sphinx/source/singlediode.rst b/docs/sphinx/source/user_guide/singlediode.rst similarity index 100% rename from docs/sphinx/source/singlediode.rst rename to docs/sphinx/source/user_guide/singlediode.rst diff --git a/docs/sphinx/source/timetimezones.rst b/docs/sphinx/source/user_guide/timetimezones.rst similarity index 100% rename from docs/sphinx/source/timetimezones.rst rename to docs/sphinx/source/user_guide/timetimezones.rst diff --git a/docs/sphinx/source/variables_style_rules.rst b/docs/sphinx/source/user_guide/variables_style_rules.rst similarity index 96% rename from docs/sphinx/source/variables_style_rules.rst rename to docs/sphinx/source/user_guide/variables_style_rules.rst index 5baf80ec0c..dc826b77bd 100644 --- a/docs/sphinx/source/variables_style_rules.rst +++ b/docs/sphinx/source/user_guide/variables_style_rules.rst @@ -6,7 +6,7 @@ Variables and Symbols There is a convention on consistent variable names throughout the library: .. csv-table:: List of used Variables and Parameters - :file: ../../../pvlib/data/variables_style_rules.csv + :file: ../../../../pvlib/data/variables_style_rules.csv :delim: ; :header-rows: 1 :widths: 5, 5 diff --git a/setup.py b/setup.py index 0717a9d839..b2cbf486d5 100755 --- a/setup.py +++ b/setup.py @@ -57,7 +57,7 @@ 'pvfactors', 'siphon', 'statsmodels', 'cftime >= 1.1.1'], 'doc': ['ipython', 'matplotlib', 'sphinx == 3.1.2', - 'sphinx_rtd_theme==0.5.0', 'sphinx-gallery', 'docutils == 0.15.2', + 'pydata-sphinx-theme', 'sphinx-gallery', 'docutils == 0.15.2', 'pillow', 'netcdf4', 'siphon', 'sphinx-toggleprompt >= 0.0.5'], 'test': TESTS_REQUIRE