Skip to content

Commit 7587b44

Browse files
committed
documentation
1 parent 9746f29 commit 7587b44

File tree

3 files changed

+57
-15
lines changed

3 files changed

+57
-15
lines changed

.travis.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ script:
3636
- mkdir data
3737
- which nosetests
3838
- nosetests tests -v --with-id --with-coverage --cover-package=pySDC,tutorial --cover-inclusive --cover-html --cover-html-dir=target/doc/build/test_coverage
39-
- travis-sphinx --branches=pySDC_v2,master build
39+
- travis-sphinx build
4040

4141
after_success:
4242
- travis-sphinx deploy

docs/source/index.rst

Lines changed: 50 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,49 @@
1-
.. pySDC documentation master file, created by
2-
sphinx-quickstart on Tue Oct 11 15:58:40 2016.
3-
You can adapt this file completely to your liking, but it should at least
4-
contain the root `toctree` directive.
5-
61
Welcome to pySDC's documentation!
72
=================================
83

9-
The pySDC project is a Python implementation of the spectral deferred correction (SDC) approach and its flavors,
10-
esp. the multilevel extension MLSDC and PFASST.
11-
It is intended for rapid prototyping and educational purposes.
4+
The `pySDC` project is a Python implementation of the spectral deferred correction (SDC) approach and its flavors,
5+
esp. the multilevel extension MLSDC and PFASST. It is intended for rapid prototyping and educational purposes.
126
New ideas like e.g. sweepers or predictors can be tested and first toy problems can be easily implemented.
137

14-
See `test coverage results <test_coverage/index.html>`_
8+
9+
News
10+
----
11+
12+
On November 24, 2016, we released version 2 of `pySDC`. This release contains major changes to the code and its structure:
13+
14+
- **Complete redesign of code structure**: The ``core`` part of `pySDC` only contains the core modules and classes,
15+
while ``implementations`` contains the actual implementations necessary to run something.
16+
This now includes separate files for all collocation classes, as well as a collection of problems, transfer classes and so on.
17+
Most examples have been ported to either ``tutorials``, ``playgrounds`` or ``projects``.
18+
19+
- **Introduction of tutorials**: We added a tutorial (see below) to explain many
20+
of pySDC's features in a step-by-step fashion. We start with a simple spatial
21+
discretization and collocation formulations and move step by step to SDC, MLSDC and PFASST.
22+
All tutorials are accompanied by tests.
23+
24+
- **New all-inclusive controllers**: Instead of having two PFASST controllers
25+
which could also do SDC and MLSDC (and more), we now have four generic controllers
26+
which can do all these methods, depending on the input. They are split into
27+
two by two class: `MPI` and `NonMPI` for real or virtual parallelisim as well
28+
as `classic` and `multigrid` for the standard and multigrid-like implementation
29+
of PFASST and the likes. Initialization has been simplified a lot, too.
30+
31+
- **Collocation-based coarsening** As the standard PFASST libraries `libpfasst <https://bitbucket.org/memmett/libpfasst>`_ and `PFASST++ <https://github.com/Parallel-in-Time/PFASST>`_
32+
`pySDC` now offers collocation-based coarsening, i.e. the number of collocation nodes can be reduced during coarsening.
33+
Also, time-step coarsening is in preparation, but not implemented yet.
34+
35+
- **Testing and documentation** The core, implementations and plugin packages and their subpackages are fully documented using sphinx-apidoc, see below.
36+
This documentation as well as this website are generated automatically using `Travis-CI <https://travis-ci.org/Parallel-in-Time/pySDC>`_.
37+
Most of the code is supported by tests, mainly realized by using the tutorial as the test routines with clearly defined results. Also, projects are accompanied by tests.
38+
Test coverage results can be found `here <test_coverage/index.html>`_.
39+
40+
- Further, minor changes:
41+
42+
- Switched to more stable barycentric interpolation for the quadrature weights
43+
- New collocation class: `EquidistantSpline_Right` for spline-based quadrature
44+
- Collocation tests are realized by generators and not by classes
45+
- Multi-step SDC (aka single-level PFASST) now works as expected
46+
- Reworked many of the internal structures for consistency and simplicity
1547

1648

1749
Tutorial
@@ -30,27 +62,29 @@ Tutorial
3062
tutorial/step_6.rst
3163
tutorial/step_7.rst
3264

65+
Playgrounds
66+
-----------
67+
.. include:: ../../playgrounds/README.rst
68+
3369
Projects
3470
--------
3571

72+
.. include:: ../../projects/README.rst
73+
3674
.. toctree::
3775
:maxdepth: 2
3876

3977
projects/parallelSDC.rst
4078
projects/node_failure.rst
4179
projects/fwsw.rst
4280

43-
Playgrounds
44-
-----------
45-
.. include:: ../../playgrounds/README.rst
46-
4781
API documentation
4882
-----------------
4983

5084
.. include:: ../../pySDC/README.rst
5185

5286
.. toctree::
53-
:maxdepth: 3
87+
:maxdepth: 1
5488

5589
pySDC/pySDC.core.rst
5690
pySDC/pySDC.implementations.rst
@@ -64,3 +98,5 @@ Indices and tables
6498
* :ref:`modindex`
6599
* :ref:`search`
66100

101+
Also, see `test coverage results <test_coverage/index.html>`_.
102+

projects/README.rst

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
In the ``projects`` folder we gather focussed experiments with pySDC which go beyond simple toy problems or feature tests.
2+
In particular, projects are structured and documented codes which form the basis for publications or presentations.
3+
All projects are expected to contain a README file describing the intention and content of the work.
4+
Parts of the Python scripts are supported by tests and checked for PEP8 conformity.
5+
6+

0 commit comments

Comments
 (0)