atomscale.results.rheed_video.RHEEDVideoResult#
- class atomscale.results.rheed_video.RHEEDVideoResult(data_id: UUID | str, timeseries_data: DataFrame, snapshot_image_data: list[RHEEDImageResult] | None, views: DataFrame | bool | None = None, collected_datetime: str | None = None, rotating: bool | None = None)[source]
Bases:
MSONableRHEED video result
- Parameters:
data_id (UUID | str) – Data ID for the entry in the data catalogue.
timeseries_data (DataFrame) – Pandas DataFrame with per-frame RHEED features, indexed against a “Time” column. Columns are capitalized labels such as “Cluster ID”, “Specular Intensity”, “Strain”, “Cumulative Strain”, “Oscillation Period”, “Diffraction Spot Count”, and “Lattice Spacing”.
snapshot_image_data (list[atomscale.results.rheed_image.RHEEDImageResult] | None) – One
atomscale.results.rheed_image.RHEEDImageResultper snapshot extracted from the video, or None if no snapshots were extracted.views (DataFrame | None) – Motion intervals and effective azimuth annotations. Omitted or None means no views are known, which reads as not rotating.
collected_datetime (str | None) – Datetime when the data was collected.
rotating (bool | None) – Deprecated. This argument held a bare rotating flag before rotation became a stored rate; it is accepted so callers written against that signature — and
MSONablepayloads serialized under it, which carry noviews— still construct. It is translated to the placeholder viewatomscale.rheed_metadata.legacy_views_frame()builds for the matching legacy type, sorotatinganswers the same. Ignored whenviewsis given.
- __init__(data_id: UUID | str, timeseries_data: DataFrame, snapshot_image_data: list[RHEEDImageResult] | None, views: DataFrame | bool | None = None, collected_datetime: str | None = None, rotating: bool | None = None)[source]
RHEED video result
- Parameters:
data_id (UUID | str) – Data ID for the entry in the data catalogue.
timeseries_data (DataFrame) – Pandas DataFrame with per-frame RHEED features, indexed against a “Time” column. Columns are capitalized labels such as “Cluster ID”, “Specular Intensity”, “Strain”, “Cumulative Strain”, “Oscillation Period”, “Diffraction Spot Count”, and “Lattice Spacing”.
snapshot_image_data (list[atomscale.results.rheed_image.RHEEDImageResult] | None) – One
atomscale.results.rheed_image.RHEEDImageResultper snapshot extracted from the video, or None if no snapshots were extracted.views (DataFrame | None) – Motion intervals and effective azimuth annotations. Omitted or None means no views are known, which reads as not rotating.
collected_datetime (str | None) – Datetime when the data was collected.
rotating (bool | None) – Deprecated. This argument held a bare rotating flag before rotation became a stored rate; it is accepted so callers written against that signature — and
MSONablepayloads serialized under it, which carry noviews— still construct. It is translated to the placeholder viewatomscale.rheed_metadata.legacy_views_frame()builds for the matching legacy type, sorotatinganswers the same. Ignored whenviewsis given.
Methods
__init__(data_id, timeseries_data, ...[, ...])RHEED video result
as_dict()A JSON serializable dict representation of an object.
from_dict(d)Reconstruct an MSONable object from a dict.
load(file_path)Load an instance from a JSON file written by
save().save(json_path[, mkdir, json_kwargs, ...])Serialize the instance to JSON on disk, pickling fields if needed.
to_json()Returns a json string representation of the MSONable object.
unsafe_hash()Return a hash of the current object.
validate_monty_v1(_MSONable__input_value)Pydantic validator with correct signature for pydantic v1.x.
validate_monty_v2(_MSONable__input_value, _)Pydantic validator with correct signature for pydantic v2.x.
Attributes
REDIRECTrotatingWhether the stage turned during this recording.
- property rotating
Whether the stage turned during this recording.
Read from the stored per-view
rpmrather than from the catalogue type, so a recording answers the same before and after the RHEED types were unified —rheed_stationaryis simply rpm 0. Kept because callers relied on this attribute before rotation became a stored rate.A NaN rpm comes only from the legacy fallback in
atomscale.rheed_metadata.legacy_views_frame()— a backend that recorded rotation as a type name and never a rate. That still reads as rotating.
- as_dict() dict
A JSON serializable dict representation of an object.
- Return type:
dict
- classmethod from_dict(d: dict) MSONable
Reconstruct an MSONable object from a dict.
- Parameters:
d (
dict) – Dict representation.- Return type:
MSONable- Returns:
MSONable class.
- classmethod load(file_path: PathLike | str) MSONable
Load an instance from a JSON file written by
save().- Parameters:
file_path (
PathLike|str) – The JSON file to load from.- Return type:
MSONable- Returns:
An instance of the class being reloaded.
- save(json_path: PathLike | str, mkdir: bool = True, json_kwargs: dict | None = None, pickle_kwargs: dict | None = None, strict: bool = True) None
Serialize the instance to JSON on disk, pickling fields if needed.
For a fully MSONable class, only
{save_dir}/class.jsonis written. For a partially MSONable class, non-serializable attributes are pickled individually into the same directory, keeping the JSON portion readable.- Parameters:
json_path (
PathLike|str) – The file to which to save the JSON object. A pickled companion file with the same stem but a different extension may also be written if the class is not entirely MSONable.mkdir (
bool) – If True, create the target directory (including parents).json_kwargs (
dict|None) – Keyword arguments forwarded to the JSON serializer.pickle_kwargs (
dict|None) – Keyword arguments forwarded topickle.dump.strict (
bool) – If True, refuse to overwrite existing files.
- Return type:
None
- to_json() str
Returns a json string representation of the MSONable object.
- Return type:
str
- unsafe_hash() Any
Return a hash of the current object.
This uses a generic but low performance method of converting the object to a dictionary, flattening any nested keys, and then performing a hash on the resulting object.
- Return type:
Any
- classmethod validate_monty_v1(_MSONable__input_value)
Pydantic validator with correct signature for pydantic v1.x.
- classmethod validate_monty_v2(_MSONable__input_value, _)
Pydantic validator with correct signature for pydantic v2.x.