CylinderRadialCompartment {midi} | R Documentation |
Cylinder radial compartment class
Description
A class to model restricted diffusion in a cylinder in the plane perpendicular to the cylinder axis.
Methods
Public methods
Method new()
Instantiates a new cylinder radial compartment.
Usage
CylinderRadialCompartment$new(radius, diffusivity)
Arguments
radius
A numeric value specifying the radius of the cylinder in meters.
diffusivity
A numeric value specifying the diffusivity within the cylinder in m
^2
.s^{-1}
.
Returns
An instance of the CylinderRadialCompartment
class.
Method get_signal()
Computes the signal attenuation predicted by the model.
Usage
CylinderRadialCompartment$get_signal( small_delta, big_delta, G, echo_time = NULL, n_max = 20L, m_max = 50L )
Arguments
small_delta
A numeric value specifying the duration of the gradient pulse in seconds.
big_delta
A numeric value specifying the duration between the gradient pulses in seconds.
G
A numeric value specifying the strength of the gradient in T.m
^{-1}
.echo_time
A numeric value specifying the echo time in seconds.
n_max
An integer value specifying the maximum order of the Bessel function. Defaults to
20L
.m_max
An integer value specifying the maximum number of extrema for the Bessel function. Defaults to
50L
.
Returns
A numeric value storing the predicted signal attenuation.
Examples
sodermanComp <- SodermanCompartment$new( radius = 1e-6, diffusivity = 2.0e-9 ) sodermanComp$get_signal(0.03, 0.03, 0.040) staniszComp <- StaniszCompartment$new( radius = 1e-6, diffusivity = 2.0e-9 ) staniszComp$get_signal(0.03, 0.03, 0.040) neumanComp <- NeumanCompartment$new( radius = 1e-6, diffusivity = 2.0e-9 ) neumanComp$get_signal(0.03, 0.03, 0.040, echo_time = 0.040) callaghanComp <- CallaghanCompartment$new( radius = 1e-6, diffusivity = 2.0e-9 ) callaghanComp$get_signal(0.03, 0.03, 0.040) vanGelderenComp <- VanGelderenCompartment$new( radius = 1e-6, diffusivity = 2.0e-9 ) vanGelderenComp$get_signal(0.03, 0.03, 0.040)
Method clone()
The objects of this class are cloneable with this method.
Usage
CylinderRadialCompartment$clone(deep = FALSE)
Arguments
deep
Whether to make a deep clone.
Examples
## ------------------------------------------------
## Method `CylinderRadialCompartment$get_signal`
## ------------------------------------------------
sodermanComp <- SodermanCompartment$new(
radius = 1e-6,
diffusivity = 2.0e-9
)
sodermanComp$get_signal(0.03, 0.03, 0.040)
staniszComp <- StaniszCompartment$new(
radius = 1e-6,
diffusivity = 2.0e-9
)
staniszComp$get_signal(0.03, 0.03, 0.040)
neumanComp <- NeumanCompartment$new(
radius = 1e-6,
diffusivity = 2.0e-9
)
neumanComp$get_signal(0.03, 0.03, 0.040, echo_time = 0.040)
callaghanComp <- CallaghanCompartment$new(
radius = 1e-6,
diffusivity = 2.0e-9
)
callaghanComp$get_signal(0.03, 0.03, 0.040)
vanGelderenComp <- VanGelderenCompartment$new(
radius = 1e-6,
diffusivity = 2.0e-9
)
vanGelderenComp$get_signal(0.03, 0.03, 0.040)