signal_models

Module: signal_models.capped_cylinder_models

class dmipy.signal_models.capped_cylinder_models.CC3CappedCylinderCallaghanApproximation(mu=None, diameter=None, length=None, diffusion_intra=1.7e-09, number_of_roots_cylinder=20, number_of_functions_cylinder=50, number_of_roots_plane=40)

The Callaghan model [R61] - a cylinder with finite radius - for intra-axonal diffusion. The perpendicular diffusion is modelled after Callaghan’s solution for the disk. The parallel diffusion of the capped cylinder is modelled using the same Callaghan approximation but between two parallel planes with a certain distance or ‘length’ between them.

Parameters:

mu : array, shape(2),

angles [theta, phi] representing main orientation on the sphere. theta is inclination of polar angle of main angle mu [0, pi]. phi is polar angle of main angle mu [-pi, pi].

diameter : float,

cylinder (axon) diameter in meters.

length : float,

cylinder length in meters.

diffusion_intra : float,

The diffusion constant of the water particles inside the cylinder. The default value is the approximate diffusivity of water inside axons as 1.7e-9 m^2/s.

number_of_roots_cylinder : integer,

number of roots for the cylinder Callaghan approximation.

number_of_functions_cylinder : integer,

number of functions for the cylinder Callaghan approximation.

number_of_roots_plane : integer,

number of roots for the plane Callaghan approximation.

References

[R61](1, 2) Callaghan, Paul T. “Pulsed-gradient spin-echo NMR for planar, cylindrical, and spherical pores under conditions of wall relaxation.” Journal of magnetic resonance, Series A 113.1 (1995): 53-59.

Attributes

Methods

Module: signal_models.cylinder_models

class dmipy.signal_models.cylinder_models.C1Stick(mu=None, lambda_par=None)

The Stick model [R62] - a cylinder with zero radius - typically used for intra-axonal diffusion.

Parameters:

mu : array, shape(2),

angles [theta, phi] representing main orientation on the sphere. theta is inclination of polar angle of main angle mu [0, pi]. phi is polar angle of main angle mu [-pi, pi].

lambda_par : float,

parallel diffusivity in m^2/s.

References

[R62](1, 2)

Behrens et al. “Characterization and propagation of uncertainty in

diffusion-weighted MR imaging”

Magnetic Resonance in Medicine (2003)

Attributes

Methods

rotational_harmonics_representation(acquisition_scheme, **kwargs)

The rotational harmonics of the model, such that Y_lm = Yl0. Axis aligned with z-axis to be used as kernel for spherical convolution. Returns an array with rotational harmonics for each shell.

Parameters:

acquisition_scheme : DmipyAcquisitionScheme instance,

An acquisition scheme that has been instantiated using dMipy.

kwargs: keyword arguments to the model parameter values, :

Is internally given as **parameter_dictionary.

Returns:

rh_array : array, shape(Nshells, N_rh_coef),

Rotational harmonics coefficients for each shell.

spherical_mean(acquisition_scheme, **kwargs)

Estimates spherical mean for every shell in acquisition scheme for Stick model.

Parameters:

acquisition_scheme : DmipyAcquisitionScheme instance,

An acquisition scheme that has been instantiated using dMipy.

kwargs: keyword arguments to the model parameter values, :

Is internally given as **parameter_dictionary.

Returns:

E_mean : array of size (Nshells)

spherical mean of the Stick model for every acquisition shell.

class dmipy.signal_models.cylinder_models.C2CylinderStejskalTannerApproximation(mu=None, lambda_par=None, diameter=None)

The Stejskal-Tanner approximation of the cylinder model with finite radius, proposed by Soderman and Jonsson [R63]. Assumes that both the short gradient pulse (SGP) approximation is met and long diffusion time limit is reached. The perpendicular cylinder diffusion therefore only depends on the q-value of the acquisition.

Parameters:

mu : array, shape(2),

angles [theta, phi] representing main orientation on the sphere. theta is inclination of polar angle of main angle mu [0, pi]. phi is polar angle of main angle mu [-pi, pi].

lambda_par : float,

parallel diffusivity in m^2/s.

diameter : float,

cylinder diameter in meters.

Returns:

E : array, shape (N,)

signal attenuation

References

[R63](1, 2) Soderman, Olle, and Bengt Jonsson. “Restricted diffusion in cylindrical geometry.” Journal of Magnetic Resonance, Series A 117.1 (1995): 94-97.

Attributes

Methods

perpendicular_attenuation(q, diameter)

Returns the cylinder’s perpendicular signal attenuation.

rotational_harmonics_representation(acquisition_scheme, **kwargs)

The rotational harmonics of the model, such that Y_lm = Yl0. Axis aligned with z-axis to be used as kernel for spherical convolution. Returns an array with rotational harmonics for each shell.

Parameters:

acquisition_scheme : DmipyAcquisitionScheme instance,

An acquisition scheme that has been instantiated using dMipy.

kwargs: keyword arguments to the model parameter values, :

Is internally given as **parameter_dictionary.

Returns:

rh_array : array, shape(Nshells, N_rh_coef),

Rotational harmonics coefficients for each shell.

spherical_mean(acquisition_scheme, **kwargs)

Estimates spherical mean for every shell in acquisition scheme.

Parameters:

acquisition_scheme : DmipyAcquisitionScheme instance,

An acquisition scheme that has been instantiated using dMipy.

kwargs: keyword arguments to the model parameter values, :

Is internally given as **parameter_dictionary.

Returns:

E_mean : float,

spherical mean of the model for every acquisition shell.

class dmipy.signal_models.cylinder_models.C3CylinderCallaghanApproximation(mu=None, lambda_par=None, diameter=None, diffusion_perpendicular=1.7e-09, number_of_roots=20, number_of_functions=50)

The Callaghan model [R64] - a cylinder with finite radius - typically used for intra-axonal diffusion. The perpendicular diffusion is modelled after Callaghan’s solution for the disk. Is dependent on both q-value and diffusion time.

Parameters:

mu : array, shape(2),

angles [theta, phi] representing main orientation on the sphere. theta is inclination of polar angle of main angle mu [0, pi]. phi is polar angle of main angle mu [-pi, pi].

lambda_par : float,

parallel diffusivity in m^2/s.

diameter : float,

cylinder (axon) diameter in meters.

diffusion_perpendicular : float,

the intra-cylindrical, perpenicular diffusivity. By default it is set to a typical value for intra-axonal diffusion as 1.7e-9 m^2/s.

