diff --git a/docs/source/index.rst b/docs/source/index.rst index bed87efa9260ae4c386648ae26e39cf9202854e1..868fbc036906e9f79caa8378c298c6ca0b86e34e 100644 --- a/docs/source/index.rst +++ b/docs/source/index.rst @@ -36,18 +36,18 @@ Its features include: - **Symbolic Algebra:** Design numerical methods on a mathematical level using the full power of the `SymPy <https://sympy.org>`_ computer algebra system. Make use of pystencils' discretization engines to automatically derive finite difference- and finite volume-methods, - and take control of numerical precision using the versatile type system. + and take control of numerical precision using the `versatile type system <page_type_system>`. - **Kernel Description:** Derive and optimize stencil-based update rules using a symbolic abstraction - of numerical fields. -- **Code Generation:** Generate and compile high-performance parallel kernels for CPUs and GPUs. + of numerical `fields <page_symbolic_language>`. +- **Code Generation:** `Generate and compile <page_kernel_creation>` high-performance parallel kernels for CPUs and GPUs. Accelerate your kernels on multicore CPUs using the automatic OpenMP parallelization and make full use of your cores' SIMD units through the highly configurable vectorizer. - **Rapid Prototyping:** Run your numerical solvers on `NumPy <https://numpy.org>`_ and `CuPy <https://cupy.dev>`_ arrays and test them interactively inside `Jupyter <https://jupyter.org/>`_ notebooks. Quickly set up numerical schemes, apply initial and boundary conditions, evaluate them on model problems and rapidly visualize the results using matplotlib or VTK. -- **Framework Integration:** Power your massively parallel simulations by exporting your kernels into HPC frameworks - such as `waLBerla <https://walberla.net>`_. +- **Framework Integration:** Export your kernels and use them inside HPC frameworks + such as `waLBerla`_ to build massively parallel simulations. Contents @@ -77,10 +77,12 @@ Contents Dive deep into the core of pystencils' code generation engine. +Projects using pystencils +------------------------- -.. Indices and tables -.. ================== +- `lbmpy <https://pycodegen.pages.i10git.cs.fau.de/lbmpy/>`_ +- `waLBerla`_ +- `HyTeG Operator Generator (HOG) <https://hyteg.pages.i10git.cs.fau.de/hog/>`_ -.. * :ref:`genindex` -.. * :ref:`modindex` -.. * :ref:`search` + +.. _walberla: https://walberla.net diff --git a/docs/source/reference/types.rst b/docs/source/reference/types.rst index 7b0ef5dc1a44b0e6a0f60c9f19dfb32bba80b682..041b0cb2a5dbabede1054cbc261d256bd628be73 100644 --- a/docs/source/reference/types.rst +++ b/docs/source/reference/types.rst @@ -1,3 +1,5 @@ +.. _page_type_system: + *********** Type System *********** @@ -22,6 +24,11 @@ Type Creation and Conversion Data Type Class Hierarchy ------------------------- +These are the classes that make up the type system internally. +Most of the time, you will not be using them directly, so you can skip over this part +unless you have very particular needs. + + .. inheritance-diagram:: pystencils.types.meta.PsType pystencils.types.types :top-classes: pystencils.types.PsType :parts: 1