Metadata-Version: 2.4
Name: dmipy-analytic
Version: 3.0.0
Summary: Closed and semi-closed forms of the diffusion-MRI signal for special cases, each with its assumptions and its source: the one copy the dmipy packages import
Author-email: Rutger Fick <fick.rutger@gmail.com>
License: Apache-2.0
Project-URL: Homepage, https://dmipy.org
Project-URL: Source, https://github.com/dmrai-lab/dmipy-analytic
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Scientific/Engineering :: Physics
Classifier: Topic :: Scientific/Engineering :: Medical Science Apps.
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: numpy>=2.0
Provides-Extra: special
Requires-Dist: scipy>=1.11; extra == "special"
Provides-Extra: jax
Requires-Dist: jax>=0.6.2; extra == "jax"
Provides-Extra: test
Requires-Dist: pytest>=8; extra == "test"
Requires-Dist: scipy>=1.11; extra == "test"
Dynamic: license-file

# dmipy-analytic

Closed and semi-closed forms of the diffusion-MRI signal for special cases: free diffusion, restriction in simple
pores, exchange, relaxation and coherence pathways, orientation distributions and the fields of simple shapes.

Each form states the assumptions it holds under and the source it comes from (paper and equation), and is tested
against an independent route where one exists. It is the one copy the dmipy packages import: dmipy-fit fits these
forms, dmipy-replay and dmipy-sim use the ones their engines need, and the rest check replay packs and simulations
where a form and a walk describe the same situation.

```
pip install dmipy-analytic             # numpy only
pip install dmipy-analytic[special]    # the forms that need scipy's special functions
pip install dmipy-analytic[jax]        # dmipy_analytic.jax: the same forms for jit, grad and vmap
```

The modules: `constants` (the physical constants), `harmonics` (the real spherical-harmonic basis and its rotations),
`orientation` (the Watson and Bingham kernels), `gaussian` (free diffusion, the stick, the zeppelin, the tensor),
`restricted` (the plane, cylinder and sphere pores: the eigenmode method and the closed forms), `exchange` (exchanging
compartments, permeable membranes), `relaxation` (relaxation, surface relaxivity, magnetization exchange between
pools), `epg` (extended phase graphs) and `fields` (the fields of simple shapes of susceptibility); `dmipy_analytic.jax`
holds the JAX twins, module by module.

Licence: Apache-2.0.