number_of_roots : integer,

number of roots to use for the Callaghan cylinder model.

number_of_function : integer,

number of functions to use for the Callaghan cylinder model.

References

[R64](1, 2) Callaghan, Paul T. “Pulsed-gradient spin-echo NMR for planar, cylindrical, and spherical pores under conditions of wall relaxation.” Journal of magnetic resonance, Series A 113.1 (1995): 53-59.

Attributes

Methods

perpendicular_attenuation(q, tau, diameter)

Implements the finite time Callaghan model for cylinders

rotational_harmonics_representation(acquisition_scheme, **kwargs)

The rotational harmonics of the model, such that Y_lm = Yl0. Axis aligned with z-axis to be used as kernel for spherical convolution. Returns an array with rotational harmonics for each shell.

Parameters:

acquisition_scheme : DmipyAcquisitionScheme instance,

An acquisition scheme that has been instantiated using dMipy.

kwargs: keyword arguments to the model parameter values, :

Is internally given as **parameter_dictionary.

Returns:

rh_array : array, shape(Nshells, N_rh_coef),

Rotational harmonics coefficients for each shell.

spherical_mean(acquisition_scheme, **kwargs)

Estimates spherical mean for every shell in acquisition scheme.

Parameters:

acquisition_scheme : DmipyAcquisitionScheme instance,

An acquisition scheme that has been instantiated using dMipy.

kwargs: keyword arguments to the model parameter values, :

Is internally given as **parameter_dictionary.

Returns:

E_mean : float,

spherical mean of the model for every acquisition shell.

class dmipy.signal_models.cylinder_models.C4CylinderGaussianPhaseApproximation(mu=None, lambda_par=None, diameter=None, diffusion_perpendicular=1.7e-09)

The Gaussian phase model [R65] - a cylinder with finite radius - typically used for intra-axonal diffusion. The perpendicular diffusion is modelled after Van Gelderen’s solution for the disk. It is dependent on gradient strength, pulse separation and pulse length.

Parameters:

mu : array, shape(2),

angles [theta, phi] representing main orientation on the sphere. theta is inclination of polar angle of main angle mu [0, pi]. phi is polar angle of main angle mu [-pi, pi].

lambda_par : float,

parallel diffusivity in 10^9 m^2/s.

diameter : float,

cylinder (axon) diameter in meters.

References

[R65](1, 2) Van Gelderen et al. “Evaluation of Restricted Diffusion in Cylinders. Phosphocreatine in Rabbit Leg Muscle” Journal of Magnetic Resonance Series B (1994)

Attributes

Methods

perpendicular_attenuation(gradient_strength, delta, Delta, diameter)

Calculates the cylinder’s perpendicular signal attenuation.

rotational_harmonics_representation(acquisition_scheme, **kwargs)

The rotational harmonics of the model, such that Y_lm = Yl0. Axis aligned with z-axis to be used as kernel for spherical convolution. Returns an array with rotational harmonics for each shell.

Parameters:

acquisition_scheme : DmipyAcquisitionScheme instance,

An acquisition scheme that has been instantiated using dMipy.

kwargs: keyword arguments to the model parameter values, :

Is internally given as **parameter_dictionary.

Returns:

rh_array : array, shape(Nshells, N_rh_coef),

Rotational harmonics coefficients for each shell.

spherical_mean(acquisition_scheme, **kwargs)

Estimates spherical mean for every shell in acquisition scheme.

Parameters:

acquisition_scheme : DmipyAcquisitionScheme instance,

An acquisition scheme that has been instantiated using dMipy.

kwargs: keyword arguments to the model parameter values, :

Is internally given as **parameter_dictionary.

Returns:

E_mean : float,

spherical mean of the model for every acquisition shell.

Module: signal_models.gaussian_models

Document Module

class dmipy.signal_models.gaussian_models.G1Ball(lambda_iso=None)

The Ball model [R66] - an isotropic Tensor with one diffusivity.

Parameters:

lambda_iso : float,

isotropic diffusivity in m^2/s.

References

[R66](1, 2)

Behrens et al. “Characterization and propagation of uncertainty in

diffusion-weighted MR imaging”

Magnetic Resonance in Medicine (2003)

Attributes

Methods

rotational_harmonics_representation(acquisition_scheme, **kwargs)

The rotational harmonics of the model, such that Y_lm = Yl0. Axis aligned with z-axis to be used as kernel for spherical convolution. Returns an array with rotational harmonics for each shell.

Parameters:

acquisition_scheme : DmipyAcquisitionScheme instance,

An acquisition scheme that has been instantiated using dMipy.

kwargs: keyword arguments to the model parameter values, :

Is internally given as **parameter_dictionary.

Returns:

rh_array : array, shape(Nshells, N_rh_coef),

Rotational harmonics coefficients for each shell.

spherical_mean(acquisition_scheme, **kwargs)

Estimates spherical mean for every shell in acquisition scheme

Parameters:

acquisition_scheme : DmipyAcquisitionScheme instance,

An acquisition scheme that has been instantiated using dMipy.

kwargs: keyword arguments to the model parameter values, :

Is internally given as **parameter_dictionary.

Returns:

E_mean : float,

spherical mean of the model for every acquisition shell.

class dmipy.signal_models.gaussian_models.G2Zeppelin(mu=None, lambda_par=None, lambda_perp=None)

The Zeppelin model [R67] - an axially symmetric Tensor - typically used for extra-axonal diffusion.

Parameters:

mu : array, shape(2),

angles [theta, phi] representing main orientation on the sphere. theta is inclination of polar angle of main angle mu [0, pi]. phi is polar angle of main angle mu [-pi, pi].

lambda_par : float,

parallel diffusivity in m^2/s.

lambda_perp : float,

perpendicular diffusivity in m^2/s.

Returns:

E_zeppelin : float or array, shape(N),

signal attenuation.

References

[R67](1, 2)

Panagiotaki et al. “Compartment models of the diffusion MR signal in brain white

matter: a taxonomy and comparison”. NeuroImage (2012)

Attributes

Methods

rotational_harmonics_representation(acquisition_scheme, **kwargs)

The rotational harmonics of the model, such that Y_lm = Yl0. Axis aligned with z-axis to be used as kernel for spherical convolution. Returns an array with rotational harmonics for each shell.

Parameters:

acquisition_scheme : DmipyAcquisitionScheme instance,

An acquisition scheme that has been instantiated using dMipy.

kwargs: keyword arguments to the model parameter values, :

Is internally given as **parameter_dictionary.

Returns:

rh_array : array, shape(Nshells, N_rh_coef),

Rotational harmonics coefficients for each shell.

spherical_mean(acquisition_scheme, **kwargs)

Estimates spherical mean for every shell in acquisition scheme for Zeppelin model.

Parameters:

acquisition_scheme : DmipyAcquisitionScheme instance,

An acquisition scheme that has been instantiated using dMipy.

kwargs: keyword arguments to the model parameter values, :

Is internally given as **parameter_dictionary.

Returns:

E_mean : float,

spherical mean of the Zeppelin model for every acquisition shell.

class dmipy.signal_models.gaussian_models.G3TemporalZeppelin(mu=None, lambda_par=None, lambda_inf=None, A=None)

The temporal Zeppelin model [R68] - an axially symmetric Tensor - typically used to describe extra-axonal diffusion. The G3TemporalZeppelin differs from G2Zeppelin in that it has a time-dependent perpendicular parameter “A”, which describe extra-axonal diffusion hindrance due to axon packing, and that lambda_perp is instead called lambda_inf, as it describes the perpendicular diffusivity when diffusion time is infinite.

Parameters:

mu : array, shape(2),

angles [theta, phi] representing main orientation on the sphere. theta is inclination of polar angle of main angle mu [0, pi]. phi is polar angle of main angle mu [-pi, pi].

lambda_par : float,

parallel diffusivity in 10^9 m^2/s.

lambda_inf : float,

bulk diffusivity constant 10^9 m^2/s.

A: float, :

characteristic coefficient in 10^12 m^2

Returns:

E_zeppelin : float or array, shape(N),

signal attenuation.

References

[R68](1, 2) Burcaw, L.M., Fieremans, E., Novikov, D.S., 2015. Mesoscopic structure of neuronal tracts from time-dependent diffusion. NeuroImage 114, 18.

Attributes

Methods

rotational_harmonics_representation(acquisition_scheme, **kwargs)

The rotational harmonics of the model, such that Y_lm = Yl0. Axis aligned with z-axis to be used as kernel for spherical convolution. Returns an array with rotational harmonics for each shell.

Parameters:

acquisition_scheme : DmipyAcquisitionScheme instance,

An acquisition scheme that has been instantiated using dMipy.

kwargs: keyword arguments to the model parameter values, :

Is internally given as **parameter_dictionary.

Returns:

rh_array : array, shape(Nshells, N_rh_coef),

Rotational harmonics coefficients for each shell.

spherical_mean(acquisition_scheme, **kwargs)

Estimates spherical mean for every shell in acquisition scheme for Restricted Zeppelin model.

Parameters:

acquisition_scheme : DmipyAcquisitionScheme instance,

An acquisition scheme that has been instantiated using dMipy.

kwargs: keyword arguments to the model parameter values, :

Is internally given as **parameter_dictionary.

Returns:

E_mean : float,

spherical mean of the Restricted Zeppelin model for every acquisition shell.

Module: signal_models.plane_models

class dmipy.signal_models.plane_models.P3PlaneCallaghanApproximation(diameter=None, diffusion_constant=1.7e-09, number_of_roots=40)

The Callaghan model [1]_ of diffusion between two parallel infinite plates.

Parameters:

diameter : float

Distance between the two plates in meters.

diffusion_constant : float,

The diffusion constant of the water particles between the two planes. The default value is the approximate diffusivity of water inside axons as 1.7e-9 m^2/s.

number_of_roots : integer,

The number of roots for the Callaghan approximation.

References

[1] Callaghan, “Pulsed-Gradient Spin-Echo NMR for Planar, Cylindrical,
and Spherical Pores under Conditions of Wall Relaxation”, JMR 1995

Attributes

Methods

plane_attenuation(q, tau, diameter)

Implements the finite time Callaghan model for planes.

Module: signal_models.sphere_models

class dmipy.signal_models.sphere_models.S1Dot

The Dot model [R69] - an non-diffusing compartment. It has no parameters and returns 1 no matter the input.

References

[R69](1, 2)

Panagiotaki et al. “Compartment models of the diffusion MR signal in brain white

matter: a taxonomy and comparison”. NeuroImage (2012)

Attributes

Methods

rotational_harmonics_representation(acquisition_scheme, **kwargs)

The rotational harmonics of the model, such that Y_lm = Yl0. Axis aligned with z-axis to be used as kernel for spherical convolution. Returns an array with rotational harmonics for each shell.

Parameters:

acquisition_scheme : DmipyAcquisitionScheme instance,

An acquisition scheme that has been instantiated using dMipy.

kwargs: keyword arguments to the model parameter values, :

Is internally given as **parameter_dictionary.

Returns:

rh_array : array, shape(Nshells, N_rh_coef),

Rotational harmonics coefficients for each shell.

spherical_mean(acquisition_scheme, **kwargs)

Estimates spherical mean for every shell in acquisition scheme.

Parameters:

acquisition_scheme : DmipyAcquisitionScheme instance,

An acquisition scheme that has been instantiated using dMipy.

kwargs: keyword arguments to the model parameter values, :

Is internally given as **parameter_dictionary.

Returns:

E_mean : float,

spherical mean of the model for every acquisition shell.

class dmipy.signal_models.sphere_models.S2SphereStejskalTannerApproximation(diameter=None)

The Stejskal Tanner signal approximation of a sphere model. It assumes that pulse length is infinitessimally small and diffusion time large enough so that the diffusion is completely restricted. Only depends on q-value.

Parameters:

diameter : float,

sphere diameter in meters.

References

[R70]Balinov, Balin, et al. “The NMR self-diffusion method applied to restricted diffusion. Simulation of echo attenuation from molecules in spheres and between planes.” Journal of Magnetic Resonance, Series A 104.1 (1993): 17-25.

Attributes

Methods

rotational_harmonics_representation(acquisition_scheme, **kwargs)

The rotational harmonics of the model, such that Y_lm = Yl0. Axis aligned with z-axis to be used as kernel for spherical convolution. Returns an array with rotational harmonics for each shell.

Parameters:

acquisition_scheme : DmipyAcquisitionScheme instance,

An acquisition scheme that has been instantiated using dMipy.

kwargs: keyword arguments to the model parameter values, :

Is internally given as **parameter_dictionary.

Returns:

rh_array : array, shape(Nshells, N_rh_coef),

Rotational harmonics coefficients for each shell.

sphere_attenuation(q, diameter)

The signal attenuation for the sphere model.

spherical_mean(acquisition_scheme, **kwargs)

Estimates spherical mean for every shell in acquisition scheme.

Parameters:

acquisition_scheme : DmipyAcquisitionScheme instance,

An acquisition scheme that has been instantiated using dMipy.

kwargs: keyword arguments to the model parameter values, :

Is internally given as **parameter_dictionary.

Returns:

E_mean : float,

spherical mean of the model for every acquisition shell.

CC2CappedCylinderStejskalTannerApproximation

class dmipy.signal_models.capped_cylinder_models.CC2CappedCylinderStejskalTannerApproximation(mu=None, diameter=None, length=None)

Bases: dmipy.core.modeling_framework.ModelProperties

The Stejskal-Tanner model for intra-cylindrical diffusion inside a capped cylinder with finite radius and length. The perpendicular diffusion is modelled after Soderman’s solution for the disk [R71]. The parallel diffusion between planes has been implemented according to Balinov [R72].

Parameters:

mu : array, shape(2),

angles [theta, phi] representing main orientation on the sphere. theta is inclination of polar angle of main angle mu [0, pi]. phi is polar angle of main angle mu [-pi, pi].

diameter : float,

capped cylinder (axon) diameter in meters.

length : float,

capped cylinder length in meters.

References

[R71](1, 2) Soderman, Olle, and Bengt Jonsson. “Restricted diffusion in cylindrical geometry.” Journal of Magnetic Resonance, Series A 117.1 (1995): 94-97.
[R72](1, 2) Balinov, Balin, et al. “The NMR self-diffusion method applied to restricted diffusion. Simulation of echo attenuation from molecules in spheres and between planes.” Journal of Magnetic Resonance, Series A 104.1 (1993): 17-25.

Attributes

Methods

__init__(mu=None, diameter=None, length=None)

CC3CappedCylinderCallaghanApproximation

class dmipy.signal_models.capped_cylinder_models.CC3CappedCylinderCallaghanApproximation(mu=None, diameter=None, length=None, diffusion_intra=1.7e-09, number_of_roots_cylinder=20, number_of_functions_cylinder=50, number_of_roots_plane=40)

Bases: dmipy.core.modeling_framework.ModelProperties

The Callaghan model [R73] - a cylinder with finite radius - for intra-axonal diffusion. The perpendicular diffusion is modelled after Callaghan’s solution for the disk. The parallel diffusion of the capped cylinder is modelled using the same Callaghan approximation but between two parallel planes with a certain distance or ‘length’ between them.

Parameters:

mu : array, shape(2),

angles [theta, phi] representing main orientation on the sphere. theta is inclination of polar angle of main angle mu [0, pi]. phi is polar angle of main angle mu [-pi, pi].

diameter : float,

cylinder (axon) diameter in meters.

length : float,

cylinder length in meters.

diffusion_intra : float,

The diffusion constant of the water particles inside the cylinder. The default value is the approximate diffusivity of water inside axons as 1.7e-9 m^2/s.

number_of_roots_cylinder : integer,

number of roots for the cylinder Callaghan approximation.

number_of_functions_cylinder : integer,

number of functions for the cylinder Callaghan approximation.

number_of_roots_plane : integer,

number of roots for the plane Callaghan approximation.

References

[R73](1, 2) Callaghan, Paul T. “Pulsed-gradient spin-echo NMR for planar, cylindrical, and spherical pores under conditions of wall relaxation.” Journal of magnetic resonance, Series A 113.1 (1995): 53-59.

Attributes

Methods

__init__(mu=None, diameter=None, length=None, diffusion_intra=1.7e-09, number_of_roots_cylinder=20, number_of_functions_cylinder=50, number_of_roots_plane=40)

ModelProperties

class dmipy.signal_models.capped_cylinder_models.ModelProperties

Contains various properties for CompartmentModels.

Attributes

parameter_cardinality

Returns the cardinality of model parameters

parameter_names

Returns the names of model parameters.

parameter_ranges

Returns the optimization ranges of the model parameters. These ranges are given in O(1) scale so optimization algorithms don’t suffer from large scale differences in optimization parameters.

parameter_scales

Returns the optimization scales for the model parameters. The scales scale the parameter_ranges to their actual size inside optimization algorithms.

parameter_types

Returns the optimization scales for the model parameters. The scales scale the parameter_ranges to their actual size inside optimization algorithms.

C1Stick

class dmipy.signal_models.cylinder_models.C1Stick(mu=None, lambda_par=None)

Bases: dmipy.core.modeling_framework.ModelProperties

The Stick model [R74] - a cylinder with zero radius - typically used for intra-axonal diffusion.

Parameters:

mu : array, shape(2),

angles [theta, phi] representing main orientation on the sphere. theta is inclination of polar angle of main angle mu [0, pi]. phi is polar angle of main angle mu [-pi, pi].

lambda_par : float,

parallel diffusivity in m^2/s.

References

[R74](1, 2)

Behrens et al. “Characterization and propagation of uncertainty in

diffusion-weighted MR imaging”

Magnetic Resonance in Medicine (2003)

Attributes

Methods

__init__(mu=None, lambda_par=None)
rotational_harmonics_representation(acquisition_scheme, **kwargs)

The rotational harmonics of the model, such that Y_lm = Yl0. Axis aligned with z-axis to be used as kernel for spherical convolution. Returns an array with rotational harmonics for each shell.

Parameters:

acquisition_scheme : DmipyAcquisitionScheme instance,

An acquisition scheme that has been instantiated using dMipy.

kwargs: keyword arguments to the model parameter values, :

Is internally given as **parameter_dictionary.

Returns:

rh_array : array, shape(Nshells, N_rh_coef),

Rotational harmonics coefficients for each shell.

spherical_mean(acquisition_scheme, **kwargs)

Estimates spherical mean for every shell in acquisition scheme for Stick model.

Parameters:

acquisition_scheme : DmipyAcquisitionScheme instance,

An acquisition scheme that has been instantiated using dMipy.

kwargs: keyword arguments to the model parameter values, :

Is internally given as **parameter_dictionary.

Returns:

E_mean : array of size (Nshells)

spherical mean of the Stick model for every acquisition shell.

C2CylinderStejskalTannerApproximation

class dmipy.signal_models.cylinder_models.C2CylinderStejskalTannerApproximation(mu=None, lambda_par=None, diameter=None)

Bases: dmipy.core.modeling_framework.ModelProperties

