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_xarrayExport
micromagneticdata.Driveasxarray.DataArrayProperties
callbacksReturn all registered callbacks.
hvPlot interface, Holoviews/hvplot based.
Drive information.
m0Inital magnetisation.
nNumber 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.Tableobject. As an independent variablex, the column chosen viaxproperty 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'