RMSD Facade
GitHub Link to Code.
Facade exposing RMSD variant services.
- class mdxplain.analysis.structure.services.rmsd_facade.RMSDFacade(pipeline_data: PipelineData | None)
Provide access to RMSD variants with a shared pipeline context.
The facade provides access to concrete RMSD services for the
mean,median, andmadmetrics. Each service reuses the pipeline configuration supplied viaPipelineData, ensuring consistent behaviour across helper methods.Examples
>>> facade = RMSDFacade(pipeline_data) >>> isinstance(facade.mean, RMSDMeanService) True
- __init__(pipeline_data: PipelineData | None) None
Initialise the facade with shared pipeline data.
Ensures that pipeline data is available before any RMSD computations are requested.
Parameters
- pipeline_dataPipelineData | None
Pipeline context injected by the analysis manager.
Returns
- None
The initializer returns
None.
Examples
>>> facade = RMSDFacade(pipeline_data) >>> isinstance(facade, RMSDFacade) True
- property mean: RMSDMeanService
Access the mean RMSD service.
Provides the RMSD service that aggregates atom-wise deviations via the arithmetic mean. This is the default variant for most workflows.
Parameters
- None
This property does not accept parameters.
Returns
- RMSDMeanService
Mean RMSD service exposing helper such as
to_reference(),frame_to_frame(),window_frame_to_start(), andwindow_frame_to_frame().
Examples
>>> facade = RMSDFacade(pipeline_data) >>> facade.mean.to_reference(reference_traj=0, reference_frame=0) {...}
- property median: RMSDMedianService
Access the median RMSD service.
Provides the RMSD service that aggregates atom-wise deviations using the statistical median, offering robustness against outliers.
Parameters
- None
This property does not accept parameters.
Returns
- RMSDMedianService
Median RMSD service exposing the same helper methods as the mean service.
Examples
>>> facade = RMSDFacade(pipeline_data) >>> facade.median.frame_to_frame(lag=2) {...}
- property mad: RMSDMadService
Access the MAD RMSD service.
Provides the RMSD service based on the median absolute deviation (MAD), delivering outlier-resistant RMSD values.
Parameters
- None
This property does not accept parameters.
Returns
- RMSDMadService
MAD RMSD service exposing helper such as
to_reference()and the window-based calculations.
Examples
>>> facade = RMSDFacade(pipeline_data) >>> facade.mad.window_frame_to_start(window_size=5, stride=2) {...}
- to_reference(reference_traj: int = 0, reference_frame: int = 0, traj_selection: int | str | List[int | str] | all = 'all', atom_selection: str = 'all') Dict[str, ndarray]
Calculate RMSD values against a reference frame.
Delegates to
RMSDVariantService.to_reference()on the mean variant to compute RMSD values for the selected trajectories.Parameters
- reference_trajint, optional
Index of the trajectory containing the reference frame. Defaults to
0.- reference_frameint, optional
Frame index within the reference trajectory. Defaults to
0.- traj_selectionUnion[int, str, list[Union[int, str]], ‘all’], optional
Selection describing which trajectories to process. Defaults to
"all".- atom_selectionstr, optional
MDTraj atom selection string forwarded to the calculation. Defaults to
"all".
Returns
- dict[str, np.ndarray]
Mapping of trajectory names to RMSD arrays.
Examples
>>> facade = RMSDFacade(pipeline_data) >>> facade.to_reference(reference_traj=0, reference_frame=0) {...}