The Stejskal-Tanner approximation of the cylinder model with finite radius, proposed by Soderman and Jonsson [R75]. Assumes that both the short gradient pulse (SGP) approximation is met and long diffusion time limit is reached. The perpendicular cylinder diffusion therefore only depends on the q-value of the acquisition.

Parameters:

mu : array, shape(2),

angles [theta, phi] representing main orientation on the sphere. theta is inclination of polar angle of main angle mu [0, pi]. phi is polar angle of main angle mu [-pi, pi].

lambda_par : float,

parallel diffusivity in m^2/s.

diameter : float,

cylinder diameter in meters.

Returns:

E : array, shape (N,)

signal attenuation

References

[R75](1, 2) Soderman, Olle, and Bengt Jonsson. “Restricted diffusion in cylindrical geometry.” Journal of Magnetic Resonance, Series A 117.1 (1995): 94-97.

Attributes

Methods

__init__(mu=None, lambda_par=None, diameter=None)
perpendicular_attenuation(q, diameter)

Returns the cylinder’s perpendicular signal attenuation.

rotational_harmonics_representation(acquisition_scheme, **kwargs)

The rotational harmonics of the model, such that Y_lm = Yl0. Axis aligned with z-axis to be used as kernel for spherical convolution. Returns an array with rotational harmonics for each shell.

Parameters:

acquisition_scheme : DmipyAcquisitionScheme instance,

An acquisition scheme that has been instantiated using dMipy.

kwargs: keyword arguments to the model parameter values, :

Is internally given as **parameter_dictionary.

Returns:

rh_array : array, shape(Nshells, N_rh_coef),

Rotational harmonics coefficients for each shell.

spherical_mean(acquisition_scheme, **kwargs)

Estimates spherical mean for every shell in acquisition scheme.

Parameters:

acquisition_scheme : DmipyAcquisitionScheme instance,

An acquisition scheme that has been instantiated using dMipy.

kwargs: keyword arguments to the model parameter values, :

Is internally given as **parameter_dictionary.

Returns:

E_mean : float,

spherical mean of the model for every acquisition shell.

C3CylinderCallaghanApproximation

class dmipy.signal_models.cylinder_models.C3CylinderCallaghanApproximation(mu=None, lambda_par=None, diameter=None, diffusion_perpendicular=1.7e-09, number_of_roots=20, number_of_functions=50)

Bases: dmipy.core.modeling_framework.ModelProperties

The Callaghan model [R76] - a cylinder with finite radius - typically used for intra-axonal diffusion. The perpendicular diffusion is modelled after Callaghan’s solution for the disk. Is dependent on both q-value and diffusion time.

Parameters:

mu : array, shape(2),

angles [theta, phi] representing main orientation on the sphere. theta is inclination of polar angle of main angle mu [0, pi]. phi is polar angle of main angle mu [-pi, pi].

lambda_par : float,

parallel diffusivity in m^2/s.

diameter : float,

cylinder (axon) diameter in meters.

diffusion_perpendicular : float,

the intra-cylindrical, perpenicular diffusivity. By default it is set to a typical value for intra-axonal diffusion as 1.7e-9 m^2/s.

number_of_roots : integer,

number of roots to use for the Callaghan cylinder model.

number_of_function : integer,

number of functions to use for the Callaghan cylinder model.

References

[R76](1, 2) Callaghan, Paul T. “Pulsed-gradient spin-echo NMR for planar, cylindrical, and spherical pores under conditions of wall relaxation.” Journal of magnetic resonance, Series A 113.1 (1995): 53-59.

Attributes

Methods

__init__(mu=None, lambda_par=None, diameter=None, diffusion_perpendicular=1.7e-09, number_of_roots=20, number_of_functions=50)
perpendicular_attenuation(q, tau, diameter)

Implements the finite time Callaghan model for cylinders

rotational_harmonics_representation(acquisition_scheme, **kwargs)

The rotational harmonics of the model, such that Y_lm = Yl0. Axis aligned with z-axis to be used as kernel for spherical convolution. Returns an array with rotational harmonics for each shell.

Parameters:

acquisition_scheme : DmipyAcquisitionScheme instance,

An acquisition scheme that has been instantiated using dMipy.

kwargs: keyword arguments to the model parameter values, :

Is internally given as **parameter_dictionary.

Returns:

rh_array : array, shape(Nshells, N_rh_coef),

Rotational harmonics coefficients for each shell.

spherical_mean(acquisition_scheme, **kwargs)

Estimates spherical mean for every shell in acquisition scheme.

Parameters:

acquisition_scheme : DmipyAcquisitionScheme instance,

An acquisition scheme that has been instantiated using dMipy.

kwargs: keyword arguments to the model parameter values, :

Is internally given as **parameter_dictionary.

Returns:

E_mean : float,

spherical mean of the model for every acquisition shell.

C4CylinderGaussianPhaseApproximation

class dmipy.signal_models.cylinder_models.C4CylinderGaussianPhaseApproximation(mu=None, lambda_par=None, diameter=None, diffusion_perpendicular=1.7e-09)

Bases: dmipy.core.modeling_framework.ModelProperties

The Gaussian phase model [R77] - a cylinder with finite radius - typically used for intra-axonal diffusion. The perpendicular diffusion is modelled after Van Gelderen’s solution for the disk. It is dependent on gradient strength, pulse separation and pulse length.

Parameters:

mu : array, shape(2),

angles [theta, phi] representing main orientation on the sphere. theta is inclination of polar angle of main angle mu [0, pi]. phi is polar angle of main angle mu [-pi, pi].

lambda_par : float,

parallel diffusivity in 10^9 m^2/s.

diameter : float,

cylinder (axon) diameter in meters.

References

[R77](1, 2) Van Gelderen et al. “Evaluation of Restricted Diffusion in Cylinders. Phosphocreatine in Rabbit Leg Muscle” Journal of Magnetic Resonance Series B (1994)

Attributes

Methods

__init__(mu=None, lambda_par=None, diameter=None, diffusion_perpendicular=1.7e-09)
perpendicular_attenuation(gradient_strength, delta, Delta, diameter)

Calculates the cylinder’s perpendicular signal attenuation.

rotational_harmonics_representation(acquisition_scheme, **kwargs)

The rotational harmonics of the model, such that Y_lm = Yl0. Axis aligned with z-axis to be used as kernel for spherical convolution. Returns an array with rotational harmonics for each shell.

Parameters:

acquisition_scheme : DmipyAcquisitionScheme instance,

An acquisition scheme that has been instantiated using dMipy.

