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]