  Physics-informed learning has shown to have a better generalization than
learning without physical priors.
  However, training physics-informed deep neural networks requires some aspect
of physical simulations to be written in a differentiable manner.
  Unfortunately, some operations and functionals commonly used in physical
simulations are scattered, hard to integrate, and lack higher order derivatives
which are needed in physical simulations.
  In this work, we present $\xi$-torch, a library of differentiable functionals
for scientific simulations.
  Example functionals are a root finder and an initial value problem solver,
among others.
  The gradient of functionals in $\xi$-torch are written based on their
analytical expression to improve numerical stability and reduce memory
requirements.
  $\xi$-torch also provides second and higher order derivatives of the
functionals which are rarely available in existing packages.
  We show two applications of this library in optimizing parameters in physics
simulations.
  The library and all test cases in this work can be found at
https://github.com/xitorch/xitorch/ and the documentation at
https://xitorch.readthedocs.io.