kwargs: keyword arguments to the model parameter values, :

Is internally given as **parameter_dictionary.

Returns:

rh_array : array, shape(Nshells, N_rh_coef),

Rotational harmonics coefficients for each shell.

spherical_mean(acquisition_scheme, **kwargs)

Estimates spherical mean for every shell in acquisition scheme.

Parameters:

acquisition_scheme : DmipyAcquisitionScheme instance,

An acquisition scheme that has been instantiated using dMipy.

kwargs: keyword arguments to the model parameter values, :

Is internally given as **parameter_dictionary.

Returns:

E_mean : float,

spherical mean of the model for every acquisition shell.

ModelProperties

class dmipy.signal_models.cylinder_models.ModelProperties

Contains various properties for CompartmentModels.

Attributes

parameter_cardinality

Returns the cardinality of model parameters

parameter_names

Returns the names of model parameters.

parameter_ranges

Returns the optimization ranges of the model parameters. These ranges are given in O(1) scale so optimization algorithms don’t suffer from large scale differences in optimization parameters.

parameter_scales

Returns the optimization scales for the model parameters. The scales scale the parameter_ranges to their actual size inside optimization algorithms.

parameter_types

Returns the optimization scales for the model parameters. The scales scale the parameter_ranges to their actual size inside optimization algorithms.

optional_package

dmipy.signal_models.cylinder_models.optional_package(name, trip_msg=None)

Return package-like thing and module setup for package name

Parameters:

name : str

package name

trip_msg : None or str

message to give when someone tries to use the return package, but we could not import it, and have returned a TripWire object instead. Default message if None.

Returns:

pkg_like : module or TripWire instance

If we can import the package, return it. Otherwise return an object raising an error when accessed

have_pkg : bool

True if import for package was successful, false otherwise

module_setup : function

callable usually set as setup_module in calling namespace, to allow skipping tests.

G1Ball

class dmipy.signal_models.gaussian_models.G1Ball(lambda_iso=None)

Bases: dmipy.core.modeling_framework.ModelProperties

The Ball model [R78] - an isotropic Tensor with one diffusivity.

Parameters:

lambda_iso : float,

isotropic diffusivity in m^2/s.

References

[R78](1, 2)

Behrens et al. “Characterization and propagation of uncertainty in

diffusion-weighted MR imaging”

Magnetic Resonance in Medicine (2003)

Attributes

Methods

__init__(lambda_iso=None)
rotational_harmonics_representation(acquisition_scheme, **kwargs)

The rotational harmonics of the model, such that Y_lm = Yl0. Axis aligned with z-axis to be used as kernel for spherical convolution. Returns an array with rotational harmonics for each shell.

Parameters:

acquisition_scheme : DmipyAcquisitionScheme instance,

An acquisition scheme that has been instantiated using dMipy.

kwargs: keyword arguments to the model parameter values, :

Is internally given as **parameter_dictionary.

Returns:

rh_array : array, shape(Nshells, N_rh_coef),

Rotational harmonics coefficients for each shell.

spherical_mean(acquisition_scheme, **kwargs)

Estimates spherical mean for every shell in acquisition scheme

Parameters:

acquisition_scheme : DmipyAcquisitionScheme instance,

An acquisition scheme that has been instantiated using dMipy.

kwargs: keyword arguments to the model parameter values, :

Is internally given as **parameter_dictionary.

Returns:

E_mean : float,

spherical mean of the model for every acquisition shell.

G2Zeppelin

class dmipy.signal_models.gaussian_models.G2Zeppelin(mu=None, lambda_par=None, lambda_perp=None)

Bases: dmipy.core.modeling_framework.ModelProperties

The Zeppelin model [R79] - an axially symmetric Tensor - typically used for extra-axonal diffusion.

Parameters:

mu : array, shape(2),

angles [theta, phi] representing main orientation on the sphere. theta is inclination of polar angle of main angle mu [0, pi]. phi is polar angle of main angle mu [-pi, pi].

lambda_par : float,

parallel diffusivity in m^2/s.

lambda_perp : float,

perpendicular diffusivity in m^2/s.

Returns:

E_zeppelin : float or array, shape(N),

signal attenuation.

References

[R79](1, 2)

Panagiotaki et al. “Compartment models of the diffusion MR signal in brain white

matter: a taxonomy and comparison”. NeuroImage (2012)

Attributes

Methods

__init__(mu=None, lambda_par=None, lambda_perp=None)
rotational_harmonics_representation(acquisition_scheme, **kwargs)

The rotational harmonics of the model, such that Y_lm = Yl0. Axis aligned with z-axis to be used as kernel for spherical convolution. Returns an array with rotational harmonics for each shell.

Parameters:

acquisition_scheme : DmipyAcquisitionScheme instance,

An acquisition scheme that has been instantiated using dMipy.

kwargs: keyword arguments to the model parameter values, :

Is internally given as **parameter_dictionary.

Returns:

rh_array : array, shape(Nshells, N_rh_coef),

Rotational harmonics coefficients for each shell.

spherical_mean(acquisition_scheme, **kwargs)

Estimates spherical mean for every shell in acquisition scheme for Zeppelin model.

Parameters:

acquisition_scheme : DmipyAcquisitionScheme instance,

An acquisition scheme that has been instantiated using dMipy.

kwargs: keyword arguments to the model parameter values, :

Is internally given as **parameter_dictionary.

Returns:

E_mean : float,

spherical mean of the Zeppelin model for every acquisition shell.

G3TemporalZeppelin

class dmipy.signal_models.gaussian_models.G3TemporalZeppelin(mu=None, lambda_par=None, lambda_inf=None, A=None)

Bases: dmipy.core.modeling_framework.ModelProperties

The temporal Zeppelin model [R80] - an axially symmetric Tensor - typically used to describe extra-axonal diffusion. The G3TemporalZeppelin differs from G2Zeppelin in that it has a time-dependent perpendicular parameter “A”, which describe extra-axonal diffusion hindrance due to axon packing, and that lambda_perp is instead called lambda_inf, as it describes the perpendicular diffusivity when diffusion time is infinite.

Parameters:

mu : array, shape(2),

angles [theta, phi] representing main orientation on the sphere. theta is inclination of polar angle of main angle mu [0, pi]. phi is polar angle of main angle mu [-pi, pi].

lambda_par : float,

parallel diffusivity in 10^9 m^2/s.

lambda_inf : float,

bulk diffusivity constant 10^9 m^2/s.

A: float, :

characteristic coefficient in 10^12 m^2

