Skip to content
Snippets Groups Projects
Commit 26d1de17 authored by Olivier Cots's avatar Olivier Cots
Browse files

add many files

parent 59a02786
Branches
No related tags found
No related merge requests found
# Created by https://www.gitignore.io/api/jupyternotebooks
# Edit at https://www.gitignore.io/?templates=jupyternotebooks
### JupyterNotebooks ###
# gitignore template for Jupyter Notebooks
# website: http://jupyter.org/
.ipynb_checkpoints
*/.ipynb_checkpoints/*
*.so
*.so.dSYM
*.so.dSYM/*
.nfs*
*__pycache__*
# IPython
profile_default/
ipython_config.py
# Remove previous ipynb_checkpoints
# git rm -r .ipynb_checkpoints/
# End of https://www.gitignore.io/api/jupyternotebooks
# bocop files (build and exec)
build/
bocopApp
bocopwrapper.py
!bocop/
*.sol
image: intelpython/intelpython3_full:latest
pages:
stage: deploy
before_script:
- conda install -c conda-forge pandoc
script:
- python --version
- python -m pip install -r requirements.txt
- pip list
- conda list
- python -m sphinx -b html examples/ public
artifacts:
paths:
- public
only:
- master
......@@ -14,7 +14,7 @@
* [Introduction to the multiple shooting method](doc/exercices/bsb_turnpike_regularized.ipynb)
[FAQ](https://optimalcontrol.zulip.beta.cimpa-lms.info/#narrow/stream/284-geometric_methods1)
[FAQ](https://optimalcontrol.zulip.beta.cimpa-lms.info/#narrow/stream/285-geometric_methods2)
# References
......
#!/usr/bin/env python3
import os
import sys
#import pkg_resources
#sys.path.insert(0, os.path.abspath('../../src'))
# Use sphinx-quickstart to create your own conf.py file!
# After that, you have to edit a few things. See below.
# ----------------------------------------------------------------------------------------
# ----------------------------------------------------------------------------------------
# Select nbsphinx and, if needed, other Sphinx extensions:
extensions = [
'matplotlib.sphinxext.plot_directive',
'sphinx.ext.autodoc', # for generation of api documentation
'sphinx.ext.napoleon', # numpy docstrings
'sphinx.ext.intersphinx', # to reference others projects, as numpy.ndarray
# 'sphinx.ext.doctest', # for the presentation of result in api documentation examples
'recommonmark', # for the use of markdown files for the documentation
'nbsphinx',
'nbsphinx_link', # A sphinx extension for including notebook files from outside the sphinx source root.
'sphinx_copybutton', # for "copy to clipboard" buttons
'sphinx.ext.mathjax', # for math equations
'sphinx.ext.viewcode',
'sphinxcontrib.bibtex', # for bibliographic references
# 'sphinxcontrib.rsvgconverter', # for SVG->PDF conversion in LaTeX output
'sphinx_gallery.load_style', # load CSS for gallery (needs SG >= 0.6)
]
## Napoleon settings
napoleon_google_docstring = False
napoleon_numpy_docstring = True
#napoleon_include_init_with_doc = False
#napoleon_include_private_with_doc = False
#napoleon_include_special_with_doc = True
napoleon_use_admonition_for_examples = True
napoleon_use_admonition_for_notes = True
napoleon_use_admonition_for_references = True
napoleon_use_ivar = True
napoleon_use_param = False
napoleon_use_rtype = False
#napoleon_use_keyword = True
# images for the gallery
#nbsphinx_thumbnails = {
# 'bacteria/bacteria': 'bacteria/maintenance.png',
#}
#intersphinx_mapping = {
# 'python': ('https://docs.python.org/', None),
# 'numpy': ('http://docs.scipy.org/doc/numpy/', None)
#}
intersphinx_mapping = {'python': ('http://docs.python.org/', None),
'numpy': ('http://docs.scipy.org/doc/numpy', None),
'scipy': ('http://docs.scipy.org/doc/scipy/reference', None),
'matplotlib': ('http://matplotlib.sourceforge.net', None)}
# The name of the Pygments (syntax highlighting) style to use.
pygments_style = 'sphinx'
# ----------------------------------------------------------------------------------------
# ----------------------------------------------------------------------------------------
# Exclude build directory and Jupyter backup files:
exclude_patterns = ['_build', '**.ipynb_checkpoints', 'Thumbs.db', '.DS_Store']
# Default language for syntax highlighting in reST and Markdown cells:
highlight_language = 'none'
# Don't add .txt suffix to source files:
#html_sourcelink_suffix = ''
# Work-around until https://github.com/sphinx-doc/sphinx/issues/4229 is solved:
#html_scaled_image_link = False
# List of arguments to be passed to the kernel that executes the notebooks:
# If you use Matplotlib for plots, this setting is recommended:
nbsphinx_execute_arguments = [
"--InlineBackend.figure_formats={'svg', 'pdf'}",
"--InlineBackend.rc={'figure.dpi': 96}",
]
nbsphinx_execute = 'never'
# To get a prompt similar to the Classic Notebook, use
nbsphinx_input_prompt = ' In [%s]:'
nbsphinx_output_prompt = ' Out [%s]:'
#nbsphinx_prompt_width = '10'
# Use a different kernel than stored in the notebook metadata, e.g.:
# nbsphinx_kernel_name = 'python3'
# Environment variables to be passed to the kernel:
#os.environ['MY_DUMMY_VARIABLE'] = 'Hello from conf.py!'
#nbsphinx_thumbnails = {
# 'gallery/thumbnail-from-conf-py': 'gallery/a-local-file.png',
# 'gallery/*-rst': '_static/copy-button.svg',
#}
# --------------------------------------------
# --------------------------------------------
# Debut : Cette partie ne fonctionne pas
# --------------------------------------------
# --------------------------------------------
## This is processed by Jinja2 and inserted before each notebook
#nbsphinx_prolog = """
#{% set docname = env.doc2path(env.docname, base=None) %}
#
#.. only:: html
#
# Mettre ici un lien vers binder, etc. Pour l'instant, je ne sais pas comment faire.
# Il faut peut-être que le projet soit public.
# On peut comme ici mettre un texte automatique pour tous les notebooks. Voir https://github.com/spatialaudio/nbsphinx/tree/0.6.0.
# On peut aussi mettre le lien binder dans le notebook directement.
#
#.. only:: latex
#
# The following section was created from :file:`{{ docname }}`.
#"""
# This is processed by Jinja2 and inserted before each notebook
nbsphinx_prolog = r"""
{% set docname = 'examples/' + env.doc2path(env.docname, base=None) %}
.. raw:: html
<div class="admonition note">
<p>Notebook source code:
<a class="reference external" href="https://gitlab.irit.fr/toc/cimpa/gnmoc/-/blob/master/{{ docname|e }}">{{ docname|e }}</a>
<br>Run it yourself on binder
<a href="https://mybinder.org/v2/git/https%3A%2F%2Fgitlab.irit.fr%2Ftoc%2F%2Fcimpa%2Fgnmoc.git/master?urlpath=lab/tree/{{ docname|e }}"><img alt="Binder badge" src="https://mybinder.org/badge_logo.svg" style="vertical-align:text-bottom"></a>
</p>
</div>
.. raw:: latex
\nbsphinxstartnotebook{\scriptsize\noindent\strut
\textcolor{gray}{The following section was generated from
\sphinxcode{\sphinxupquote{\strut {{ docname | escape_latex }}}} \dotfill}}
"""
# <script>
# if (document.location.host) {
# var p = document.currentScript.previousSibling.previousSibling;
# var a = document.createElement('a');
# a.innerHTML = 'View in <em>nbviewer</em>';
# a.href = `https://nbviewer.jupyter.org/url${
# (window.location.protocol == 'https:' ? 's/' : '/') +
# window.location.host +
# window.location.pathname.slice(0, -4) }ipynb`;
# a.classList.add('reference');
# a.classList.add('external');
# p.appendChild(a);
# p.appendChild(document.createTextNode('.'));
# }
# </script>
#nbsphinx_prolog = """
#----
#
#Generated by nbsphinx_ from a Jupyter_ notebook.
#
#.. _nbsphinx: https://nbsphinx.readthedocs.io/
#.. _Jupyter: https://jupyter.org/
#"""
#
#nbsphinx_prolog = """
#Go there: https://example.org/notebooks/{{ env.doc2path(env.docname, base=None) }}
#
#----
#"""
#
## This is processed by Jinja2 and inserted after each notebook
#nbsphinx_epilog = r"""
#{% set docname = 'doc/' + env.doc2path(env.docname, base=None) %}
#.. raw:: latex
# \nbsphinxstopnotebook{\scriptsize\noindent\strut
# \textcolor{gray}{\dotfill\ \sphinxcode{\sphinxupquote{\strut
# {{ docname | escape_latex }}}} ends here.}}
#"""
# --------------------------------------------
# --------------------------------------------
# Fin : Cette partie ne fonctionne pas
# --------------------------------------------
# --------------------------------------------
mathjax_config = {
'TeX': {'equationNumbers': {'autoNumber': 'AMS', 'useLabelIds': True}},
}
# Additional files needed for generating LaTeX/PDF output:
#latex_additional_files = ['references.bib']
# Support for notebook formats other than .ipynb
#nbsphinx_custom_formats = {
# '.pct.py': ['jupytext.reads', {'fmt': 'py:percent'}],
#}
# ----------------------------------------------------------------------------------------
# ----------------------------------------------------------------------------------------
# -- The settings below this line are not specific to nbsphinx ------------
#
# where we stop the documentation: when coming to fortran files
#autodoc_mock_imports = ['nutopy.mod_nlesolve',
# 'nutopy.mod_ivpsolve',
# 'nutopy.mod_pathsolve',
# ]
# Default processing flags for sphinx
autoclass_content = 'class'
autodoc_member_order = 'bysource'
autodoc_default_options = {
'members': True,
'undoc-members':True,
'show-inheritance':True
}
#autodoc_member_order = 'alphabetical' #'bysource'
add_module_names = False
add_function_parentheses = False
# The suffix(es) of source filenames.
source_suffix = {
'.rst': 'restructuredtext',
'.md': 'markdown'
}
#---sphinx-themes-----
html_theme = 'sphinx_rtd_theme'
# options for sphinx_rtd_theme: see https://sphinx-rtd-theme.readthedocs.io/en/stable/configuring.html#
html_theme_options = {
'canonical_url': '',
# 'analytics_id': 'UA-XXXXXXX-1', # Provided by Google in your dashboard
'logo_only': False,
'display_version': False,
'prev_next_buttons_location': 'bottom',
'style_external_links': False,
# 'style_nav_header_background': 'white',
# Toc options
'collapse_navigation': True,
'sticky_navigation': True,
'navigation_depth': 4,
'includehidden': True,
'titles_only': False
}
author = 'Olivier Cots'
project = u'Cimpa course'
import time
copyright = u'%s, cimpa course project.' % time.strftime('%Y') # a changer
#version = '0.2' # a voir comment gerer doc et version
#release = '0.2.1'
html_logo = 'logo-ct.svg'
master_doc = 'index'
# Grab the setup entry
#distribution = pkg_resources.require(project)[0]
#linkcheck_ignore = [r'http://localhost:\d+/']
# -- Get version information and date from Git ----------------------------
try:
from subprocess import check_output
release = check_output(['git', 'describe', '--tags', '--always'])
release = release.decode().strip()
today = check_output(['git', 'show', '-s', '--format=%ad', '--date=short'])
today = today.decode().strip()
except Exception:
release = '<unknown>'
today = '<unknown date>'
# -- Options for HTML output ----------------------------------------------
html_title = project #+ ' version ' + release
# -- Options for LaTeX output ---------------------------------------------
# See https://www.sphinx-doc.org/en/master/latex.html
#latex_elements = {
# 'papersize': 'a4paper',
# 'printindex': '',
# 'sphinxsetup': r"""
# %verbatimwithframe=false,
# %verbatimwrapslines=false,
# %verbatimhintsturnover=false,
# VerbatimColor={HTML}{F5F5F5},
# VerbatimBorderColor={HTML}{E0E0E0},
# noteBorderColor={HTML}{E0E0E0},
# noteborder=1.5pt,
# warningBorderColor={HTML}{E0E0E0},
# warningborder=1.5pt,
# warningBgColor={HTML}{FBFBFB},
# """,
# 'preamble': r"""
#\usepackage[sc,osf]{mathpazo}
#\linespread{1.05} % see http://www.tug.dk/FontCatalogue/urwpalladio/
#\renewcommand{\sfdefault}{pplj} % Palatino instead of sans serif
#\IfFileExists{zlmtt.sty}{
# \usepackage[light,scaled=1.05]{zlmtt} % light typewriter font from lmodern
#}{
# \renewcommand{\ttdefault}{lmtt} % typewriter font from lmodern
#}
#\usepackage{booktabs} % for Pandas dataframes
#""",
#}
#
#latex_documents = [
# (master_doc, 'nbsphinx.tex', project, author, 'howto'),
#]
#
#latex_show_urls = 'footnote'
#latex_show_pagerefs = True
# -- Options for EPUB output ----------------------------------------------
# These are just defined to avoid Sphinx warnings related to EPUB:
version = release
#suppress_warnings = ['epub.unknown_project_files']
.. include:: ../README.rst
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
inkscape:version="1.0 (4035a4f, 2020-05-01)"
sodipodi:docname="ct.svg"
xml:space="preserve"
enable-background="new 0 0 134 140"
viewBox="0 0 134 140"
height="140px"
width="134px"
y="0px"
x="0px"
id="Calque_1"
version="1.1"><metadata
id="metadata19"><rdf:RDF><cc:Work
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
id="defs17" /><sodipodi:namedview
inkscape:current-layer="Calque_1"
inkscape:window-maximized="0"
inkscape:window-y="23"
inkscape:window-x="0"
inkscape:cy="70"
inkscape:cx="67"
inkscape:zoom="6.3642857"
showgrid="false"
id="namedview15"
inkscape:window-height="973"
inkscape:window-width="1007"
inkscape:pageshadow="2"
inkscape:pageopacity="0"
guidetolerance="10"
gridtolerance="10"
objecttolerance="10"
borderopacity="1"
bordercolor="#666666"
pagecolor="#ffffff" />
<g
id="g12">
<path
id="path10"
d="m 99.274,69.221 c -0.345,7.912 -0.517,16.167 -0.517,24.08 V 110.5 c 0,12.9 5.849,15.137 8.944,15.137 3.956,0 8.944,-0.688 11.352,-2.236 0.86,-0.516 1.548,-0.344 2.064,0.344 l 0.86,1.548 c 0.516,0.688 0.172,1.376 -0.345,1.892 -1.72,1.721 -8.771,6.881 -19.092,6.881 -8.428,0 -16.684,-8.084 -16.684,-14.62 0,-7.052 0.517,-22.188 0.517,-24.596 v -3.784 c 0,-3.096 0.172,-14.619 0.344,-21.843 h -10.49 c -1.548,0 -2.58,-0.688 -2.58,-2.064 0,-1.376 1.032,-1.892 3.268,-2.752 4.301,-1.892 9.633,-5.16 12.041,-10.492 C 91.019,49.271 91.88,40.671 89.987,34.479 87.407,26.223 81.903,17.452 65.736,17.452 50.771,17.45 38.56,27.77 38.56,39.81 c 0,6.708 1.376,12.384 8.943,18.576 13.588,1.72 18.06,10.492 18.06,13.76 -0.172,3.957 -2.752,6.02 -6.364,6.02 -3.956,0 -6.88,-2.236 -9.46,-6.88 -3.784,-7.052 -7.396,-7.568 -11.524,-7.568 -9.804,0 -20.295,8.944 -20.295,26.66 0,9.287 4.128,19.779 8.771,26.144 5.676,7.396 12.9,8.771 18.748,8.771 8.6,0 13.071,-1.892 18.919,-7.396 0.344,-0.344 0.86,-0.516 1.376,0 l 1.72,1.72 c 0.688,0.688 0.859,1.204 0,2.235 -4.988,5.677 -15.996,12.213 -27.692,12.213 -9.116,0 -18.748,-2.064 -26.66,-12.04 -6.364,-8.429 -7.74,-15.651 -7.74,-23.392 0,-19.779 13.588,-39.731 35.432,-40.419 V 57.87 C 35.462,54.43 30.13,47.034 30.13,39.982 c 0,-14.964 11.868,-28.035 35.259,-28.035 19.436,0 35.604,11.008 35.604,29.583 0,6.192 -1.031,14.104 -1.204,18.748 h 23.735 c 1.032,0 1.549,0.86 1.205,1.548 l -1.721,6.02 c -0.172,0.86 -0.516,1.376 -1.548,1.376 H 99.274 Z" />
</g>
</svg>
name: ct-gallery
channels:
- control-toolbox
- conda-forge
- dtk-forge
dependencies:
- cmake
- gfortran_linux-64
- kernda
- scipy
- matplotlib
- numba
- numpy
- bocop
- nutopy
- nodejs
- ipywidgets
- jupyterlab
- swig
- pip
- pip:
- jupyter_contrib_nbextensions
#! /bin/bash
CONDA_HOME=`which conda`
CONDA_HOME=`dirname ${CONDA_HOME}`
CONDA_HOME=`dirname ${CONDA_HOME}`
<<<<<<< HEAD
CONDA_HOME2=${HOME}/.conda
JUPYTER_DIR=`jupyter --data-dir`
if [ -d ${CONDA_HOME2}/envs/$1 ]
then
source ${CONDA_HOME}/bin/activate ${CONDA_HOME2}/envs/$1
=======
CONDA_ENVS=${HOME}/.conda/envs
JUPYTER_DIR=`jupyter --data-dir`
if [ -d ${CONDA_ENVS}/$1 ]
then
source ${CONDA_HOME}/bin/activate ${CONDA_ENVS}/$1
>>>>>>> develop
python -m ipykernel install --user --name $1
conda deactivate
kernda ${JUPYTER_DIR}/kernels/$1/kernel.json -o > /dev/null
else
echo "Unknown conda environment"
fi
name: cimpa
channels:
- control-toolbox
- conda-forge
- dtk-forge
dependencies:
- scipy
- matplotlib
- nutopy
- bocop
- cmake
- gfortran_linux-64
- jupyterlab
- numba
- ipympl
name: cimpa
channels:
- control-toolbox
- conda-forge
- dtk-forge
dependencies:
- scipy
- matplotlib
- nutopy
- bocop
- cmake
- gfortran_osx-64
- jupyterlab
- numba
- ipympl
name: cimpa
channels:
- control-toolbox
- conda-forge
- dtk-forge
dependencies:
- bocop>3.0.0
- jupyterlab
- m2w64-gcc-fortran
- matplotlib=3.1.*
- numba
- nutopy=0.3.*
- scipy
jupyter contrib nbextension install --user
jupyter nbextension enable --py widgetsnbextension
jupyter labextension install @jupyter-widgets/jupyterlab-manager --minimize=False
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment