ComponentBasisXYZ

class PlasmaCalcs.dimensions.components.ComponentBasisXYZ(XYZ)

Bases: BasisXYZ

simple class to hold X, Y, Z component details.

(Assumed to be immutable after creation)
XYZ: ComponentList with length 3
contains [X, Y, Z] component labels.
Instances of this class provide attributes:
X: x component label
Y: y component label
Z: z component label
XHAT: x unit vector, as a DataArray of [1,0,0] with ‘component’ values XYZ
YHAT: y unit vector, as a DataArray of [0,1,0] with ‘component’ values XYZ
ZHAT: z unit vector, as a DataArray of [0,0,1] with ‘component’ values XYZ
YZ_FROM_X: dict telling (y,z) given x, for right-handed coord system x,y,z
(internally here: string_int_lookup({X:(Y,Z), Y:(Z,X), Z:(X,Y)}))

Methods

get(x)

return proper component label (i.e. from self.XYZ) given x.

get_hat(x)

return self.XHAT, self.YHAT, or self.ZHAT depending on str(self.get(x)).

get(x)

return proper component label (i.e. from self.XYZ) given x.

x can be any valid component specifier, e.g. int, str, Component.
Equivalent to self.XYZ.get(x).
get_hat(x)

return self.XHAT, self.YHAT, or self.ZHAT depending on str(self.get(x)).