Returns:

E_zeppelin : float or array, shape(N),

signal attenuation.

References

[R80](1, 2) Burcaw, L.M., Fieremans, E., Novikov, D.S., 2015. Mesoscopic structure of neuronal tracts from time-dependent diffusion. NeuroImage 114, 18.

Attributes

Methods

__init__(mu=None, lambda_par=None, lambda_inf=None, A=None)
rotational_harmonics_representation(acquisition_scheme, **kwargs)

The rotational harmonics of the model, such that Y_lm = Yl0. Axis aligned with z-axis to be used as kernel for spherical convolution. Returns an array with rotational harmonics for each shell.

Parameters:

acquisition_scheme : DmipyAcquisitionScheme instance,

An acquisition scheme that has been instantiated using dMipy.

kwargs: keyword arguments to the model parameter values, :

Is internally given as **parameter_dictionary.

Returns:

rh_array : array, shape(Nshells, N_rh_coef),

Rotational harmonics coefficients for each shell.

spherical_mean(acquisition_scheme, **kwargs)

Estimates spherical mean for every shell in acquisition scheme for Restricted Zeppelin model.

Parameters:

acquisition_scheme : DmipyAcquisitionScheme instance,

An acquisition scheme that has been instantiated using dMipy.

kwargs: keyword arguments to the model parameter values, :

Is internally given as **parameter_dictionary.

Returns:

E_mean : float,

spherical mean of the Restricted Zeppelin model for every acquisition shell.

ModelProperties

class dmipy.signal_models.gaussian_models.ModelProperties

Contains various properties for CompartmentModels.

Attributes

parameter_cardinality

Returns the cardinality of model parameters

parameter_names

Returns the names of model parameters.

parameter_ranges

Returns the optimization ranges of the model parameters. These ranges are given in O(1) scale so optimization algorithms don’t suffer from large scale differences in optimization parameters.

parameter_scales

Returns the optimization scales for the model parameters. The scales scale the parameter_ranges to their actual size inside optimization algorithms.

parameter_types

Returns the optimization scales for the model parameters. The scales scale the parameter_ranges to their actual size inside optimization algorithms.

optional_package

dmipy.signal_models.gaussian_models.optional_package(name, trip_msg=None)

Return package-like thing and module setup for package name

Parameters:

name : str

package name

trip_msg : None or str

message to give when someone tries to use the return package, but we could not import it, and have returned a TripWire object instead. Default message if None.

Returns:

pkg_like : module or TripWire instance

If we can import the package, return it. Otherwise return an object raising an error when accessed

have_pkg : bool

True if import for package was successful, false otherwise

module_setup : function

callable usually set as setup_module in calling namespace, to allow skipping tests.

ModelProperties

class dmipy.signal_models.plane_models.ModelProperties

Contains various properties for CompartmentModels.

Attributes

parameter_cardinality

Returns the cardinality of model parameters

parameter_names

Returns the names of model parameters.

parameter_ranges

Returns the optimization ranges of the model parameters. These ranges are given in O(1) scale so optimization algorithms don’t suffer from large scale differences in optimization parameters.

parameter_scales

Returns the optimization scales for the model parameters. The scales scale the parameter_ranges to their actual size inside optimization algorithms.

parameter_types

Returns the optimization scales for the model parameters. The scales scale the parameter_ranges to their actual size inside optimization algorithms.

P2PlaneStejskalTannerApproximation

class dmipy.signal_models.plane_models.P2PlaneStejskalTannerApproximation(diameter=None)

Bases: dmipy.core.modeling_framework.ModelProperties

Stejskal-Tanner approximation of diffusion between two infinitely large parallel planes. Assumes short-gradient pulse (SGP) approximation (pulse length towards zero) and the long diffusion time limit (pulse separation towards infinity). We follow the notation of Balinov [R81].

References

[R81](1, 2) Balinov, Balin, et al. “The NMR self-diffusion method applied to restricted diffusion. Simulation of echo attenuation from molecules in spheres and between planes.” Journal of Magnetic Resonance, Series A 104.1 (1993): 17-25.

Attributes

Methods

__init__(diameter=None)
plane_attenuation(q, diameter)

Equation 6 in Balinov et al. (1993).

P3PlaneCallaghanApproximation

class dmipy.signal_models.plane_models.P3PlaneCallaghanApproximation(diameter=None, diffusion_constant=1.7e-09, number_of_roots=40)

Bases: dmipy.core.modeling_framework.ModelProperties

The Callaghan model [1]_ of diffusion between two parallel infinite plates.

Parameters:

diameter : float

Distance between the two plates in meters.

diffusion_constant : float,

The diffusion constant of the water particles between the two planes. The default value is the approximate diffusivity of water inside axons as 1.7e-9 m^2/s.

number_of_roots : integer,

The number of roots for the Callaghan approximation.

References

[1] Callaghan, “Pulsed-Gradient Spin-Echo NMR for Planar, Cylindrical,
and Spherical Pores under Conditions of Wall Relaxation”, JMR 1995

Attributes

Methods

__init__(diameter=None, diffusion_constant=1.7e-09, number_of_roots=40)
plane_attenuation(q, tau, diameter)

Implements the finite time Callaghan model for planes.

ModelProperties

class dmipy.signal_models.sphere_models.ModelProperties

Contains various properties for CompartmentModels.

Attributes

parameter_cardinality

Returns the cardinality of model parameters

parameter_names

Returns the names of model parameters.

parameter_ranges

Returns the optimization ranges of the model parameters. These ranges are given in O(1) scale so optimization algorithms don’t suffer from large scale differences in optimization parameters.

parameter_scales

Returns the optimization scales for the model parameters. The scales scale the parameter_ranges to their actual size inside optimization algorithms.

parameter_types

Returns the optimization scales for the model parameters. The scales scale the parameter_ranges to their actual size inside optimization algorithms.

S1Dot

class dmipy.signal_models.sphere_models.S1Dot

Bases: dmipy.core.modeling_framework.ModelProperties

The Dot model [R82] - an non-diffusing compartment. It has no parameters and returns 1 no matter the input.

References

[R82](1, 2)

Panagiotaki et al. “Compartment models of the diffusion MR signal in brain white

matter: a taxonomy and comparison”. NeuroImage (2012)

Attributes

Methods

rotational_harmonics_representation(acquisition_scheme, **kwargs)

The rotational harmonics of the model, such that Y_lm = Yl0. Axis aligned with z-axis to be used as kernel for spherical convolution. Returns an array with rotational harmonics for each shell.

