LinearDimension — csdmpy 0.1.1 documentation

# LinearDimension

## Generalized Class

Dimension

### Description

A LinearDimension is where the coordinates along the dimension follow a linear relationship with the indexes, \(\mathbf{J}_k\), along the dimension. Let \(\Delta x_k\) be the increment, \(N_k \ge 1\), the number of points (counts), \(b_k\), the coordinates offset, and \(o_k\), the origin offset along the \(k^{th}\) dimension, then the corresponding coordinates along the dimension, \(\mathbf{X}_k\), are given as

\[\mathbf{X}_k = \Delta x_k (\mathbf{J}_k - Z_k) + b_k \mathbf{1},\]

and the absolute coordinates as,

\[\mathbf{X}_k^\mathrm{abs} = \mathbf{X}_k + o_k \mathbf{1}.\]

Here, \(\mathbf{1}\) is an array of ones and \(\mathbf{J}_k\) is the array of indexes along the \(k^\mathrm{th}\) dimension given as

\[\mathbf{J}_k = [0, 1, 2, 3, ..., N_k-1]\]

The term, \(Z_k\), is an integer with a value of \(Z_k=0\) and \(\frac{T_k}{2}\) when the value of complex_fft is true and false, respectively. Here, \(T_k=N_k\) and \(N_k-1\) for even and odd value of \(N_k\), respectively.

Note

When complex_fft is true and \(N_k\) is even, the dependent variable value corresponding to the index \(\pm N_k/2\) is alias.

### Attributes

Name | Type | Description
--- | --- | ---
count | Integer | The number of points, \(N_k\), along the dimension.
increment | ScalarQuantity | The increment, \(\Delta x_k\), along the dimension.
coordinates_offset | ScalarQuantity | The coordinate, \(b_k\), corresponding to the zero of the indexes array, \(\bf{J}_k\).
origin_offset | ScalarQuantity | The origin offset, \(o_k\), along the dimension.
quantity_name | String | The quantity name associated with the physical quantities describing the dimension.
period | ScalarQuantity | The period of the dimension.
complex_fft | Boolean | If true, the coordinates along the dimension are evaluated as the output of a complex fast Fourier transform (FFT) routine. See the above description.
reciprocal | ReciprocalDimension | Object with attributes required to describe the reciprocal dimension.

### Example

The following LinearDimension object,

    {
        "type": "linear",
        "count": 10,
        "increment": "2 µA",
        "coordinates_offset": "0.1 µA"
    }

will generate a dimension where coordinates \(\mathbf{X}_k\) are

    [0.1 µA, 2.1 µA, 4.1 µA, 6.1 µA, 8.1 µA, 10.1 µA, 12.1 µA, 14.1 µA, 16.1 µA, 18.1 µA]