Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 4 additions & 1 deletion docs/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -23,5 +23,8 @@ clean:
%: Makefile
@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)

xml:
cd "$(SOURCEDIR)" && doxygen Doxyfile

livehtml:
sphinx-autobuild --host 0.0.0.0 "$(SOURCEDIR)" "$(BUILDDIR)/html" $(SPHINXOPTS) $(O)
sphinx-autobuild --host 0.0.0.0 -j auto -a -q "$(SOURCEDIR)" "$(BUILDDIR)/html" $(SPHINXOPTS) $(O)
5 changes: 5 additions & 0 deletions docs/source/_static/css/custom.css
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,10 @@ span.colon {
margin-left: -1em;
}

dl.cpp {
font-size: 0.64rem;
}

dl.cpp.objdesc,
dl.py.objdesc {
/* border: 0.05rem solid var(--md-primary-fg-color); */
Expand All @@ -28,6 +32,7 @@ dl.py.objdesc {

dl.cpp.objdesc>dt,
dl.py.objdesc>dt {
font-size: 0.64rem;
padding-left: 0.5rem;
padding-right: 0.5rem;
}
Expand Down
File renamed without changes.
2 changes: 1 addition & 1 deletion docs/source/license.rst → docs/source/about/license.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ License

IPC Toolkit is released under an MIT license, and all of its dependencies are under similar permissive licenses (MIT, Apache, or MPL).

.. literalinclude:: ../../LICENSE
.. literalinclude:: ../../../LICENSE
:language: md

Citation
Expand Down
File renamed without changes.
File renamed without changes.
2 changes: 1 addition & 1 deletion docs/source/python.rst → docs/source/building/python.rst
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Python Bindings
===============

.. include:: ../../python/README.md
.. include:: ../../../python/README.md
:parser: myst_parser.sphinx_
:start-line: 10
2 changes: 0 additions & 2 deletions docs/source/code_of_conduct.rst

This file was deleted.

6 changes: 3 additions & 3 deletions docs/source/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -101,7 +101,7 @@
"private-members",
)
breathe_show_define_initializer = True
# breathe_show_include = True
breathe_show_include = True

autodoc_default_options = {
"members": True,
Expand Down Expand Up @@ -176,14 +176,14 @@
"icon": {"repo": "fontawesome/brands/github"},

"features": [
"navigation.expand",
"content.tabs.link",
"navigation.footer",
"navigation.tabs",
"navigation.top",
"navigation.tracking",
"search.highlight",
"search.share",
"toc.follow",
"content.tabs.link"
],

"font": {
Expand Down
2 changes: 0 additions & 2 deletions docs/source/contributing.rst

This file was deleted.

41 changes: 32 additions & 9 deletions docs/source/cpp-api/adhesion.rst
Original file line number Diff line number Diff line change
@@ -1,19 +1,42 @@
Adhesion
========

Functions
---------

.. list-table::
:header-rows: 1

* - Name
- Description
* - :func:`normal_adhesion_potential`
- The normal adhesion potential.
* - :func:`normal_adhesion_potential_first_derivative`
- The first derivative of the normal adhesion potential wrt d.
* - :func:`normal_adhesion_potential_second_derivative`
- The second derivative of the normal adhesion potential wrt d.
* - :func:`max_normal_adhesion_force_magnitude`
- The maximum normal adhesion force magnitude.
* - :func:`tangential_adhesion_f0`
- The tangential adhesion mollifier function.
* - :func:`tangential_adhesion_f1`
- The first derivative of the tangential adhesion mollifier function.
* - :func:`tangential_adhesion_f2`
- The second derivative of the tangential adhesion mollifier function.
* - :func:`tangential_adhesion_f1_over_x`
- The first derivative of the tangential adhesion mollifier function divided by y.
* - :func:`tangential_adhesion_f2_x_minus_f1_over_x3`
- The second derivative of the tangential adhesion mollifier function times y minus the first derivative all divided by y cubed.


Normal Adhesion Potential
-------------------------

.. doxygenfunction:: normal_adhesion_potential
.. doxygenfunction:: normal_adhesion_potential_first_derivative
.. doxygenfunction:: normal_adhesion_potential_second_derivative
.. doxygenfunction:: max_normal_adhesion_force_magnitude
.. doxygengroup:: normal_adhesion
:content-only:

Tangential Adhesion Potential
-----------------------------

.. doxygenfunction:: tangential_adhesion_f0
.. doxygenfunction:: tangential_adhesion_f1
.. doxygenfunction:: tangential_adhesion_f2
.. doxygenfunction:: tangential_adhesion_f1_over_x
.. doxygenfunction:: tangential_adhesion_f2_x_minus_f1_over_x3
.. doxygengroup:: tangential_adhesion
:content-only:
53 changes: 0 additions & 53 deletions docs/source/cpp-api/barrier.rst

This file was deleted.

5 changes: 5 additions & 0 deletions docs/source/cpp-api/barrier/Barrier.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
Barrier
=======

.. doxygenclass:: ipc::Barrier
:allow-dot-graphs:
5 changes: 5 additions & 0 deletions docs/source/cpp-api/barrier/ClampedLogBarrier.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
ClampedLogBarrier
=================

.. doxygenclass:: ipc::ClampedLogBarrier
:allow-dot-graphs:
5 changes: 5 additions & 0 deletions docs/source/cpp-api/barrier/ClampedLogSqBarrier.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
ClampedLogSqBarrier
===================

.. doxygenclass:: ipc::ClampedLogSqBarrier
:allow-dot-graphs:
5 changes: 5 additions & 0 deletions docs/source/cpp-api/barrier/CubicBarrier.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
CubicBarrier
============

.. doxygenclass:: ipc::CubicBarrier
:allow-dot-graphs:
5 changes: 5 additions & 0 deletions docs/source/cpp-api/barrier/NormalizedBarrier.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
NormalizedBarrier
============

.. doxygenclass:: ipc::NormalizedBarrier
:allow-dot-graphs:
82 changes: 82 additions & 0 deletions docs/source/cpp-api/barrier/index.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
Barrier
=======

.. toctree::
:caption: Barrier
:hidden:

Barrier.rst
ClampedLogBarrier.rst
NormalizedBarrier.rst
ClampedLogSqBarrier.rst
CubicBarrier.rst

Barrier functions and functionals.

Types
-----

.. list-table::
:header-rows: 1

* - Name
- Description
* - :doc:`Barrier <Barrier>`
- Base class for barrier functions.
* - :doc:`ClampedLogBarrier <ClampedLogBarrier>`
- Smoothly clamped log barrier functions from [Li et al.].
* - :doc:`ClampedLogSqBarrier <ClampedLogSqBarrier>`
- Clamped log barrier with a quadratic log term from [Huang et al.].
* - :doc:`CubicBarrier <CubicBarrier>`
- Cubic barrier function from [Ando 2024].
* - :doc:`NormalizedBarrier <NormalizedBarrier>`
- Normalized barrier function from [Li et al.].

Functions
---------

.. list-table::
:header-rows: 1

* - Name
- Description
* - :func:`ipc::barrier`
- Evaluate the barrier function.
* - :func:`ipc::barrier_first_derivative`
- Derivative of the barrier function.
* - :func:`ipc::barrier_second_derivative`
- Second derivative of the barrier function.
* - :func:`ipc::barrier_force_magnitude`
- Compute the barrier force magnitude.
* - :func:`ipc::barrier_force_magnitude_gradient`
- Compute the gradient of the barrier force magnitude.
* - :func:`ipc::initial_barrier_stiffness`
- Compute the initial barrier stiffness.
* - :func:`ipc::update_barrier_stiffness`
- Update the barrier stiffness based on the current state.
* - :func:`ipc::semi_implicit_stiffness`
- Compute the semi-implicit stiffness for all collisions.

Function Details
----------------

.. doxygenfunction:: barrier(const double, const double)
.. doxygenfunction:: barrier_first_derivative
.. doxygenfunction:: barrier_second_derivative

Barrier Force Magnitude
~~~~~~~~~~~~~~~~~~~~~~~

.. doxygenfunction:: barrier_force_magnitude
.. doxygenfunction:: barrier_force_magnitude_gradient

Adaptive Barrier Stiffness
~~~~~~~~~~~~~~~~~~~~~~~~~~

.. doxygenfunction:: initial_barrier_stiffness
.. doxygenfunction:: update_barrier_stiffness

Semi-Implicit Stiffness
^^^^^^^^^^^^^^^^^^^^^^^

.. doxygenfunction:: semi_implicit_stiffness(const CollisionMesh&, Eigen::ConstRef<Eigen::MatrixXd>, const StencilsT&, Eigen::ConstRef<Eigen::VectorXd>, const Eigen::SparseMatrix<double>&, const double)
44 changes: 0 additions & 44 deletions docs/source/cpp-api/potentials.rst

This file was deleted.

4 changes: 4 additions & 0 deletions docs/source/cpp-api/potentials/BarrierPotential.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
BarrierPotential
================

.. doxygenclass:: ipc::BarrierPotential
4 changes: 4 additions & 0 deletions docs/source/cpp-api/potentials/FrictionPotential.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
FrictionPotential
=================

.. doxygenclass:: ipc::FrictionPotential
4 changes: 4 additions & 0 deletions docs/source/cpp-api/potentials/NormalAdhesionPotential.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
NormalAdhesionPotential
========================

.. doxygenclass:: ipc::NormalAdhesionPotential
4 changes: 4 additions & 0 deletions docs/source/cpp-api/potentials/NormalPotential.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
NormalPotential
===============

.. doxygenclass:: ipc::NormalPotential
4 changes: 4 additions & 0 deletions docs/source/cpp-api/potentials/Potential.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
Potential
==========

.. doxygenclass:: ipc::Potential
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
TangentialAdhesionPotential
============================

.. doxygenclass:: ipc::TangentialAdhesionPotential
4 changes: 4 additions & 0 deletions docs/source/cpp-api/potentials/TangentialPotential.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
TangentialPotential
===================

.. doxygenclass:: ipc::TangentialPotential
Loading
Loading