Parameters:

acquisition_scheme : DmipyAcquisitionScheme instance,

An acquisition scheme that has been instantiated using dMipy.

kwargs: keyword arguments to the model parameter values, :

Is internally given as **parameter_dictionary.

Returns:

rh_array : array, shape(Nshells, N_rh_coef),

Rotational harmonics coefficients for each shell.

spherical_mean(acquisition_scheme, **kwargs)

Estimates spherical mean for every shell in acquisition scheme.

Parameters:

acquisition_scheme : DmipyAcquisitionScheme instance,

An acquisition scheme that has been instantiated using dMipy.

kwargs: keyword arguments to the model parameter values, :

Is internally given as **parameter_dictionary.

Returns:

E_mean : float,

spherical mean of the model for every acquisition shell.

S2SphereStejskalTannerApproximation

class dmipy.signal_models.sphere_models.S2SphereStejskalTannerApproximation(diameter=None)

Bases: dmipy.core.modeling_framework.ModelProperties

The Stejskal Tanner signal approximation of a sphere model. It assumes that pulse length is infinitessimally small and diffusion time large enough so that the diffusion is completely restricted. Only depends on q-value.

Parameters:

diameter : float,

sphere diameter in meters.

References

[R83]Balinov, Balin, et al. “The NMR self-diffusion method applied to restricted diffusion. Simulation of echo attenuation from molecules in spheres and between planes.” Journal of Magnetic Resonance, Series A 104.1 (1993): 17-25.

Attributes

Methods

__init__(diameter=None)
rotational_harmonics_representation(acquisition_scheme, **kwargs)

The rotational harmonics of the model, such that Y_lm = Yl0. Axis aligned with z-axis to be used as kernel for spherical convolution. Returns an array with rotational harmonics for each shell.

Parameters:

acquisition_scheme : DmipyAcquisitionScheme instance,

An acquisition scheme that has been instantiated using dMipy.

kwargs: keyword arguments to the model parameter values, :

Is internally given as **parameter_dictionary.

Returns:

rh_array : array, shape(Nshells, N_rh_coef),

Rotational harmonics coefficients for each shell.

sphere_attenuation(q, diameter)

The signal attenuation for the sphere model.

spherical_mean(acquisition_scheme, **kwargs)

Estimates spherical mean for every shell in acquisition scheme.

Parameters:

acquisition_scheme : DmipyAcquisitionScheme instance,

An acquisition scheme that has been instantiated using dMipy.

kwargs: keyword arguments to the model parameter values, :

Is internally given as **parameter_dictionary.

Returns:

E_mean : float,

spherical mean of the model for every acquisition shell.

S4SphereGaussianPhaseApproximation

class dmipy.signal_models.sphere_models.S4SphereGaussianPhaseApproximation(diameter=None, diffusion_constant=1.7e-09)

Bases: dmipy.core.modeling_framework.ModelProperties

The gaussian phase approximation for diffusion inside a sphere according to [R84]. It is dependent on gradient strength, pulse separation and pulse length.

References

[R84](1, 2) Balinov, Balin, et al. “The NMR self-diffusion method applied to restricted diffusion. Simulation of echo attenuation from molecules in spheres and between planes.” Journal of Magnetic Resonance, Series A 104.1 (1993): 17-25.

Attributes

Methods

__init__(diameter=None, diffusion_constant=1.7e-09)
SPHERE_TRASCENDENTAL_ROOTS = array([ 2.08157598, 5.94036999, 9.20584014, 12.40444502, 15.57923641, 18.74264558, 21.89969648, 25.05282528, 28.203361 , 31.35209173, 34.49951492, 37.64596032, 40.79165523, 43.93676147, 47.08139741, 50.22565165, 53.3695918 , 56.51327045, 59.656729 , 62.80000055, 65.9431119 , 69.08608495, 72.22893775, 75.3716854 , 78.51434055, 81.6569138 , 84.7994144 , 87.94185005, 91.0842275 , 94.22655255, 97.36883035, 100.5110653 , 103.6532613 , 106.7954217 , 109.9375497 , 113.079648 , 116.2217188 , 119.3637645 , 122.505787 , 125.647788 , 128.789769 , 131.9317315 , 135.0736768 , 138.2156061 , 141.3575204 , 144.4994207 , 147.641308 , 150.7831829 , 153.9250463 , 157.0668989 , 160.2087413 , 163.3505741 , 166.4923978 , 169.6342129 , 172.77602 , 175.9178194 , 179.0596116 , 182.2013968 , 185.3431756 , 188.4849481 , 191.6267147 , 194.7684757 , 197.9102314 , 201.051982 , 204.1937277 , 207.3354688 , 210.4772054 , 213.6189378 , 216.7606662 , 219.9023907 , 223.0441114 , 226.1858287 , 229.3275425 , 232.469253 , 235.6109603 , 238.7526647 , 241.8943662 , 245.0360648 , 248.1777608 , 251.3194542 , 254.4611451 , 257.6028336 , 260.7445198 , 263.8862038 , 267.0278856 , 270.1695654 , 273.3112431 , 276.4529189 , 279.5945929 , 282.736265 , 285.8779354 , 289.0196041 , 292.1612712 , 295.3029367 , 298.4446006 , 301.5862631 , 304.7279241 , 307.8695837 , 311.011242 , 314.152899 ])
rotational_harmonics_representation(acquisition_scheme, **kwargs)

The rotational harmonics of the model, such that Y_lm = Yl0. Axis aligned with z-axis to be used as kernel for spherical convolution. Returns an array with rotational harmonics for each shell.

Parameters:

acquisition_scheme : DmipyAcquisitionScheme instance,

An acquisition scheme that has been instantiated using dMipy.

kwargs: keyword arguments to the model parameter values, :

Is internally given as **parameter_dictionary.

Returns:

rh_array : array, shape(Nshells, N_rh_coef),

Rotational harmonics coefficients for each shell.

sphere_attenuation(gradient_strength, delta, Delta, diameter)

Calculates the sphere signal attenuation.

spherical_mean(acquisition_scheme, **kwargs)

Estimates spherical mean for every shell in acquisition scheme.

Parameters:

acquisition_scheme : DmipyAcquisitionScheme instance,

An acquisition scheme that has been instantiated using dMipy.

kwargs: keyword arguments to the model parameter values, :

Is internally given as **parameter_dictionary.

Returns:

E_mean : float,

spherical mean of the model for every acquisition shell.