├── .eggs └── README.txt ├── .gitignore ├── .readthedocs.yml ├── CHANGES.rst ├── LICENSE.rst ├── MANIFEST.in ├── README.rst ├── docs ├── Figure_cartoon.png ├── Makefile ├── SCOUSE_LOGO.png ├── _build │ ├── doctrees │ │ ├── description.doctree │ │ ├── environment.pickle │ │ ├── index.doctree │ │ ├── installation.doctree │ │ ├── license.doctree │ │ ├── stats.doctree │ │ ├── tips.doctree │ │ ├── tutorial.doctree │ │ ├── tutorial_v1.0.0.doctree │ │ └── tutorial_v2.0.0.doctree │ └── html │ │ ├── .buildinfo │ │ ├── .doctrees │ │ ├── description.doctree │ │ ├── environment.pickle │ │ ├── index.doctree │ │ ├── installation.doctree │ │ ├── license.doctree │ │ └── tutorial_v1.0.0.doctree │ │ ├── _images │ │ ├── Figure_cartoon.png │ │ ├── SCOUSE_LOGO.png │ │ ├── brick_coverage.png │ │ ├── n2h+10_37_coverage.png │ │ ├── stage1.png │ │ ├── stage1_GUI_1.png │ │ ├── stage1_GUI_2.png │ │ ├── stage1_GUI_3.png │ │ ├── stage1_GUI_4.png │ │ ├── stage1_GUI_5.png │ │ ├── stage1_GUI_6.png │ │ ├── stage2_1.png │ │ ├── stage2_2.png │ │ ├── stage2_3.png │ │ ├── stage2_4.png │ │ ├── stage2_GUI_1.png │ │ ├── stage2_GUI_2.png │ │ ├── stage2_GUI_3.png │ │ ├── stage2_GUI_4.png │ │ ├── stage2_GUI_5.png │ │ ├── stage3_1.png │ │ ├── stage3_v2_1.png │ │ ├── stage4_GUI_1.png │ │ ├── stage4_GUI_2.png │ │ ├── stage4_GUI_3.png │ │ ├── stage4_GUI_4.png │ │ ├── stage5_1.png │ │ ├── stage5_2.png │ │ ├── stage5_3.png │ │ ├── stage5_4.png │ │ ├── stage5_5.png │ │ ├── stage6_1.png │ │ ├── stage6_2.png │ │ ├── stage6_3.png │ │ ├── stage6_4.png │ │ └── stage6_5.png │ │ ├── _sources │ │ ├── description.rst.txt │ │ ├── index.rst.txt │ │ ├── installation.rst.txt │ │ ├── license.rst.txt │ │ ├── stats.rst.txt │ │ ├── tips.rst.txt │ │ ├── tutorial.rst.txt │ │ ├── tutorial_v1.0.0.rst.txt │ │ └── tutorial_v2.0.0.rst.txt │ │ ├── _static │ │ ├── ajax-loader.gif │ │ ├── astropy_linkout.svg │ │ ├── astropy_linkout_20.png │ │ ├── astropy_logo.ico │ │ ├── astropy_logo.svg │ │ ├── astropy_logo_32.png │ │ ├── basic.css │ │ ├── bootstrap-2.3.2 │ │ │ ├── css │ │ │ │ ├── bootstrap-responsive.css │ │ │ │ ├── bootstrap-responsive.min.css │ │ │ │ ├── bootstrap.css │ │ │ │ └── bootstrap.min.css │ │ │ ├── img │ │ │ │ ├── glyphicons-halflings-white.png │ │ │ │ └── glyphicons-halflings.png │ │ │ └── js │ │ │ │ ├── bootstrap.js │ │ │ │ └── bootstrap.min.js │ │ ├── bootstrap-3.3.7 │ │ │ ├── css │ │ │ │ ├── bootstrap-theme.css │ │ │ │ ├── bootstrap-theme.css.map │ │ │ │ ├── bootstrap-theme.min.css │ │ │ │ ├── bootstrap-theme.min.css.map │ │ │ │ ├── bootstrap.css │ │ │ │ ├── bootstrap.css.map │ │ │ │ ├── bootstrap.min.css │ │ │ │ └── bootstrap.min.css.map │ │ │ ├── fonts │ │ │ │ ├── glyphicons-halflings-regular.eot │ │ │ │ ├── glyphicons-halflings-regular.svg │ │ │ │ ├── glyphicons-halflings-regular.ttf │ │ │ │ ├── glyphicons-halflings-regular.woff │ │ │ │ └── glyphicons-halflings-regular.woff2 │ │ │ └── js │ │ │ │ ├── bootstrap.js │ │ │ │ ├── bootstrap.min.js │ │ │ │ └── npm.js │ │ ├── bootstrap-astropy.css │ │ ├── bootstrap-sphinx.css │ │ ├── bootstrap-sphinx.js │ │ ├── bootswatch-2.3.2 │ │ │ ├── amelia │ │ │ │ └── bootstrap.min.css │ │ │ ├── cerulean │ │ │ │ └── bootstrap.min.css │ │ │ ├── cosmo │ │ │ │ └── bootstrap.min.css │ │ │ ├── cyborg │ │ │ │ └── bootstrap.min.css │ │ │ ├── flatly │ │ │ │ └── bootstrap.min.css │ │ │ ├── img │ │ │ │ ├── glyphicons-halflings-white.png │ │ │ │ └── glyphicons-halflings.png │ │ │ ├── journal │ │ │ │ └── bootstrap.min.css │ │ │ ├── readable │ │ │ │ └── bootstrap.min.css │ │ │ ├── simplex │ │ │ │ └── bootstrap.min.css │ │ │ ├── slate │ │ │ │ └── bootstrap.min.css │ │ │ ├── spacelab │ │ │ │ └── bootstrap.min.css │ │ │ ├── spruce │ │ │ │ └── bootstrap.min.css │ │ │ ├── superhero │ │ │ │ └── bootstrap.min.css │ │ │ └── united │ │ │ │ └── bootstrap.min.css │ │ ├── bootswatch-3.3.7 │ │ │ ├── cerulean │ │ │ │ └── bootstrap.min.css │ │ │ ├── cosmo │ │ │ │ └── bootstrap.min.css │ │ │ ├── cyborg │ │ │ │ └── bootstrap.min.css │ │ │ ├── darkly │ │ │ │ └── bootstrap.min.css │ │ │ ├── flatly │ │ │ │ └── bootstrap.min.css │ │ │ ├── fonts │ │ │ │ ├── glyphicons-halflings-regular.eot │ │ │ │ ├── glyphicons-halflings-regular.svg │ │ │ │ ├── glyphicons-halflings-regular.ttf │ │ │ │ ├── glyphicons-halflings-regular.woff │ │ │ │ └── glyphicons-halflings-regular.woff2 │ │ │ ├── journal │ │ │ │ └── bootstrap.min.css │ │ │ ├── lumen │ │ │ │ └── bootstrap.min.css │ │ │ ├── paper │ │ │ │ └── bootstrap.min.css │ │ │ ├── readable │ │ │ │ └── bootstrap.min.css │ │ │ ├── sandstone │ │ │ │ └── bootstrap.min.css │ │ │ ├── simplex │ │ │ │ └── bootstrap.min.css │ │ │ ├── slate │ │ │ │ └── bootstrap.min.css │ │ │ ├── solar │ │ │ │ └── bootstrap.min.css │ │ │ ├── spacelab │ │ │ │ └── bootstrap.min.css │ │ │ ├── superhero │ │ │ │ └── bootstrap.min.css │ │ │ ├── united │ │ │ │ └── bootstrap.min.css │ │ │ └── yeti │ │ │ │ └── bootstrap.min.css │ │ ├── comment-bright.png │ │ ├── comment-close.png │ │ ├── comment.png │ │ ├── copybutton.js │ │ ├── css │ │ │ ├── badge_only.css │ │ │ ├── fonts │ │ │ │ ├── Roboto-Slab-Bold.woff │ │ │ │ ├── Roboto-Slab-Bold.woff2 │ │ │ │ ├── Roboto-Slab-Regular.woff │ │ │ │ ├── Roboto-Slab-Regular.woff2 │ │ │ │ ├── fontawesome-webfont.eot │ │ │ │ ├── fontawesome-webfont.svg │ │ │ │ ├── fontawesome-webfont.ttf │ │ │ │ ├── fontawesome-webfont.woff │ │ │ │ ├── fontawesome-webfont.woff2 │ │ │ │ ├── lato-bold-italic.woff │ │ │ │ ├── lato-bold-italic.woff2 │ │ │ │ ├── lato-bold.woff │ │ │ │ ├── lato-bold.woff2 │ │ │ │ ├── lato-normal-italic.woff │ │ │ │ ├── lato-normal-italic.woff2 │ │ │ │ ├── lato-normal.woff │ │ │ │ └── lato-normal.woff2 │ │ │ └── theme.css │ │ ├── doctools.js │ │ ├── documentation_options.js │ │ ├── down-pressed.png │ │ ├── down.png │ │ ├── file.png │ │ ├── fonts │ │ │ ├── Inconsolata-Bold.ttf │ │ │ ├── Inconsolata-Regular.ttf │ │ │ ├── Inconsolata.ttf │ │ │ ├── Lato-Bold.ttf │ │ │ ├── Lato-Regular.ttf │ │ │ ├── Lato │ │ │ │ ├── lato-bold.eot │ │ │ │ ├── lato-bold.ttf │ │ │ │ ├── lato-bold.woff │ │ │ │ ├── lato-bold.woff2 │ │ │ │ ├── lato-bolditalic.eot │ │ │ │ ├── lato-bolditalic.ttf │ │ │ │ ├── lato-bolditalic.woff │ │ │ │ ├── lato-bolditalic.woff2 │ │ │ │ ├── lato-italic.eot │ │ │ │ ├── lato-italic.ttf │ │ │ │ ├── lato-italic.woff │ │ │ │ ├── lato-italic.woff2 │ │ │ │ ├── lato-regular.eot │ │ │ │ ├── lato-regular.ttf │ │ │ │ ├── lato-regular.woff │ │ │ │ └── lato-regular.woff2 │ │ │ ├── RobotoSlab-Bold.ttf │ │ │ ├── RobotoSlab-Regular.ttf │ │ │ ├── RobotoSlab │ │ │ │ ├── roboto-slab-v7-bold.eot │ │ │ │ ├── roboto-slab-v7-bold.ttf │ │ │ │ ├── roboto-slab-v7-bold.woff │ │ │ │ ├── roboto-slab-v7-bold.woff2 │ │ │ │ ├── roboto-slab-v7-regular.eot │ │ │ │ ├── roboto-slab-v7-regular.ttf │ │ │ │ ├── roboto-slab-v7-regular.woff │ │ │ │ └── roboto-slab-v7-regular.woff2 │ │ │ ├── fontawesome-webfont.eot │ │ │ ├── fontawesome-webfont.svg │ │ │ ├── fontawesome-webfont.ttf │ │ │ ├── fontawesome-webfont.woff │ │ │ └── fontawesome-webfont.woff2 │ │ ├── graphviz.css │ │ ├── jquery-3.2.1.js │ │ ├── jquery-3.5.1.js │ │ ├── jquery.js │ │ ├── js │ │ │ ├── badge_only.js │ │ │ ├── html5shiv-printshiv.min.js │ │ │ ├── html5shiv.min.js │ │ │ ├── jquery-1.11.0.min.js │ │ │ ├── jquery-fix.js │ │ │ ├── modernizr.min.js │ │ │ └── theme.js │ │ ├── language_data.js │ │ ├── minus.png │ │ ├── plus.png │ │ ├── pygments.css │ │ ├── searchtools.js │ │ ├── sidebar.js │ │ ├── underscore-1.3.1.js │ │ ├── underscore.js │ │ ├── up-pressed.png │ │ ├── up.png │ │ └── websupport.js │ │ ├── description.html │ │ ├── genindex.html │ │ ├── index.html │ │ ├── installation.html │ │ ├── license.html │ │ ├── objects.inv │ │ ├── search.html │ │ ├── searchindex.js │ │ ├── stats.html │ │ ├── tips.html │ │ ├── tutorial.html │ │ ├── tutorial_v1.0.0.html │ │ └── tutorial_v2.0.0.html ├── brick_coverage.png ├── conf.py ├── description.rst ├── index.rst ├── installation.rst ├── license.rst ├── make.bat ├── n2h+10_37_coverage.png ├── stage1.png ├── stage1_GUI_1.png ├── stage1_GUI_2.png ├── stage1_GUI_3.png ├── stage1_GUI_4.png ├── stage1_GUI_5.png ├── stage1_GUI_6.png ├── stage2_1.png ├── stage2_2.png ├── stage2_3.png ├── stage2_4.png ├── stage2_GUI_1.png ├── stage2_GUI_2.png ├── stage2_GUI_3.png ├── stage2_GUI_4.png ├── stage2_GUI_5.png ├── stage3_1.png ├── stage3_v2_1.png ├── stage4_GUI_1.png ├── stage4_GUI_2.png ├── stage4_GUI_3.png ├── stage4_GUI_4.png ├── stage5_1.png ├── stage5_2.png ├── stage5_3.png ├── stage5_4.png ├── stage5_5.png ├── stage6_1.png ├── stage6_2.png ├── stage6_3.png ├── stage6_4.png ├── stage6_5.png ├── stats.rst ├── tutorial_v1.0.0.rst └── tutorial_v2.0.0.rst ├── pyproject.toml ├── scousepy ├── SpectralDecomposer.py ├── __init__.py ├── _astropy_init.py ├── colors.py ├── configmaker.py ├── conftest.py ├── data │ └── README.rst ├── dspec.py ├── extern │ └── __init__.py ├── io.py ├── model_housing.py ├── mplstylefile.mplstyle ├── noisy.py ├── parallel_map.py ├── scouse.py ├── scousecoverage.py ├── scousefitchecker.py ├── scousefitter.py ├── scousefittermanual.py ├── scouselearn.py ├── scousespatial.py ├── solution_description.py ├── stage_1.py ├── stage_2.py ├── stage_3.py ├── statistics.py ├── tests │ ├── __init__.py │ ├── coveragerc │ ├── setup_package.py │ └── test_example.py ├── tvregdiff.py ├── utils │ ├── __init__.py │ └── tests │ │ └── __init__.py └── verbose_output.py ├── setup.cfg ├── setup.py ├── tox.ini └── tutorials └── example_script.py /.eggs/README.txt: -------------------------------------------------------------------------------- 1 | This directory contains eggs that were downloaded by setuptools to build, test, and run plug-ins. 2 | 3 | This directory caches those eggs to prevent repeated downloads. 4 | 5 | However, it is safe to delete this directory. 6 | 7 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Compiled files 2 | *.py[cod] 3 | *.a 4 | *.o 5 | *.so 6 | __pycache__ 7 | 8 | # Ignore .c files by default to avoid including generated code. If you want to 9 | # add a non-generated .c extension, use `git add -f filename.c`. 10 | *.c 11 | 12 | # Other generated files 13 | */version.py 14 | */cython_version.py 15 | htmlcov 16 | .coverage 17 | MANIFEST 18 | .ipynb_checkpoints 19 | 20 | # Sphinx 21 | # docs/api 22 | # docs/_build 23 | 24 | # Eclipse editor project files 25 | .project 26 | .pydevproject 27 | .settings 28 | 29 | # Pycharm editor project files 30 | .idea 31 | 32 | # Floobits project files 33 | .floo 34 | .flooignore 35 | 36 | # Packages/installer info 37 | *.egg 38 | *.egg-info 39 | dist 40 | build 41 | eggs 42 | parts 43 | bin 44 | var 45 | sdist 46 | develop-eggs 47 | .installed.cfg 48 | distribute-*.tar.gz 49 | 50 | # Other 51 | .cache 52 | .tox 53 | .*.sw[op] 54 | *~ 55 | .project 56 | .pydevproject 57 | .settings 58 | 59 | # Mac OSX 60 | .DS_Store 61 | 62 | scousepy/version.py 63 | -------------------------------------------------------------------------------- /.readthedocs.yml: -------------------------------------------------------------------------------- 1 | version: 2 2 | 3 | build: 4 | image: latest 5 | 6 | python: 7 | version: 3.8 8 | install: 9 | - method: pip 10 | path: . 11 | extra_requirements: 12 | - docs 13 | # - all 14 | 15 | #formats: [] 16 | -------------------------------------------------------------------------------- /CHANGES.rst: -------------------------------------------------------------------------------- 1 | Version 2.0.0 (unreleased -- developer version) 2 | ----------------------------------------------- 3 | * Workflow update -- scousepy now uses config files for set up. These control basic parameters for use throughout the workflow 4 | * GUI for S1 - basic functionality is the same. Can also be run without using the config files 5 | * GUI for S2 - added derivative spectroscopy for providing initial guesses 6 | * Former S4 now merged into S3 7 | * Former S5 and S6 now merged 8 | * GUI for S3 - adaptive fit checker and fitting functionality 9 | 10 | Version 1.0.0 (2020-06-25) 11 | -------------------------- 12 | Version presented in Henshaw et al. 2019 13 | -------------------------------------------------------------------------------- /LICENSE.rst: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2021 jdhenshaw 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /MANIFEST.in: -------------------------------------------------------------------------------- 1 | include README.rst 2 | include CHANGES.rst 3 | include LICENSE.rst 4 | include pyproject.toml 5 | include setup.cfg 6 | 7 | recursive-include *.pyx *.c *.pxd 8 | recursive-include docs * 9 | recursive-include licenses * 10 | recursive-include cextern * 11 | recursive-include scripts * 12 | 13 | prune build 14 | prune docs/_build 15 | prune docs/api 16 | 17 | 18 | global-exclude *.pyc *.o 19 | -------------------------------------------------------------------------------- /README.rst: -------------------------------------------------------------------------------- 1 | .. image:: docs/SCOUSE_LOGO.png 2 | :width: 850px 3 | :align: center 4 | 5 | About 6 | ===== 7 | 8 | Multi-component spectral line decomposition with ``scousepy``. ``scousepy`` is a 9 | package for the analysis of spectral line data. For a comprehensive description 10 | of the algorithm and functionality please head to 11 | `scousepy.readthedocs.io `_. 12 | 13 | *Note*: ``scousepy`` has undergone some major updates in the latest release, namely: 14 | 15 | * Workflow update -- scousepy now uses config files for set up. These control basic parameters for use throughout the workflow 16 | * GUI for S1 - basic functionality is the same. Can also be run without using the config files 17 | * GUI for S2 - added derivative spectroscopy for providing initial guesses 18 | * Former S4 now merged into S3 19 | * Former S5 and S6 now merged 20 | * GUI for S3 - adaptive fit checker and fitting functionality 21 | 22 | I am in the process of updating the documentation and tutorials. If you need 23 | assistance on running the new version of ``scousepy``, please get in touch. For 24 | now I have included a simple example script in the tutorials directory. 25 | 26 | Basic description 27 | ================= 28 | 29 | ``scousepy`` includes tools for the decomposition of both data cubes, individual 30 | spectra, and lists of specta. 31 | 32 | Cube Fitting 33 | ------------ 34 | 35 | Cube fitting with ``scousepy`` is divided into 4 main stages:: 36 | 37 | 1. Defining the coverage. Here the use informs ``scousepy`` where to fit. 38 | ``scousepy`` will compute basic noise and moments, allowing the user to define a 39 | mask for fitting. Once defined, ``scousepy`` creates a grid of macropixels with 40 | a user defined size and extracts a spatially averaged spectrum from each. This 41 | can be run using the GUI or automatically using the configuration files. 42 | 43 | 2. Fitting the macropixels. ``scousepy`` uses a technique referred to as 44 | derivative spectroscopy to identify the number of components and their key 45 | properties. Fitting is performed via an interactive GUI. 46 | 47 | 3. Automated fitting. ``scousepy`` uses the best-fitting solutions from the 48 | macropixels defined in stage 2 as initial guesses for an automated fitting 49 | process that is controlled via user-defined tolerance levels. 50 | 51 | 4. Quality assessment. Here ``scousepy`` provides a GUI for quality assessment 52 | allowing the user to visually inspect their decomposition. 53 | 54 | Single Spectra and lists of spectra 55 | ----------------------------------- 56 | 57 | ``scousepy`` includes functionality for fitting individual or lists of spectra 58 | using the derivative spectroscopy technique. Further information and tutorials 59 | can be found at `scousepy.readthedocs.io `_. 60 | 61 | 62 | Installing scousepy 63 | =================== 64 | 65 | Requirements 66 | ------------ 67 | 68 | ``scousepy`` requires the following packages: 69 | 70 | * `Python `_ 3.x 71 | 72 | * `numpy `_ 73 | * `matplotlib `_ 74 | * `astropy `_ 75 | * `lmfit `_ 76 | * `tqdm `_ 77 | * `pyspeckit `_ >=0.1.21.dev2682 78 | * `spectral_cube `_ >=0.4.4.dev1809 79 | 80 | Please ensure that you are using the latest developer versions of both ``pyspeckit`` 81 | and ``spectral-cube`` (Github installation). 82 | 83 | **Note that for interactive fitting with pyspeckit you may need to customise your 84 | matplotlib configuration.** Namely, if you're using ``scousepy`` on a Mac you will 85 | most likely need to change your backend from 'macosx' to 'Qt5Agg' (or equiv.). 86 | You can find some information about how to do this `here `_ 87 | 88 | Installation 89 | ------------ 90 | 91 | To install the latest version of ``scousepy``, you can type:: 92 | 93 | git clone https://github.com/jdhenshaw/scousepy 94 | cd scousepy 95 | python setup.py install 96 | 97 | You may need to add the ``--user`` option to the last line if you do not have 98 | root access. 99 | 100 | Reporting issues and getting help 101 | ================================= 102 | 103 | Please help to improve this package by reporting issues via `GitHub `_. 104 | Alternatively, you can get in touch `here `_. 105 | 106 | Developers 107 | ========== 108 | 109 | This package was developed by: 110 | 111 | * Jonathan Henshaw 112 | 113 | `Contributors `_ include: 114 | 115 | * Adam Ginsburg 116 | * Manuel Riener 117 | 118 | Citing scousepy 119 | =============== 120 | 121 | If you make use of this package in a publication, please consider the following 122 | acknowledgements...:: 123 | 124 | @ARTICLE{Henshaw19, 125 | author = {{Henshaw}, J.~D. and {Ginsburg}, A. and {Haworth}, T.~J. and 126 | {Longmore}, S.~N. and {Kruijssen}, J.~M.~D. and {Mills}, E.~A.~C. and 127 | {Sokolov}, V. and {Walker}, D.~L. and {Barnes}, A.~T. and {Contreras}, Y. and 128 | {Bally}, J. and {Battersby}, C. and {Beuther}, H. and {Butterfield}, N. and 129 | {Dale}, J.~E. and {Henning}, T. and {Jackson}, J.~M. and {Kauffmann}, J. and 130 | {Pillai}, T. and {Ragan}, S. and {Riener}, M. and {Zhang}, Q.}, 131 | title = "{`The Brick' is not a brick: a comprehensive study of the structure and dynamics of the central molecular zone cloud G0.253+0.016}", 132 | journal = {\mnras}, 133 | archivePrefix = "arXiv", 134 | eprint = {1902.02793}, 135 | keywords = {turbulence, stars: formation, ISM: clouds, ISM: kinematics and dynamics, ISM: structure, galaxy: centre}, 136 | year = 2019, 137 | month = may, 138 | volume = 485, 139 | pages = {2457-2485}, 140 | doi = {10.1093/mnras/stz471}, 141 | adsurl = {http://adsabs.harvard.edu/abs/2019MNRAS.485.2457H}, 142 | adsnote = {Provided by the SAO/NASA Astrophysics Data System} 143 | } 144 | 145 | @ARTICLE{Henshaw2016, 146 | author = {{Henshaw}, J.~D. and {Longmore}, S.~N. and {Kruijssen}, J.~M.~D. and {Davies}, B. and {Bally}, J. and {Barnes}, A. and {Battersby}, C. and {Burton}, M. and {Cunningham}, M.~R. and {Dale}, J.~E. and {Ginsburg}, A. and {Immer}, K. and {Jones}, P.~A. and {Kendrew}, S. and {Mills}, E.~A.~C. and {Molinari}, S. and {Moore}, T.~J.~T. and {Ott}, J. and {Pillai}, T. and {Rathborne}, J. and {Schilke}, P. and {Schmiedeke}, A. and {Testi}, L. and {Walker}, D. and {Walsh}, A. and {Zhang}, Q.}, 147 | title = "{Molecular gas kinematics within the central 250 pc of the Milky Way}", 148 | journal = {\mnras}, 149 | keywords = {stars: formation, ISM: clouds, ISM: kinematics and dynamics, ISM: structure, Galaxy: centre, galaxies: ISM, Astrophysics - Astrophysics of Galaxies}, 150 | year = 2016, 151 | month = apr, 152 | volume = {457}, 153 | number = {3}, 154 | pages = {2675-2702}, 155 | doi = {10.1093/mnras/stw121}, 156 | archivePrefix = {arXiv}, 157 | eprint = {1601.03732}, 158 | primaryClass = {astro-ph.GA}, 159 | adsurl = {https://ui.adsabs.harvard.edu/abs/2016MNRAS.457.2675H}, 160 | adsnote = {Provided by the SAO/NASA Astrophysics Data System} 161 | } 162 | 163 | Citations courtesy of `ADS `__. 164 | 165 | Please also consider acknowledgements to the required packages in your work. 166 | -------------------------------------------------------------------------------- /docs/Figure_cartoon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/Figure_cartoon.png -------------------------------------------------------------------------------- /docs/Makefile: -------------------------------------------------------------------------------- 1 | # Minimal makefile for Sphinx documentation 2 | # 3 | 4 | # You can set these variables from the command line. 5 | SPHINXOPTS = 6 | SPHINXBUILD = sphinx-build 7 | SOURCEDIR = . 8 | BUILDDIR = _build 9 | 10 | # Put it first so that "make" without argument is like "make help". 11 | help: 12 | @$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) 13 | 14 | .PHONY: help Makefile 15 | 16 | # Catch-all target: route all unknown targets to Sphinx using the new 17 | # "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS). 18 | %: Makefile 19 | @$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) -------------------------------------------------------------------------------- /docs/SCOUSE_LOGO.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/SCOUSE_LOGO.png -------------------------------------------------------------------------------- /docs/_build/doctrees/description.doctree: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/doctrees/description.doctree -------------------------------------------------------------------------------- /docs/_build/doctrees/environment.pickle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/doctrees/environment.pickle -------------------------------------------------------------------------------- /docs/_build/doctrees/index.doctree: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/doctrees/index.doctree -------------------------------------------------------------------------------- /docs/_build/doctrees/installation.doctree: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/doctrees/installation.doctree -------------------------------------------------------------------------------- /docs/_build/doctrees/license.doctree: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/doctrees/license.doctree -------------------------------------------------------------------------------- /docs/_build/doctrees/stats.doctree: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/doctrees/stats.doctree -------------------------------------------------------------------------------- /docs/_build/doctrees/tips.doctree: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/doctrees/tips.doctree -------------------------------------------------------------------------------- /docs/_build/doctrees/tutorial.doctree: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/doctrees/tutorial.doctree -------------------------------------------------------------------------------- /docs/_build/doctrees/tutorial_v1.0.0.doctree: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/doctrees/tutorial_v1.0.0.doctree -------------------------------------------------------------------------------- /docs/_build/doctrees/tutorial_v2.0.0.doctree: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/doctrees/tutorial_v2.0.0.doctree -------------------------------------------------------------------------------- /docs/_build/html/.buildinfo: -------------------------------------------------------------------------------- 1 | # Sphinx build info version 1 2 | # This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. 3 | config: cf432b621010090e2bf9affeea60c5ba 4 | tags: 645f666f9bcd5a90fca523b33c5a78b7 5 | -------------------------------------------------------------------------------- /docs/_build/html/.doctrees/description.doctree: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/.doctrees/description.doctree -------------------------------------------------------------------------------- /docs/_build/html/.doctrees/environment.pickle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/.doctrees/environment.pickle -------------------------------------------------------------------------------- /docs/_build/html/.doctrees/index.doctree: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/.doctrees/index.doctree -------------------------------------------------------------------------------- /docs/_build/html/.doctrees/installation.doctree: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/.doctrees/installation.doctree -------------------------------------------------------------------------------- /docs/_build/html/.doctrees/license.doctree: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/.doctrees/license.doctree -------------------------------------------------------------------------------- /docs/_build/html/.doctrees/tutorial_v1.0.0.doctree: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/.doctrees/tutorial_v1.0.0.doctree -------------------------------------------------------------------------------- /docs/_build/html/_images/Figure_cartoon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_images/Figure_cartoon.png -------------------------------------------------------------------------------- /docs/_build/html/_images/SCOUSE_LOGO.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_images/SCOUSE_LOGO.png -------------------------------------------------------------------------------- /docs/_build/html/_images/brick_coverage.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_images/brick_coverage.png -------------------------------------------------------------------------------- /docs/_build/html/_images/n2h+10_37_coverage.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_images/n2h+10_37_coverage.png -------------------------------------------------------------------------------- /docs/_build/html/_images/stage1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_images/stage1.png -------------------------------------------------------------------------------- /docs/_build/html/_images/stage1_GUI_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_images/stage1_GUI_1.png -------------------------------------------------------------------------------- /docs/_build/html/_images/stage1_GUI_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_images/stage1_GUI_2.png -------------------------------------------------------------------------------- /docs/_build/html/_images/stage1_GUI_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_images/stage1_GUI_3.png -------------------------------------------------------------------------------- /docs/_build/html/_images/stage1_GUI_4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_images/stage1_GUI_4.png -------------------------------------------------------------------------------- /docs/_build/html/_images/stage1_GUI_5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_images/stage1_GUI_5.png -------------------------------------------------------------------------------- /docs/_build/html/_images/stage1_GUI_6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_images/stage1_GUI_6.png -------------------------------------------------------------------------------- /docs/_build/html/_images/stage2_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_images/stage2_1.png -------------------------------------------------------------------------------- /docs/_build/html/_images/stage2_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_images/stage2_2.png -------------------------------------------------------------------------------- /docs/_build/html/_images/stage2_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_images/stage2_3.png -------------------------------------------------------------------------------- /docs/_build/html/_images/stage2_4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_images/stage2_4.png -------------------------------------------------------------------------------- /docs/_build/html/_images/stage2_GUI_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_images/stage2_GUI_1.png -------------------------------------------------------------------------------- /docs/_build/html/_images/stage2_GUI_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_images/stage2_GUI_2.png -------------------------------------------------------------------------------- /docs/_build/html/_images/stage2_GUI_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_images/stage2_GUI_3.png -------------------------------------------------------------------------------- /docs/_build/html/_images/stage2_GUI_4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_images/stage2_GUI_4.png -------------------------------------------------------------------------------- /docs/_build/html/_images/stage2_GUI_5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_images/stage2_GUI_5.png -------------------------------------------------------------------------------- /docs/_build/html/_images/stage3_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_images/stage3_1.png -------------------------------------------------------------------------------- /docs/_build/html/_images/stage3_v2_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_images/stage3_v2_1.png -------------------------------------------------------------------------------- /docs/_build/html/_images/stage4_GUI_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_images/stage4_GUI_1.png -------------------------------------------------------------------------------- /docs/_build/html/_images/stage4_GUI_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_images/stage4_GUI_2.png -------------------------------------------------------------------------------- /docs/_build/html/_images/stage4_GUI_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_images/stage4_GUI_3.png -------------------------------------------------------------------------------- /docs/_build/html/_images/stage4_GUI_4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_images/stage4_GUI_4.png -------------------------------------------------------------------------------- /docs/_build/html/_images/stage5_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_images/stage5_1.png -------------------------------------------------------------------------------- /docs/_build/html/_images/stage5_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_images/stage5_2.png -------------------------------------------------------------------------------- /docs/_build/html/_images/stage5_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_images/stage5_3.png -------------------------------------------------------------------------------- /docs/_build/html/_images/stage5_4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_images/stage5_4.png -------------------------------------------------------------------------------- /docs/_build/html/_images/stage5_5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_images/stage5_5.png -------------------------------------------------------------------------------- /docs/_build/html/_images/stage6_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_images/stage6_1.png -------------------------------------------------------------------------------- /docs/_build/html/_images/stage6_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_images/stage6_2.png -------------------------------------------------------------------------------- /docs/_build/html/_images/stage6_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_images/stage6_3.png -------------------------------------------------------------------------------- /docs/_build/html/_images/stage6_4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_images/stage6_4.png -------------------------------------------------------------------------------- /docs/_build/html/_images/stage6_5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_images/stage6_5.png -------------------------------------------------------------------------------- /docs/_build/html/_sources/description.rst.txt: -------------------------------------------------------------------------------- 1 | .. _description: 2 | 3 | ******************************** 4 | A brief introduction to scousepy 5 | ******************************** 6 | 7 | Spectral decomposition with ``scousepy`` is broken up into a sequence of distinct 8 | stages. Each stage is summarised below. More information on executing each of 9 | these steps can be found in the tutorials. 10 | 11 | .. image:: Figure_cartoon.png 12 | :width: 850px 13 | :align: center 14 | 15 | Stage 0: preparation step 16 | ~~~~~~~~~~~~~~~~~~~~~~~~~ 17 | The preparation step involves the creation of configuration files that ``scousepy`` 18 | will use to run the fitting. The first is ``scousepy.config``. This contains the 19 | top-level information for fitting including information on the directory structure, 20 | the number of cpus for parallelised fitting, and optional keywords. The second is 21 | ``coverage.config``. This contains all relevant information for the definition of 22 | the coverage (stage 1). 23 | 24 | Stage 1: defining the coverage 25 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 26 | 27 | Here ``scousepy`` identifies the spatial area over which to fit the data. There 28 | are two different ways this can be achieved: 1) via an interactive GUI; 2) via 29 | the configuration file ``coverage.config''. 30 | 31 | Both methods generate a grid of *spectral averaging areas (SAAs)*. In the 32 | interactive mode, ``scousepy`` will generate moment maps based on user defined 33 | variables that are supplied as keywords within a ``matplotlib`` GUI. These 34 | *optional* keywords include a mask threshold as well as ranges in the ``x``, 35 | ``y``, and ``velocity`` axes. In the non-interactive mode, the keywords are supplied 36 | via ``coverage.config''. The user can also port a ready made mask for the 37 | coverage definition via the `mask_coverage` keyword, which should be a path 38 | to a FITS file which will act as the mask. 39 | 40 | In defining the coverage the user must supply the size of the SAAs, which is 41 | provided via `wsaa` (corresponding to the width, in pixels, of the SAA). The 42 | user can also provide a filling factor via `fillfactor`. This keyword will 43 | allow ``scousepy`` to reject all SAAs, where the fractional number of significant 44 | pixels contained within a given SAA does not satisfy this constraint. Extra 45 | refinement of the SAAs (i.e. for complex regions) can be controlled using the 46 | keyword `refine_grid`. By default, the SAAs are Nyquist sampled. This means 47 | that any given spectrum may have multiple solutions. 48 | 49 | Stage 2: fitting the spectral averaging areas 50 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 51 | 52 | User-interactive fitting of the spatially averaged spectra output from stage 1. 53 | Running stage 2 will launch a GUI for interactive fitting of the spectra extracted 54 | from the SAAs. 55 | 56 | ``scousepy`` uses a technique called *derivative spectroscopy* to provide initial 57 | guesses for the decomposition of the SAA spectra. Derivative spectroscopy 58 | identifies peaks in the data by computing the derivatives of the spectrum 59 | (shown in the top-left panel of the GUI). The method is controlled by two 60 | parameters that can be adjusted using the sliders at the top of the GUI, 61 | `SNR` and `alpha`. The former is the signal-to-noise requirement for all identified 62 | peaks, and the latter controls the kernel size for smoothing of the spectrum. 63 | Smoothing is required to avoid noise amplification in the derivative spectra. 64 | 65 | The fit from derivative spectroscopy can be overruled by initiating the interactive 66 | fitter from `pyspeckit `_. 67 | 68 | The user can navigate through the spectra using the buttons at the bottom of the 69 | GUI. The user may also choose to apply derivative spectroscopy to all of the 70 | spectra using the default (or current) values of `SNR` and `alpha`. 71 | 72 | Stage 3: automated fitting 73 | ~~~~~~~~~~~~~~~~~~~~~~~~~~ 74 | 75 | Non user-interactive fitting of the individual spectra contained within all SAAs. 76 | The user is required to input several tolerance levels to ``scousepy``. Please 77 | refer to `Henshaw et al. 2016 `_ 78 | for more details on each of these. These are supplied via the ``scousepy.config`` 79 | file. 80 | 81 | The Nyquist sampling of the SAAs means that a given spectrum may have multiple 82 | solutions. ``scousepy`` identifies the best-fitting solution via the Akaike 83 | Information Criterion (AIC). The AIC is a measure of relative fitting quality 84 | which is used for fitting evaluation and model selection. The decision is in 85 | favour of the model with the lowest AIC. The AIC is given 86 | 87 | .. math:: 88 | 89 | \mathrm{AIC}=2(k-L) 90 | 91 | in which :math:`k` is the number of free parameters, and :math:`L` is the log 92 | likelihood function of the model evaluated at the maximum likelihood estimate 93 | (i. e., the parameters for which L is maximized). More generally, ``scousepy`` 94 | computes the AIC assuming that the observations are Gaussian distributed such 95 | that 96 | 97 | .. math:: 98 | 99 | \mathrm{AIC}=n\,\mathrm{ln}\bigg(\frac{SSR}{n}\bigg)+2k 100 | 101 | in which :math:`SSR` is the sum of the squared residuals and :math:`n` is the 102 | sample size. In the event that the sample size is not large enough :math:`n<40`, 103 | a correction is applied 104 | 105 | .. math:: 106 | 107 | \mathrm{AIC}=n\,\mathrm{ln}\bigg(\frac{SSR}{n}\bigg)+2k+\frac{2k(k+1)}{n-k-1}. 108 | 109 | The computation is handled via `astropy `_. 110 | 111 | To select the best-fitting solution, ``scousepy`` uses the following rule of 112 | thumb from Burnham and Anderson 2002, pg. 70: 113 | 114 | .. math:: 115 | 116 | \Delta \mathrm{AIC}_{i}=\mathrm{AIC}_{i}-\mathrm{AIC}_{min} 117 | 118 | .. math:: 119 | 120 | \Delta \mathrm{AIC}_{i}<2\;\mathrm{substantial\;support\;for\;model}\;i 121 | 122 | .. math:: 123 | 124 | 4<\Delta \mathrm{AIC}_{i}<7\;\mathrm{considerably\;less\;support\;for\;model}\;i 125 | 126 | .. math:: 127 | 128 | \Delta \mathrm{AIC}_{i}>10\;\mathrm{essentially\;no\;support\;for\;model}\;i 129 | 130 | where :math:`\mathrm{AIC}_{min}` is the minimum :math:`\mathrm{AIC}` value out of 131 | the models compared. 132 | 133 | 134 | Stage 4: quality control 135 | ~~~~~~~~~~~~~~~~~~~~~~~~ 136 | 137 | Quality control of the best-fitting solutions derived in stage 3. Running 138 | stage 4 will launch a GUI displaying various diagnostic plots of the goodness-of-fit 139 | statistics output by the decomposition. Clicking on this image will display a 140 | grid of spectra in the central panel for closer inspection. Clicking on one of 141 | those spectra will plot the selected spectrum in the right-hand panel. At this 142 | point the user has the option to select an alternative model solution (if 143 | available) or re-enter the fitting procedure, either using derivative spectroscopy 144 | or via the manual fitting procedure implemented in `pyspeckit `_. 145 | -------------------------------------------------------------------------------- /docs/_build/html/_sources/index.rst.txt: -------------------------------------------------------------------------------- 1 | .. image:: ./SCOUSE_LOGO.png 2 | :align: center 3 | :width: 750 4 | 5 | | 6 | 7 | ******** 8 | scousepy 9 | ******** 10 | 11 | Multi-component spectral line decomposition with ``scousepy``. ``scousepy`` is a 12 | package for the analysis of spectral line data. A detailed 13 | description of the method (and the original `IDL version 14 | `_ of the code) 15 | can be found in `Henshaw et al. 2016 `_. 16 | In the following pages you will find a :ref:`brief introduction ` 17 | to the method as well as a :ref:`tutorial `. The `source code 18 | `_ is available on GitHub and comments 19 | and contributions are very welcome. 20 | 21 | Documentation 22 | ~~~~~~~~~~~~~ 23 | 24 | .. toctree:: 25 | :maxdepth: 4 26 | 27 | installation.rst 28 | description.rst 29 | tutorial_v2.0.0.rst 30 | stats.rst 31 | tutorial_v1.0.0.rst 32 | license.rst 33 | 34 | Reporting issues and getting help 35 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 36 | 37 | Please help to improve this package by reporting `issues 38 | `_ via GitHub. Alternatively, if 39 | you have any questions or if you are having any problems getting set up you can 40 | get in touch `here `_. 41 | 42 | Developers 43 | ~~~~~~~~~~ 44 | 45 | This package was developed by: 46 | 47 | * Jonathan Henshaw 48 | 49 | Contributors include: 50 | 51 | * Adam Ginsburg 52 | * Manuel Riener 53 | 54 | Citing scousepy 55 | ~~~~~~~~~~~~~~~ 56 | 57 | If you make use of this package in a publication, please consider the following 58 | acknowledgements...:: 59 | 60 | @ARTICLE{Henshaw19, 61 | author = {{Henshaw}, J.~D. and {Ginsburg}, A. and {Haworth}, T.~J. and 62 | {Longmore}, S.~N. and {Kruijssen}, J.~M.~D. and {Mills}, E.~A.~C. and 63 | {Sokolov}, V. and {Walker}, D.~L. and {Barnes}, A.~T. and {Contreras}, Y. and 64 | {Bally}, J. and {Battersby}, C. and {Beuther}, H. and {Butterfield}, N. and 65 | {Dale}, J.~E. and {Henning}, T. and {Jackson}, J.~M. and {Kauffmann}, J. and 66 | {Pillai}, T. and {Ragan}, S. and {Riener}, M. and {Zhang}, Q.}, 67 | title = "{`The Brick' is not a brick: a comprehensive study of the structure and dynamics of the central molecular zone cloud G0.253+0.016}", 68 | journal = {\mnras}, 69 | archivePrefix = "arXiv", 70 | eprint = {1902.02793}, 71 | keywords = {turbulence, stars: formation, ISM: clouds, ISM: kinematics and dynamics, ISM: structure, galaxy: centre}, 72 | year = 2019, 73 | month = may, 74 | volume = 485, 75 | pages = {2457-2485}, 76 | doi = {10.1093/mnras/stz471}, 77 | adsurl = {http://adsabs.harvard.edu/abs/2019MNRAS.485.2457H}, 78 | adsnote = {Provided by the SAO/NASA Astrophysics Data System} 79 | } 80 | 81 | @ARTICLE{Henshaw2016, 82 | author = {{Henshaw}, J.~D. and {Longmore}, S.~N. and {Kruijssen}, J.~M.~D. and {Davies}, B. and {Bally}, J. and {Barnes}, A. and {Battersby}, C. and {Burton}, M. and {Cunningham}, M.~R. and {Dale}, J.~E. and {Ginsburg}, A. and {Immer}, K. and {Jones}, P.~A. and {Kendrew}, S. and {Mills}, E.~A.~C. and {Molinari}, S. and {Moore}, T.~J.~T. and {Ott}, J. and {Pillai}, T. and {Rathborne}, J. and {Schilke}, P. and {Schmiedeke}, A. and {Testi}, L. and {Walker}, D. and {Walsh}, A. and {Zhang}, Q.}, 83 | title = "{Molecular gas kinematics within the central 250 pc of the Milky Way}", 84 | journal = {\mnras}, 85 | keywords = {stars: formation, ISM: clouds, ISM: kinematics and dynamics, ISM: structure, Galaxy: centre, galaxies: ISM, Astrophysics - Astrophysics of Galaxies}, 86 | year = 2016, 87 | month = apr, 88 | volume = {457}, 89 | number = {3}, 90 | pages = {2675-2702}, 91 | doi = {10.1093/mnras/stw121}, 92 | archivePrefix = {arXiv}, 93 | eprint = {1601.03732}, 94 | primaryClass = {astro-ph.GA}, 95 | adsurl = {https://ui.adsabs.harvard.edu/abs/2016MNRAS.457.2675H}, 96 | adsnote = {Provided by the SAO/NASA Astrophysics Data System} 97 | } 98 | 99 | Citations courtesy of `ADS `__. 100 | 101 | Please also consider acknowledgements to the required packages in your work. 102 | 103 | Papers using scousepy 104 | ~~~~~~~~~~~~~~~~~~~~~ 105 | 106 | * Hu, Lazarian, & Wang 2021, MNRAS, submitted 107 | * Henshaw et al. 2021, MNRAS, 509, 4758 108 | * Liu, Hu, & Lazarian 2021, MNRAS, 501, 4952 109 | * Barnes et al. 2021, MNRAS, 503, 4601 110 | * Callanan et al. 2021, MNRAS, 505, 4310 111 | * Yue et al. 2021, RAA, 21, 24 112 | * Cosentino et al. 2020, MNRAS, 499, 1666 113 | * Henshaw et al. 2020, Nat. Ast. 4, 1064 114 | * Henshaw et al. 2019, MNRAS, 485, 2457 115 | * Cosentino et al. 2018, MNRAS, 474, 3760 116 | * Henshaw, Longmore, Kruijssen, 2016, MNRAS, 463L, 122 117 | * Henshaw et al. 2016, MNRAS, 457, 2675 118 | 119 | Recipe 120 | ~~~~~~ 121 | 122 | Recipe for a fine Liverpudlian `Scouse pie 123 | `_. 124 | -------------------------------------------------------------------------------- /docs/_build/html/_sources/installation.rst.txt: -------------------------------------------------------------------------------- 1 | *********************** 2 | Installing ``scousepy`` 3 | *********************** 4 | 5 | Requirements 6 | ~~~~~~~~~~~~ 7 | 8 | ``scousepy`` requires the following packages: 9 | 10 | * `Python `_ 3.x 11 | 12 | * `numpy `_ 13 | * `matplotlib `_ 14 | * `astropy `_ 15 | * `lmfit `_ 16 | * `tqdm `_ 17 | * `pyspeckit `_ >=0.1.21.dev2682 18 | * `spectral_cube `_ >=0.4.4.dev1809 19 | 20 | Please ensure that you are using the latest developer versions of both ``pyspeckit`` 21 | and ``spectral-cube`` (Github installation). 22 | 23 | Note that for interactive fitting with pyspeckit you may need to customise your 24 | matplotlib configuration. Namely, if you're using ``scousepy`` on a Mac you will 25 | most likely need to change your backend from 'macosx' to 'Qt5Agg' (or equiv.). 26 | You can find some information about how to do this `here `_ 27 | 28 | Installation 29 | ~~~~~~~~~~~~ 30 | 31 | To install the latest version of ``scousepy``, you can type:: 32 | 33 | git clone https://github.com/jdhenshaw/scousepy 34 | cd scousepy 35 | python setup.py install 36 | 37 | You may need to add the ``--user`` option to the last line if you do not have 38 | root access. 39 | -------------------------------------------------------------------------------- /docs/_build/html/_sources/license.rst.txt: -------------------------------------------------------------------------------- 1 | ******* 2 | License 3 | ******* 4 | 5 | MIT License 6 | 7 | Copyright (c) 2017-2021 Jonathan D. Henshaw 8 | 9 | Permission is hereby granted, free of charge, to any person obtaining a copy 10 | of this software and associated documentation files (the "Software"), to deal 11 | in the Software without restriction, including without limitation the rights 12 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 13 | copies of the Software, and to permit persons to whom the Software is 14 | furnished to do so, subject to the following conditions: 15 | 16 | The above copyright notice and this permission notice shall be included in all 17 | copies or substantial portions of the Software. 18 | 19 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 20 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 21 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 22 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 23 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 24 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 25 | SOFTWARE. 26 | -------------------------------------------------------------------------------- /docs/_build/html/_sources/tips.rst.txt: -------------------------------------------------------------------------------- 1 | .. _tips: 2 | 3 | *************** 4 | Tips and Tricks 5 | *************** 6 | 7 | Bitesized Fitting 8 | ~~~~~~~~~~~~~~~~~ 9 | 10 | One thing that I have found particularly useful in my own work is to break the 11 | fitting process up into chunks. This can be really helpful if you have a lot of 12 | spectra to fit. I have included a bitesized fitting process into ``scousepy`` 13 | which can be run in stage 2 in the following way... :: 14 | 15 | if os.path.exists(datadirectory+filename+'/stage_2/s2.scousepy'): 16 | s.load_stage_2(datadirectory+filename+'/stage_2/s2.scousepy') 17 | else: 18 | s = scouse.stage_2(s, verbose=verb, write_ascii=True, bitesize=True, nspec=10) 19 | 20 | s = scouse.stage_2(s, verbose=verb, write_ascii=True, bitesize=True, nspec=100) 21 | 22 | Check out the :ref:`Complete Example ` in the tutorial 23 | section of the documentation to understand what is going on here with some more 24 | context. However, in short, the first run I have used the keywords ``bitesize=True`` 25 | and ``nspec=10``. This will fit the first 10 spectra as normal. Note the 26 | indentation on the second call to stage 2. After the first run with 10 spectra 27 | each subsequent call to the code will load the ``s2.scousepy`` file and then 28 | 100 spectra will be fitted until the process is complete. Of course, you can 29 | change this to whatever value you like. 30 | -------------------------------------------------------------------------------- /docs/_build/html/_static/ajax-loader.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/ajax-loader.gif -------------------------------------------------------------------------------- /docs/_build/html/_static/astropy_linkout.svg: -------------------------------------------------------------------------------- 1 | 2 | 13 | 15 | 17 | 21 | 25 | 26 | 27 | 30 | 33 | 37 | 41 | 45 | 49 | 53 | 57 | 61 | 62 | 66 | 70 | 74 | 75 | 76 | -------------------------------------------------------------------------------- /docs/_build/html/_static/astropy_linkout_20.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/astropy_linkout_20.png -------------------------------------------------------------------------------- /docs/_build/html/_static/astropy_logo.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/astropy_logo.ico -------------------------------------------------------------------------------- /docs/_build/html/_static/astropy_logo.svg: -------------------------------------------------------------------------------- 1 | 2 | 14 | 16 | 18 | 22 | 26 | 27 | 36 | 37 | 40 | 47 | 52 | 57 | 61 | 64 | 68 | 72 | 76 | 77 | 81 | 86 | 87 | 88 | -------------------------------------------------------------------------------- /docs/_build/html/_static/astropy_logo_32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/astropy_logo_32.png -------------------------------------------------------------------------------- /docs/_build/html/_static/bootstrap-2.3.2/img/glyphicons-halflings-white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/bootstrap-2.3.2/img/glyphicons-halflings-white.png -------------------------------------------------------------------------------- /docs/_build/html/_static/bootstrap-2.3.2/img/glyphicons-halflings.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/bootstrap-2.3.2/img/glyphicons-halflings.png -------------------------------------------------------------------------------- /docs/_build/html/_static/bootstrap-3.3.7/fonts/glyphicons-halflings-regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/bootstrap-3.3.7/fonts/glyphicons-halflings-regular.eot -------------------------------------------------------------------------------- /docs/_build/html/_static/bootstrap-3.3.7/fonts/glyphicons-halflings-regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/bootstrap-3.3.7/fonts/glyphicons-halflings-regular.ttf -------------------------------------------------------------------------------- /docs/_build/html/_static/bootstrap-3.3.7/fonts/glyphicons-halflings-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/bootstrap-3.3.7/fonts/glyphicons-halflings-regular.woff -------------------------------------------------------------------------------- /docs/_build/html/_static/bootstrap-3.3.7/fonts/glyphicons-halflings-regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/bootstrap-3.3.7/fonts/glyphicons-halflings-regular.woff2 -------------------------------------------------------------------------------- /docs/_build/html/_static/bootstrap-3.3.7/js/npm.js: -------------------------------------------------------------------------------- 1 | // This file is autogenerated via the `commonjs` Grunt task. You can require() this file in a CommonJS environment. 2 | require('../../js/transition.js') 3 | require('../../js/alert.js') 4 | require('../../js/button.js') 5 | require('../../js/carousel.js') 6 | require('../../js/collapse.js') 7 | require('../../js/dropdown.js') 8 | require('../../js/modal.js') 9 | require('../../js/tooltip.js') 10 | require('../../js/popover.js') 11 | require('../../js/scrollspy.js') 12 | require('../../js/tab.js') 13 | require('../../js/affix.js') -------------------------------------------------------------------------------- /docs/_build/html/_static/bootstrap-sphinx.css: -------------------------------------------------------------------------------- 1 | /* 2 | * bootstrap-sphinx.css 3 | * ~~~~~~~~~~~~~~~~~~~~ 4 | * 5 | * Sphinx stylesheet -- Bootstrap theme. 6 | */ 7 | 8 | /* 9 | * Imports to aggregate everything together. 10 | */ 11 | 12 | @import url("./basic.css"); 13 | 14 | 15 | 16 | 17 | 18 | 19 | @import url("./bootstrap-3.3.7/css/bootstrap.min.css"); 20 | @import url("./bootstrap-3.3.7/css/bootstrap-theme.min.css"); 21 | 22 | 23 | /* 24 | * Styles 25 | */ 26 | 27 | .navbar-inverse .brand { 28 | color: #FFF; 29 | } 30 | 31 | /* 32 | * Reset navbar styles from overrides in: 33 | * https://bitbucket.org/birkenfeld/sphinx/commits/78d8ebf76b630ab4073a7328af9d91e8123b8d96 34 | */ 35 | .navbar .container { 36 | padding-top: 0; 37 | } 38 | 39 | /* 40 | * Reset the logo image dimensions. Sites like RTD can override with bad 41 | * results on mobile (mega-huge logo...) 42 | * 43 | * https://github.com/ryan-roemer/sphinx-bootstrap-theme/issues/142 44 | */ 45 | .navbar-brand img { 46 | width: auto; 47 | height: 100%; 48 | } 49 | 50 | .page-top { 51 | top: 0px; 52 | } 53 | 54 | 55 | 56 | 57 | 58 | body { 59 | 60 | padding-top: 40px; 61 | 62 | } 63 | .page-top { 64 | 65 | top: 40px; 66 | 67 | } 68 | 69 | 70 | 71 | .navbar-inner { 72 | padding-left: 12px !important; 73 | padding-right: 12px !important; 74 | } 75 | 76 | 77 | table { 78 | border: 0; 79 | } 80 | 81 | .highlighttable .code pre { 82 | font-size: 12px; 83 | } 84 | 85 | .highlighttable .linenos pre { 86 | word-break: normal; 87 | font-size: 12px; 88 | } 89 | 90 | div.highlight { 91 | background: none; 92 | } 93 | 94 | a.headerlink { 95 | margin-left: 0.25em; 96 | } 97 | 98 | a.footnote-reference { 99 | vertical-align: super; 100 | font-size: 75%; 101 | } 102 | 103 | table.footnote td.label { 104 | color: inherit; 105 | font-size: 100%; 106 | display: block; 107 | line-height: normal; 108 | background: inherit; 109 | } 110 | 111 | table.footnote { 112 | width: auto; 113 | margin-bottom: 0px; 114 | } 115 | 116 | table.field-list { 117 | width: auto; 118 | } 119 | 120 | .footer { 121 | width: 100%; 122 | border-top: 1px solid #ccc; 123 | padding-top: 10px; 124 | } 125 | 126 | .bs-sidenav form, .bs-sidenav #sourcelink { 127 | padding: 5px 20px; 128 | } 129 | 130 | 131 | 132 | /* The code below is based on the bootstrap website sidebar */ 133 | 134 | .bs-sidenav.affix { 135 | position: static; 136 | } 137 | 138 | /* First level of nav */ 139 | .bs-sidenav { 140 | margin-top: 30px; 141 | margin-bottom: 30px; 142 | padding-top: 10px; 143 | padding-bottom: 10px; 144 | text-shadow: 0 1px 0 #fff; 145 | background-color: #f7f5fa; 146 | border-radius: 5px; 147 | } 148 | 149 | /* All levels of nav */ 150 | .bs-sidenav .nav > li > a { 151 | display: block; 152 | color: #716b7a; 153 | padding: 5px 20px; 154 | } 155 | .bs-sidenav .nav > li > a:hover, 156 | .bs-sidenav .nav > li > a:focus { 157 | text-decoration: none; 158 | background-color: #e5e3e9; 159 | border-right: 1px solid #dbd8e0; 160 | } 161 | .bs-sidenav .nav > .active > a, 162 | .bs-sidenav .nav > .active:hover > a, 163 | .bs-sidenav .nav > .active:focus > a { 164 | font-weight: bold; 165 | color: #563d7c; 166 | background-color: transparent; 167 | border-right: 1px solid #563d7c; 168 | } 169 | 170 | .bs-sidenav .nav .nav > li > a { 171 | padding-top: 3px; 172 | padding-bottom: 3px; 173 | padding-left: 30px; 174 | font-size: 90%; 175 | } 176 | 177 | .bs-sidenav .nav .nav .nav > li > a { 178 | padding-top: 3px; 179 | padding-bottom: 3px; 180 | padding-left: 40px; 181 | font-size: 90%; 182 | } 183 | 184 | .bs-sidenav .nav .nav .nav .nav > li > a { 185 | padding-top: 3px; 186 | padding-bottom: 3px; 187 | padding-left: 50px; 188 | font-size: 90%; 189 | } 190 | 191 | /* Show and affix the side nav when space allows it */ 192 | @media screen and (min-width: 992px) { 193 | .bs-sidenav .nav > .active > ul { 194 | display: block; 195 | } 196 | /* Widen the fixed sidenav */ 197 | .bs-sidenav.affix, 198 | .bs-sidenav.affix-bottom { 199 | width: 213px; 200 | } 201 | .bs-sidenav.affix { 202 | position: fixed; /* Undo the static from mobile first approach */ 203 | } 204 | .bs-sidenav.affix-bottom { 205 | position: absolute; /* Undo the static from mobile first approach */ 206 | } 207 | .bs-sidenav.affix-bottom .bs-sidenav, 208 | .bs-sidenav.affix .bs-sidenav { 209 | margin-top: 0; 210 | margin-bottom: 0; 211 | } 212 | } 213 | @media screen and (min-width: 1200px) { 214 | /* Widen the fixed sidenav again */ 215 | .bs-sidenav.affix-bottom, 216 | .bs-sidenav.affix { 217 | width: 263px; 218 | } 219 | } 220 | 221 | 222 | -------------------------------------------------------------------------------- /docs/_build/html/_static/bootstrap-sphinx.js: -------------------------------------------------------------------------------- 1 | (function ($) { 2 | /** 3 | * Patch TOC list. 4 | * 5 | * Will mutate the underlying span to have a correct ul for nav. 6 | * 7 | * @param $span: Span containing nested UL"s to mutate. 8 | * @param minLevel: Starting level for nested lists. (1: global, 2: local). 9 | */ 10 | var patchToc = function ($ul, minLevel) { 11 | var findA, 12 | patchTables, 13 | $localLi; 14 | 15 | // Find all a "internal" tags, traversing recursively. 16 | findA = function ($elem, level) { 17 | level = level || 0; 18 | var $items = $elem.find("> li > a.internal, > ul, > li > ul"); 19 | 20 | // Iterate everything in order. 21 | $items.each(function (index, item) { 22 | var $item = $(item), 23 | tag = item.tagName.toLowerCase(), 24 | $childrenLi = $item.children("li"), 25 | $parentLi = $($item.parent("li"), $item.parent().parent("li")); 26 | 27 | // Add dropdowns if more children and above minimum level. 28 | if (tag === "ul" && level >= minLevel && $childrenLi.length > 0) { 29 | $parentLi 30 | .addClass("dropdown-submenu") 31 | .children("a").first().attr("tabindex", -1); 32 | 33 | $item.addClass("dropdown-menu"); 34 | } 35 | 36 | findA($item, level + 1); 37 | }); 38 | }; 39 | 40 | findA($ul); 41 | }; 42 | 43 | /** 44 | * Patch all tables to remove ``docutils`` class and add Bootstrap base 45 | * ``table`` class. 46 | */ 47 | patchTables = function () { 48 | $("table.docutils") 49 | .removeClass("docutils") 50 | .addClass("table") 51 | .attr("border", 0); 52 | }; 53 | 54 | $(window).load(function () { 55 | /* 56 | * Scroll the window to avoid the topnav bar 57 | * https://github.com/twbs/bootstrap/issues/1768 58 | */ 59 | if ($("#navbar.navbar-fixed-top").length > 0) { 60 | var navHeight = $("#navbar").height(), 61 | shiftWindow = function() { scrollBy(0, -navHeight - 10); }; 62 | 63 | if (location.hash) { 64 | setTimeout(shiftWindow, 1); 65 | } 66 | 67 | window.addEventListener("hashchange", shiftWindow); 68 | } 69 | }); 70 | 71 | $(document).ready(function () { 72 | // Add styling, structure to TOC"s. 73 | $(".dropdown-menu").each(function () { 74 | $(this).find("ul").each(function (index, item){ 75 | var $item = $(item); 76 | $item.addClass("unstyled"); 77 | }); 78 | }); 79 | 80 | // Global TOC. 81 | if ($("ul.globaltoc li").length) { 82 | patchToc($("ul.globaltoc"), 1); 83 | } else { 84 | // Remove Global TOC. 85 | $(".globaltoc-container").remove(); 86 | } 87 | 88 | // Local TOC. 89 | $(".bs-sidenav ul").addClass("nav nav-list"); 90 | $(".bs-sidenav > ul > li > a").addClass("nav-header"); 91 | 92 | 93 | // back to top 94 | setTimeout(function () { 95 | var $sideBar = $(".bs-sidenav"); 96 | var $content = $(".content"); 97 | 98 | // Enlarge content if sidebar is larger. 99 | if ($sideBar.outerHeight(true) > $content.outerHeight(true)) { 100 | $content.css("min-height", $sideBar.outerHeight(true)); 101 | } 102 | 103 | $sideBar 104 | // Add affix. 105 | .affix({ 106 | offset: { 107 | top: function () { 108 | var offsetTop = $sideBar.offset().top; 109 | var sideBarMargin = parseInt($sideBar.css("margin-top"), 10); 110 | var navOuterHeight = $("#navbar").outerHeight(true); 111 | 112 | return (this.top = offsetTop - navOuterHeight); 113 | }, 114 | bottom: function () { 115 | return (this.bottom = $(".footer").outerHeight(true)); 116 | } 117 | } 118 | }) 119 | // Trigger to reset if page content is scrolled to bottom. 120 | .trigger("scroll.bs.affix.data-api"); 121 | }, 0); 122 | 123 | 124 | // Local TOC. 125 | patchToc($("ul.localtoc"), 2); 126 | 127 | // Mutate sub-lists (for bs-2.3.0). 128 | $(".dropdown-menu ul").not(".dropdown-menu").each(function () { 129 | var $ul = $(this), 130 | $parent = $ul.parent(), 131 | tag = $parent[0].tagName.toLowerCase(), 132 | $kids = $ul.children().detach(); 133 | 134 | // Replace list with items if submenu header. 135 | if (tag === "ul") { 136 | $ul.replaceWith($kids); 137 | } else if (tag === "li") { 138 | // Insert into previous list. 139 | $parent.after($kids); 140 | $ul.remove(); 141 | } 142 | }); 143 | 144 | // Add divider in page TOC. 145 | $localLi = $("ul.localtoc li"); 146 | if ($localLi.length > 2) { 147 | $localLi.first().after("
  • "); 148 | } 149 | 150 | // Patch tables. 151 | patchTables(); 152 | 153 | // Add Note, Warning styles. (BS v2,3 compatible). 154 | $(".admonition").addClass("alert alert-info") 155 | .filter(".warning, .caution") 156 | .removeClass("alert-info") 157 | .addClass("alert-warning").end() 158 | .filter(".error, .danger") 159 | .removeClass("alert-info") 160 | .addClass("alert-danger alert-error").end(); 161 | 162 | // Inline code styles to Bootstrap style. 163 | $("tt.docutils.literal").not(".xref").each(function (i, e) { 164 | // ignore references 165 | if (!$(e).parent().hasClass("reference")) { 166 | $(e).replaceWith(function () { 167 | return $("").html($(this).html()); 168 | }); 169 | }}); 170 | 171 | // Update sourcelink to remove outerdiv (fixes appearance in navbar). 172 | var $srcLink = $(".nav #sourcelink"); 173 | $srcLink.parent().html($srcLink.html()); 174 | }); 175 | }(window.$jqTheme || window.jQuery)); -------------------------------------------------------------------------------- /docs/_build/html/_static/bootswatch-2.3.2/img/glyphicons-halflings-white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/bootswatch-2.3.2/img/glyphicons-halflings-white.png -------------------------------------------------------------------------------- /docs/_build/html/_static/bootswatch-2.3.2/img/glyphicons-halflings.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/bootswatch-2.3.2/img/glyphicons-halflings.png -------------------------------------------------------------------------------- /docs/_build/html/_static/bootswatch-3.3.7/fonts/glyphicons-halflings-regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/bootswatch-3.3.7/fonts/glyphicons-halflings-regular.eot -------------------------------------------------------------------------------- /docs/_build/html/_static/bootswatch-3.3.7/fonts/glyphicons-halflings-regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/bootswatch-3.3.7/fonts/glyphicons-halflings-regular.ttf -------------------------------------------------------------------------------- /docs/_build/html/_static/bootswatch-3.3.7/fonts/glyphicons-halflings-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/bootswatch-3.3.7/fonts/glyphicons-halflings-regular.woff -------------------------------------------------------------------------------- /docs/_build/html/_static/bootswatch-3.3.7/fonts/glyphicons-halflings-regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/bootswatch-3.3.7/fonts/glyphicons-halflings-regular.woff2 -------------------------------------------------------------------------------- /docs/_build/html/_static/comment-bright.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/comment-bright.png -------------------------------------------------------------------------------- /docs/_build/html/_static/comment-close.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/comment-close.png -------------------------------------------------------------------------------- /docs/_build/html/_static/comment.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/comment.png -------------------------------------------------------------------------------- /docs/_build/html/_static/copybutton.js: -------------------------------------------------------------------------------- 1 | $(document).ready(function() { 2 | /* Add a [>>>] button on the top-right corner of code samples to hide 3 | * the >>> and ... prompts and the output and thus make the code 4 | * copyable. */ 5 | var div = $('.highlight-python .highlight,' + 6 | '.highlight-python3 .highlight,' + 7 | '.highlight-default .highlight') 8 | var pre = div.find('pre'); 9 | 10 | // get the styles from the current theme 11 | pre.parent().parent().css('position', 'relative'); 12 | var hide_text = 'Hide the prompts and output'; 13 | var show_text = 'Show the prompts and output'; 14 | var border_width = pre.css('border-top-width'); 15 | var border_style = pre.css('border-top-style'); 16 | var border_color = pre.css('border-top-color'); 17 | var button_styles = { 18 | 'cursor':'pointer', 'position': 'absolute', 'top': '0', 'right': '0', 19 | 'border-color': border_color, 'border-style': border_style, 20 | 'border-width': border_width, 'color': border_color, 'text-size': '75%', 21 | 'font-family': 'monospace', 'padding-left': '0.2em', 'padding-right': '0.2em', 22 | 'border-radius': '0 3px 0 0' 23 | } 24 | 25 | // create and add the button to all the code blocks that contain >>> 26 | div.each(function(index) { 27 | var jthis = $(this); 28 | if (jthis.find('.gp').length > 0) { 29 | var button = $('>>>'); 30 | button.css(button_styles) 31 | button.attr('title', hide_text); 32 | button.data('hidden', 'false'); 33 | jthis.prepend(button); 34 | } 35 | // tracebacks (.gt) contain bare text elements that need to be 36 | // wrapped in a span to work with .nextUntil() (see later) 37 | jthis.find('pre:has(.gt)').contents().filter(function() { 38 | return ((this.nodeType == 3) && (this.data.trim().length > 0)); 39 | }).wrap(''); 40 | }); 41 | 42 | // define the behavior of the button when it's clicked 43 | $('.copybutton').click(function(e){ 44 | e.preventDefault(); 45 | var button = $(this); 46 | if (button.data('hidden') === 'false') { 47 | // hide the code output 48 | button.parent().find('.go, .gp, .gt').hide(); 49 | button.next('pre').find('.gt').nextUntil('.gp, .go').css('visibility', 'hidden'); 50 | button.css('text-decoration', 'line-through'); 51 | button.attr('title', show_text); 52 | button.data('hidden', 'true'); 53 | } else { 54 | // show the code output 55 | button.parent().find('.go, .gp, .gt').show(); 56 | button.next('pre').find('.gt').nextUntil('.gp, .go').css('visibility', 'visible'); 57 | button.css('text-decoration', 'none'); 58 | button.attr('title', hide_text); 59 | button.data('hidden', 'false'); 60 | } 61 | }); 62 | }); 63 | 64 | -------------------------------------------------------------------------------- /docs/_build/html/_static/css/badge_only.css: -------------------------------------------------------------------------------- 1 | .fa:before{-webkit-font-smoothing:antialiased}.clearfix{*zoom:1}.clearfix:after,.clearfix:before{display:table;content:""}.clearfix:after{clear:both}@font-face{font-family:FontAwesome;font-style:normal;font-weight:400;src:url(fonts/fontawesome-webfont.eot?674f50d287a8c48dc19ba404d20fe713?#iefix) format("embedded-opentype"),url(fonts/fontawesome-webfont.woff2?af7ae505a9eed503f8b8e6982036873e) format("woff2"),url(fonts/fontawesome-webfont.woff?fee66e712a8a08eef5805a46892932ad) format("woff"),url(fonts/fontawesome-webfont.ttf?b06871f281fee6b241d60582ae9369b9) format("truetype"),url(fonts/fontawesome-webfont.svg?912ec66d7572ff821749319396470bde#FontAwesome) format("svg")}.fa:before{font-family:FontAwesome;font-style:normal;font-weight:400;line-height:1}.fa:before,a .fa{text-decoration:inherit}.fa:before,a .fa,li .fa{display:inline-block}li .fa-large:before{width:1.875em}ul.fas{list-style-type:none;margin-left:2em;text-indent:-.8em}ul.fas li .fa{width:.8em}ul.fas li .fa-large:before{vertical-align:baseline}.fa-book:before,.icon-book:before{content:"\f02d"}.fa-caret-down:before,.icon-caret-down:before{content:"\f0d7"}.fa-caret-up:before,.icon-caret-up:before{content:"\f0d8"}.fa-caret-left:before,.icon-caret-left:before{content:"\f0d9"}.fa-caret-right:before,.icon-caret-right:before{content:"\f0da"}.rst-versions{position:fixed;bottom:0;left:0;width:300px;color:#fcfcfc;background:#1f1d1d;font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif;z-index:400}.rst-versions a{color:#2980b9;text-decoration:none}.rst-versions .rst-badge-small{display:none}.rst-versions .rst-current-version{padding:12px;background-color:#272525;display:block;text-align:right;font-size:90%;cursor:pointer;color:#27ae60}.rst-versions .rst-current-version:after{clear:both;content:"";display:block}.rst-versions .rst-current-version .fa{color:#fcfcfc}.rst-versions .rst-current-version .fa-book,.rst-versions .rst-current-version .icon-book{float:left}.rst-versions .rst-current-version.rst-out-of-date{background-color:#e74c3c;color:#fff}.rst-versions .rst-current-version.rst-active-old-version{background-color:#f1c40f;color:#000}.rst-versions.shift-up{height:auto;max-height:100%;overflow-y:scroll}.rst-versions.shift-up .rst-other-versions{display:block}.rst-versions .rst-other-versions{font-size:90%;padding:12px;color:grey;display:none}.rst-versions .rst-other-versions hr{display:block;height:1px;border:0;margin:20px 0;padding:0;border-top:1px solid #413d3d}.rst-versions .rst-other-versions dd{display:inline-block;margin:0}.rst-versions .rst-other-versions dd a{display:inline-block;padding:6px;color:#fcfcfc}.rst-versions.rst-badge{width:auto;bottom:20px;right:20px;left:auto;border:none;max-width:300px;max-height:90%}.rst-versions.rst-badge .fa-book,.rst-versions.rst-badge .icon-book{float:none;line-height:30px}.rst-versions.rst-badge.shift-up .rst-current-version{text-align:right}.rst-versions.rst-badge.shift-up .rst-current-version .fa-book,.rst-versions.rst-badge.shift-up .rst-current-version .icon-book{float:left}.rst-versions.rst-badge>.rst-current-version{width:auto;height:30px;line-height:30px;padding:0 6px;display:block;text-align:center}@media screen and (max-width:768px){.rst-versions{width:85%;display:none}.rst-versions.shift{display:block}} -------------------------------------------------------------------------------- /docs/_build/html/_static/css/fonts/Roboto-Slab-Bold.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/css/fonts/Roboto-Slab-Bold.woff -------------------------------------------------------------------------------- /docs/_build/html/_static/css/fonts/Roboto-Slab-Bold.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/css/fonts/Roboto-Slab-Bold.woff2 -------------------------------------------------------------------------------- /docs/_build/html/_static/css/fonts/Roboto-Slab-Regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/css/fonts/Roboto-Slab-Regular.woff -------------------------------------------------------------------------------- /docs/_build/html/_static/css/fonts/Roboto-Slab-Regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/css/fonts/Roboto-Slab-Regular.woff2 -------------------------------------------------------------------------------- /docs/_build/html/_static/css/fonts/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/css/fonts/fontawesome-webfont.eot -------------------------------------------------------------------------------- /docs/_build/html/_static/css/fonts/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/css/fonts/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /docs/_build/html/_static/css/fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/css/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /docs/_build/html/_static/css/fonts/fontawesome-webfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/css/fonts/fontawesome-webfont.woff2 -------------------------------------------------------------------------------- /docs/_build/html/_static/css/fonts/lato-bold-italic.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/css/fonts/lato-bold-italic.woff -------------------------------------------------------------------------------- /docs/_build/html/_static/css/fonts/lato-bold-italic.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/css/fonts/lato-bold-italic.woff2 -------------------------------------------------------------------------------- /docs/_build/html/_static/css/fonts/lato-bold.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/css/fonts/lato-bold.woff -------------------------------------------------------------------------------- /docs/_build/html/_static/css/fonts/lato-bold.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/css/fonts/lato-bold.woff2 -------------------------------------------------------------------------------- /docs/_build/html/_static/css/fonts/lato-normal-italic.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/css/fonts/lato-normal-italic.woff -------------------------------------------------------------------------------- /docs/_build/html/_static/css/fonts/lato-normal-italic.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/css/fonts/lato-normal-italic.woff2 -------------------------------------------------------------------------------- /docs/_build/html/_static/css/fonts/lato-normal.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/css/fonts/lato-normal.woff -------------------------------------------------------------------------------- /docs/_build/html/_static/css/fonts/lato-normal.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/css/fonts/lato-normal.woff2 -------------------------------------------------------------------------------- /docs/_build/html/_static/documentation_options.js: -------------------------------------------------------------------------------- 1 | var DOCUMENTATION_OPTIONS = { 2 | URL_ROOT: document.getElementById("documentation_options").getAttribute('data-url_root'), 3 | VERSION: '1.0.1.dev87+g558b850.d20211222', 4 | LANGUAGE: 'None', 5 | COLLAPSE_INDEX: false, 6 | BUILDER: 'html', 7 | FILE_SUFFIX: '.html', 8 | LINK_SUFFIX: '.html', 9 | HAS_SOURCE: true, 10 | SOURCELINK_SUFFIX: '.txt', 11 | NAVIGATION_WITH_KEYS: false 12 | }; -------------------------------------------------------------------------------- /docs/_build/html/_static/down-pressed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/down-pressed.png -------------------------------------------------------------------------------- /docs/_build/html/_static/down.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/down.png -------------------------------------------------------------------------------- /docs/_build/html/_static/file.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/file.png -------------------------------------------------------------------------------- /docs/_build/html/_static/fonts/Inconsolata-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/fonts/Inconsolata-Bold.ttf -------------------------------------------------------------------------------- /docs/_build/html/_static/fonts/Inconsolata-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/fonts/Inconsolata-Regular.ttf -------------------------------------------------------------------------------- /docs/_build/html/_static/fonts/Inconsolata.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/fonts/Inconsolata.ttf -------------------------------------------------------------------------------- /docs/_build/html/_static/fonts/Lato-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/fonts/Lato-Bold.ttf -------------------------------------------------------------------------------- /docs/_build/html/_static/fonts/Lato-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/fonts/Lato-Regular.ttf -------------------------------------------------------------------------------- /docs/_build/html/_static/fonts/Lato/lato-bold.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/fonts/Lato/lato-bold.eot -------------------------------------------------------------------------------- /docs/_build/html/_static/fonts/Lato/lato-bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/fonts/Lato/lato-bold.ttf -------------------------------------------------------------------------------- /docs/_build/html/_static/fonts/Lato/lato-bold.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/fonts/Lato/lato-bold.woff -------------------------------------------------------------------------------- /docs/_build/html/_static/fonts/Lato/lato-bold.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/fonts/Lato/lato-bold.woff2 -------------------------------------------------------------------------------- /docs/_build/html/_static/fonts/Lato/lato-bolditalic.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/fonts/Lato/lato-bolditalic.eot -------------------------------------------------------------------------------- /docs/_build/html/_static/fonts/Lato/lato-bolditalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/fonts/Lato/lato-bolditalic.ttf -------------------------------------------------------------------------------- /docs/_build/html/_static/fonts/Lato/lato-bolditalic.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/fonts/Lato/lato-bolditalic.woff -------------------------------------------------------------------------------- /docs/_build/html/_static/fonts/Lato/lato-bolditalic.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/fonts/Lato/lato-bolditalic.woff2 -------------------------------------------------------------------------------- /docs/_build/html/_static/fonts/Lato/lato-italic.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/fonts/Lato/lato-italic.eot -------------------------------------------------------------------------------- /docs/_build/html/_static/fonts/Lato/lato-italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/fonts/Lato/lato-italic.ttf -------------------------------------------------------------------------------- /docs/_build/html/_static/fonts/Lato/lato-italic.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/fonts/Lato/lato-italic.woff -------------------------------------------------------------------------------- /docs/_build/html/_static/fonts/Lato/lato-italic.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/fonts/Lato/lato-italic.woff2 -------------------------------------------------------------------------------- /docs/_build/html/_static/fonts/Lato/lato-regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/fonts/Lato/lato-regular.eot -------------------------------------------------------------------------------- /docs/_build/html/_static/fonts/Lato/lato-regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/fonts/Lato/lato-regular.ttf -------------------------------------------------------------------------------- /docs/_build/html/_static/fonts/Lato/lato-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/fonts/Lato/lato-regular.woff -------------------------------------------------------------------------------- /docs/_build/html/_static/fonts/Lato/lato-regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/fonts/Lato/lato-regular.woff2 -------------------------------------------------------------------------------- /docs/_build/html/_static/fonts/RobotoSlab-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/fonts/RobotoSlab-Bold.ttf -------------------------------------------------------------------------------- /docs/_build/html/_static/fonts/RobotoSlab-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/fonts/RobotoSlab-Regular.ttf -------------------------------------------------------------------------------- /docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.eot -------------------------------------------------------------------------------- /docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.ttf -------------------------------------------------------------------------------- /docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.woff -------------------------------------------------------------------------------- /docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.woff2 -------------------------------------------------------------------------------- /docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.eot -------------------------------------------------------------------------------- /docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.ttf -------------------------------------------------------------------------------- /docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.woff -------------------------------------------------------------------------------- /docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.woff2 -------------------------------------------------------------------------------- /docs/_build/html/_static/fonts/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/fonts/fontawesome-webfont.eot -------------------------------------------------------------------------------- /docs/_build/html/_static/fonts/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/fonts/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /docs/_build/html/_static/fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /docs/_build/html/_static/fonts/fontawesome-webfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jdhenshaw/scousepy/2cc17efd2397b8e0ae4a76df5c988571d69e7d1b/docs/_build/html/_static/fonts/fontawesome-webfont.woff2 -------------------------------------------------------------------------------- /docs/_build/html/_static/graphviz.css: -------------------------------------------------------------------------------- 1 | /* 2 | * graphviz.css 3 | * ~~~~~~~~~~~~ 4 | * 5 | * Sphinx stylesheet -- graphviz extension. 6 | * 7 | * :copyright: Copyright 2007-2020 by the Sphinx team, see AUTHORS. 8 | * :license: BSD, see LICENSE for details. 9 | * 10 | */ 11 | 12 | img.graphviz { 13 | border: 0; 14 | max-width: 100%; 15 | } 16 | 17 | object.graphviz { 18 | max-width: 100%; 19 | } 20 | -------------------------------------------------------------------------------- /docs/_build/html/_static/js/badge_only.js: -------------------------------------------------------------------------------- 1 | !function(e){var t={};function r(n){if(t[n])return t[n].exports;var o=t[n]={i:n,l:!1,exports:{}};return e[n].call(o.exports,o,o.exports,r),o.l=!0,o.exports}r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)r.d(n,o,function(t){return e[t]}.bind(null,o));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=4)}({4:function(e,t,r){}}); -------------------------------------------------------------------------------- /docs/_build/html/_static/js/html5shiv-printshiv.min.js: -------------------------------------------------------------------------------- 1 | /** 2 | * @preserve HTML5 Shiv 3.7.3-pre | @afarkas @jdalton @jon_neal @rem | MIT/GPL2 Licensed 3 | */ 4 | !function(a,b){function c(a,b){var c=a.createElement("p"),d=a.getElementsByTagName("head")[0]||a.documentElement;return c.innerHTML="x",d.insertBefore(c.lastChild,d.firstChild)}function d(){var a=y.elements;return"string"==typeof a?a.split(" "):a}function e(a,b){var c=y.elements;"string"!=typeof c&&(c=c.join(" ")),"string"!=typeof a&&(a=a.join(" ")),y.elements=c+" "+a,j(b)}function f(a){var b=x[a[v]];return b||(b={},w++,a[v]=w,x[w]=b),b}function g(a,c,d){if(c||(c=b),q)return c.createElement(a);d||(d=f(c));var e;return e=d.cache[a]?d.cache[a].cloneNode():u.test(a)?(d.cache[a]=d.createElem(a)).cloneNode():d.createElem(a),!e.canHaveChildren||t.test(a)||e.tagUrn?e:d.frag.appendChild(e)}function h(a,c){if(a||(a=b),q)return a.createDocumentFragment();c=c||f(a);for(var e=c.frag.cloneNode(),g=0,h=d(),i=h.length;i>g;g++)e.createElement(h[g]);return e}function i(a,b){b.cache||(b.cache={},b.createElem=a.createElement,b.createFrag=a.createDocumentFragment,b.frag=b.createFrag()),a.createElement=function(c){return y.shivMethods?g(c,a,b):b.createElem(c)},a.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+d().join().replace(/[\w\-:]+/g,function(a){return b.createElem(a),b.frag.createElement(a),'c("'+a+'")'})+");return n}")(y,b.frag)}function j(a){a||(a=b);var d=f(a);return!y.shivCSS||p||d.hasCSS||(d.hasCSS=!!c(a,"article,aside,dialog,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}mark{background:#FF0;color:#000}template{display:none}")),q||i(a,d),a}function k(a){for(var b,c=a.getElementsByTagName("*"),e=c.length,f=RegExp("^(?:"+d().join("|")+")$","i"),g=[];e--;)b=c[e],f.test(b.nodeName)&&g.push(b.applyElement(l(b)));return g}function l(a){for(var b,c=a.attributes,d=c.length,e=a.ownerDocument.createElement(A+":"+a.nodeName);d--;)b=c[d],b.specified&&e.setAttribute(b.nodeName,b.nodeValue);return e.style.cssText=a.style.cssText,e}function m(a){for(var b,c=a.split("{"),e=c.length,f=RegExp("(^|[\\s,>+~])("+d().join("|")+")(?=[[\\s,>+~#.:]|$)","gi"),g="$1"+A+"\\:$2";e--;)b=c[e]=c[e].split("}"),b[b.length-1]=b[b.length-1].replace(f,g),c[e]=b.join("}");return c.join("{")}function n(a){for(var b=a.length;b--;)a[b].removeNode()}function o(a){function b(){clearTimeout(g._removeSheetTimer),d&&d.removeNode(!0),d=null}var d,e,g=f(a),h=a.namespaces,i=a.parentWindow;return!B||a.printShived?a:("undefined"==typeof h[A]&&h.add(A),i.attachEvent("onbeforeprint",function(){b();for(var f,g,h,i=a.styleSheets,j=[],l=i.length,n=Array(l);l--;)n[l]=i[l];for(;h=n.pop();)if(!h.disabled&&z.test(h.media)){try{f=h.imports,g=f.length}catch(o){g=0}for(l=0;g>l;l++)n.push(f[l]);try{j.push(h.cssText)}catch(o){}}j=m(j.reverse().join("")),e=k(a),d=c(a,j)}),i.attachEvent("onafterprint",function(){n(e),clearTimeout(g._removeSheetTimer),g._removeSheetTimer=setTimeout(b,500)}),a.printShived=!0,a)}var p,q,r="3.7.3",s=a.html5||{},t=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,u=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,v="_html5shiv",w=0,x={};!function(){try{var a=b.createElement("a");a.innerHTML="",p="hidden"in a,q=1==a.childNodes.length||function(){b.createElement("a");var a=b.createDocumentFragment();return"undefined"==typeof a.cloneNode||"undefined"==typeof a.createDocumentFragment||"undefined"==typeof a.createElement}()}catch(c){p=!0,q=!0}}();var y={elements:s.elements||"abbr article aside audio bdi canvas data datalist details dialog figcaption figure footer header hgroup main mark meter nav output picture progress section summary template time video",version:r,shivCSS:s.shivCSS!==!1,supportsUnknownElements:q,shivMethods:s.shivMethods!==!1,type:"default",shivDocument:j,createElement:g,createDocumentFragment:h,addElements:e};a.html5=y,j(b);var z=/^$|\b(?:all|print)\b/,A="html5shiv",B=!q&&function(){var c=b.documentElement;return!("undefined"==typeof b.namespaces||"undefined"==typeof b.parentWindow||"undefined"==typeof c.applyElement||"undefined"==typeof c.removeNode||"undefined"==typeof a.attachEvent)}();y.type+=" print",y.shivPrint=o,o(b),"object"==typeof module&&module.exports&&(module.exports=y)}("undefined"!=typeof window?window:this,document); -------------------------------------------------------------------------------- /docs/_build/html/_static/js/html5shiv.min.js: -------------------------------------------------------------------------------- 1 | /** 2 | * @preserve HTML5 Shiv 3.7.3 | @afarkas @jdalton @jon_neal @rem | MIT/GPL2 Licensed 3 | */ 4 | !function(a,b){function c(a,b){var c=a.createElement("p"),d=a.getElementsByTagName("head")[0]||a.documentElement;return c.innerHTML="x",d.insertBefore(c.lastChild,d.firstChild)}function d(){var a=t.elements;return"string"==typeof a?a.split(" "):a}function e(a,b){var c=t.elements;"string"!=typeof c&&(c=c.join(" ")),"string"!=typeof a&&(a=a.join(" ")),t.elements=c+" "+a,j(b)}function f(a){var b=s[a[q]];return b||(b={},r++,a[q]=r,s[r]=b),b}function g(a,c,d){if(c||(c=b),l)return c.createElement(a);d||(d=f(c));var e;return e=d.cache[a]?d.cache[a].cloneNode():p.test(a)?(d.cache[a]=d.createElem(a)).cloneNode():d.createElem(a),!e.canHaveChildren||o.test(a)||e.tagUrn?e:d.frag.appendChild(e)}function h(a,c){if(a||(a=b),l)return a.createDocumentFragment();c=c||f(a);for(var e=c.frag.cloneNode(),g=0,h=d(),i=h.length;i>g;g++)e.createElement(h[g]);return e}function i(a,b){b.cache||(b.cache={},b.createElem=a.createElement,b.createFrag=a.createDocumentFragment,b.frag=b.createFrag()),a.createElement=function(c){return t.shivMethods?g(c,a,b):b.createElem(c)},a.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+d().join().replace(/[\w\-:]+/g,function(a){return b.createElem(a),b.frag.createElement(a),'c("'+a+'")'})+");return n}")(t,b.frag)}function j(a){a||(a=b);var d=f(a);return!t.shivCSS||k||d.hasCSS||(d.hasCSS=!!c(a,"article,aside,dialog,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}mark{background:#FF0;color:#000}template{display:none}")),l||i(a,d),a}var k,l,m="3.7.3-pre",n=a.html5||{},o=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,p=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,q="_html5shiv",r=0,s={};!function(){try{var a=b.createElement("a");a.innerHTML="",k="hidden"in a,l=1==a.childNodes.length||function(){b.createElement("a");var a=b.createDocumentFragment();return"undefined"==typeof a.cloneNode||"undefined"==typeof a.createDocumentFragment||"undefined"==typeof a.createElement}()}catch(c){k=!0,l=!0}}();var t={elements:n.elements||"abbr article aside audio bdi canvas data datalist details dialog figcaption figure footer header hgroup main mark meter nav output picture progress section summary template time video",version:m,shivCSS:n.shivCSS!==!1,supportsUnknownElements:l,shivMethods:n.shivMethods!==!1,type:"default",shivDocument:j,createElement:g,createDocumentFragment:h,addElements:e};a.html5=t,j(b),"object"==typeof module&&module.exports&&(module.exports=t)}("undefined"!=typeof window?window:this,document); -------------------------------------------------------------------------------- /docs/_build/html/_static/js/jquery-fix.js: -------------------------------------------------------------------------------- 1 | // No Conflict in later (our) version of jQuery 2 | window.$jqTheme = jQuery.noConflict(true); -------------------------------------------------------------------------------- /docs/_build/html/_static/js/theme.js: -------------------------------------------------------------------------------- 1 | !function(n){var e={};function t(i){if(e[i])return e[i].exports;var o=e[i]={i:i,l:!1,exports:{}};return n[i].call(o.exports,o,o.exports,t),o.l=!0,o.exports}t.m=n,t.c=e,t.d=function(n,e,i){t.o(n,e)||Object.defineProperty(n,e,{enumerable:!0,get:i})},t.r=function(n){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(n,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(n,"__esModule",{value:!0})},t.t=function(n,e){if(1&e&&(n=t(n)),8&e)return n;if(4&e&&"object"==typeof n&&n&&n.__esModule)return n;var i=Object.create(null);if(t.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:n}),2&e&&"string"!=typeof n)for(var o in n)t.d(i,o,function(e){return n[e]}.bind(null,o));return i},t.n=function(n){var e=n&&n.__esModule?function(){return n.default}:function(){return n};return t.d(e,"a",e),e},t.o=function(n,e){return Object.prototype.hasOwnProperty.call(n,e)},t.p="",t(t.s=0)}([function(n,e,t){t(1),n.exports=t(3)},function(n,e,t){(function(){var e="undefined"!=typeof window?window.jQuery:t(2);n.exports.ThemeNav={navBar:null,win:null,winScroll:!1,winResize:!1,linkScroll:!1,winPosition:0,winHeight:null,docHeight:null,isRunning:!1,enable:function(n){var t=this;void 0===n&&(n=!0),t.isRunning||(t.isRunning=!0,e((function(e){t.init(e),t.reset(),t.win.on("hashchange",t.reset),n&&t.win.on("scroll",(function(){t.linkScroll||t.winScroll||(t.winScroll=!0,requestAnimationFrame((function(){t.onScroll()})))})),t.win.on("resize",(function(){t.winResize||(t.winResize=!0,requestAnimationFrame((function(){t.onResize()})))})),t.onResize()})))},enableSticky:function(){this.enable(!0)},init:function(n){n(document);var e=this;this.navBar=n("div.wy-side-scroll:first"),this.win=n(window),n(document).on("click","[data-toggle='wy-nav-top']",(function(){n("[data-toggle='wy-nav-shift']").toggleClass("shift"),n("[data-toggle='rst-versions']").toggleClass("shift")})).on("click",".wy-menu-vertical .current ul li a",(function(){var t=n(this);n("[data-toggle='wy-nav-shift']").removeClass("shift"),n("[data-toggle='rst-versions']").toggleClass("shift"),e.toggleCurrent(t),e.hashChange()})).on("click","[data-toggle='rst-current-version']",(function(){n("[data-toggle='rst-versions']").toggleClass("shift-up")})),n("table.docutils:not(.field-list,.footnote,.citation)").wrap("
    "),n("table.docutils.footnote").wrap("
    "),n("table.docutils.citation").wrap("
    "),n(".wy-menu-vertical ul").not(".simple").siblings("a").each((function(){var t=n(this);expand=n(''),expand.on("click",(function(n){return e.toggleCurrent(t),n.stopPropagation(),!1})),t.prepend(expand)}))},reset:function(){var n=encodeURI(window.location.hash)||"#";try{var e=$(".wy-menu-vertical"),t=e.find('[href="'+n+'"]');if(0===t.length){var i=$('.document [id="'+n.substring(1)+'"]').closest("div.section");0===(t=e.find('[href="#'+i.attr("id")+'"]')).length&&(t=e.find('[href="#"]'))}t.length>0&&($(".wy-menu-vertical .current").removeClass("current"),t.addClass("current"),t.closest("li.toctree-l1").addClass("current"),t.closest("li.toctree-l1").parent().addClass("current"),t.closest("li.toctree-l1").addClass("current"),t.closest("li.toctree-l2").addClass("current"),t.closest("li.toctree-l3").addClass("current"),t.closest("li.toctree-l4").addClass("current"),t.closest("li.toctree-l5").addClass("current"),t[0].scrollIntoView())}catch(n){console.log("Error expanding nav for anchor",n)}},onScroll:function(){this.winScroll=!1;var n=this.win.scrollTop(),e=n+this.winHeight,t=this.navBar.scrollTop()+(n-this.winPosition);n<0||e>this.docHeight||(this.navBar.scrollTop(t),this.winPosition=n)},onResize:function(){this.winResize=!1,this.winHeight=this.win.height(),this.docHeight=$(document).height()},hashChange:function(){this.linkScroll=!0,this.win.one("hashchange",(function(){this.linkScroll=!1}))},toggleCurrent:function(n){var e=n.closest("li");e.siblings("li.current").removeClass("current"),e.siblings().find("li.current").removeClass("current"),e.find("> ul li.current").removeClass("current"),e.toggleClass("current")}},"undefined"!=typeof window&&(window.SphinxRtdTheme={Navigation:n.exports.ThemeNav,StickyNav:n.exports.ThemeNav}),function(){for(var n=0,e=["ms","moz","webkit","o"],t=0;t