CombinedDrive#
- class micromagneticdata.CombinedDrive(*drives, **kwargs)#
Drive class for stacked drives.
This class provides utility for the analysis of individual drives.
- Parameters:
drives (List[Drive])
kwargs – Additional keyword arguments that are passed to AbstractDrive()
- Raises:
ValueError – If the drives have different independent variables or less than two drives are passed.
TypeError – If the passed objects are not of type
micromagneticdata.Drive
.
Examples
Getting drive object.
>>> import os >>> import micromagneticdata as md ... >>> dirname = os.path.join(os.path.dirname(__file__), 'tests', 'test_sample') >>> drive = md.Drive(name='rectangle', number=0, dirname=dirname)
Methods
__dir__
Default dir() implementation.
__eq__
Return self==value.
__getitem__
Magnetisation field of an individual step.
__iter__
Iterator.
Concatenate multiple drives of the same type.
Representation string.
Register a callback to which a field is passed before being returned.
to_xarray
Export
micromagneticdata.Drive
asxarray.DataArray
Properties
callbacks
Return all registered callbacks.
hv
Plot interface, Holoviews/hvplot based.
Drive information.
m0
Inital magnetisation.
n
Number of steps.
Table object.
Independent variable name.
- __lshift__(other)#
Concatenate multiple drives of the same type.
Multiple drives with the same independent variable (typically drives of the same type, e.g. TimeDriver) can be concatenated into one combined drive. The resulting object has one large table with scalar values and allows iterating over all magnetisation files of the individual drives.
- Parameters:
other (micromagneticdata.Drive, micromagneticdata.CombinedDrive) – The drive to append to the current object.
- Returns:
The concatenated drives.
- Return type:
Examples
Concatenating two drives
>>> import os >>> import micromagneticdata as md ... >>> dirname = os.path.join(os.path.dirname(__file__), 'tests', 'test_sample') >>> drive_0 = md.Drive(name='rectangle', number=0, dirname=dirname) >>> drive_1 = md.Drive(name='rectangle', number=1, dirname=dirname) >>> drive_0 << drive_1 CombinedDrive...
- __repr__()#
Representation string.
- Returns:
Representation string.
- Return type:
str
Examples
Representation string.
>>> import os >>> import micromagneticdata as md ... >>> dirname = os.path.join(os.path.dirname(__file__), 'tests', 'test_sample') >>> drive = md.Drive(name='rectangle', number=0, dirname=dirname) >>> drive OOMMFDrive(...)
- register_callback(callback)#
Register a callback to which a field is passed before being returned.
- property info#
Drive information.
This property returns a dictionary with information about the drive.
- Returns:
Drive information.
- Return type:
dict
Examples
Getting information about drive.
>>> import os >>> import micromagneticdata as md ... >>> dirname = os.path.join(os.path.dirname(__file__), 'tests', 'test_sample') >>> drive = md.Drive(name='rectangle', number=6, dirname=dirname) >>> drive.info {...}
- property table#
Table object.
This property returns an
ubermagtable.Table
object. As an independent variablex
, the column chosen viax
property is selected.- Returns:
Table object.
- Return type:
Examples
Getting table object.
>>> import os >>> import micromagneticdata as md ... >>> dirname = os.path.join(os.path.dirname(__file__), 'tests', 'test_sample') >>> drive = md.Drive(name='rectangle', number=0, dirname=dirname) >>> drive.table E...
- property x#
Independent variable name.
- Parameters:
value (str) – Independent variable name.
- Returns:
Representation string.
- Return type:
str
- Raises:
ValueError – If the column name does not exist in table.
Examples
Getting and setting independent variable name.
>>> import os >>> import micromagneticdata as md ... >>> dirname = os.path.join(os.path.dirname(__file__), 'tests', 'test_sample') >>> drive = md.Data(name='hysteresis', dirname=dirname)[0] >>> drive.x 'B_hysteresis' >>> drive.x = 'Bx_hysteresis'