RMSF Facade
GitHub Link to Code.
Facade exposing RMSF variant services.
- class mdxplain.analysis.structure.services.rmsf_facade.RMSFFacade(pipeline_data: PipelineData | None)
Provide access to RMSF variants with a shared pipeline context.
The facade provides access to concrete RMSF variant facades for the
mean,median, andmaddeviation metrics. Each facade reuses the supplied pipeline configuration, ensuring consistent behaviour across the per-atom and per-residue helper services.Examples
>>> facade = RMSFFacade(pipeline_data) >>> isinstance(facade.mean, RMSFMeanVariantFacade) True
- __init__(pipeline_data: PipelineData | None) None
Initialise the facade with shared pipeline data.
Ensures that the facade operates only after pipeline data injection. The created variants are cached for reuse.
Parameters
- pipeline_dataPipelineData | None
Pipeline context injected by the analysis manager.
Returns
- None
The initializer returns
None.
Examples
>>> facade = RMSFFacade(pipeline_data) >>> isinstance(facade, RMSFFacade) True
- property mean: RMSFMeanVariantFacade
Access the mean RMSF variant facade.
Provides the RMSF variant facade that uses the mean for RMSF calculations (Root Mean Square Fluctuation).
Parameters
- None
This property does not accept parameters.
Returns
- RMSFMeanVariantFacade
Mean RMSF variant facade exposing per-atom and per-residue helper.
Examples
>>> facade = RMSFFacade(pipeline_data) >>> isinstance(facade.mean, RMSFMeanVariantFacade) True
- property median: RMSFMedianVariantFacade
Access the median RMSF variant facade.
Provides the RMSF variant facade that uses the median for robust RMSF calculations (Root Median Square Fluctuation).
Parameters
- None
This property does not accept parameters.
Returns
- RMSFMedianVariantFacade
Median RMSF variant facade exposing per-atom and per-residue helper.
Examples
>>> facade = RMSFFacade(pipeline_data) >>> isinstance(facade.median, RMSFMedianVariantFacade) True
- property mad: RMSFMadVariantFacade
Access the MAD RMSF variant facade.
Provides the RMSF variant facade based on the median absolute deviation (MAD) for outlier-resistant RMSF calculations (MAD Fluctuation).
Parameters
- None
This property does not accept parameters.
Returns
- RMSFMadVariantFacade
MAD RMSF variant facade exposing per-atom and per-residue helper.
Examples
>>> facade = RMSFFacade(pipeline_data) >>> isinstance(facade.mad, RMSFMadVariantFacade) True
- property per_atom: RMSFPerAtomService
Access the per-atom RMSF helper for the mean metric.
Returns the per-atom service supplied by the classical mean RMSF variant.
Returns
- RMSFPerAtomService
Per-atom RMSF service providing
to_*_referencehelper.
Examples
>>> facade = RMSFFacade(pipeline_data) >>> facade.per_atom.to_mean_reference() {...}
- property per_residue: RMSFPerResidueAggregationSelectionFacade
Access the per-residue RMSF helper for the mean metric.
Returns the residue aggregation facade supplied by the classical mean RMSF variant.
Parameters
- None
This property does not accept parameters.
Returns
- RMSFPerResidueAggregationSelectionFacade
Residue-level RMSF helper exposing aggregation variants.
Examples
>>> facade = RMSFFacade(pipeline_data) >>> facade.per_residue.with_mean_aggregation.to_mean_reference() {...}
- to_mean_reference(traj_selection: int | str | List[int | str] | all = 'all', atom_selection: str = 'all', cross_trajectory: bool = False) Dict[str, ndarray]
Calculate per-atom RMSF values for the mean reference structure.
Delegates to
RMSFPerAtomService.to_mean_reference()on the mean variant while forwarding the trajectory/atom selections and optional cross-trajectory settings.Parameters
- traj_selectionUnion[int, str, list[Union[int, str]], ‘all’], optional
Selection describing which trajectories to analyse. Defaults to
"all".- atom_selectionstr, optional
MDTraj atom selection string forwarded to the calculation. Defaults to
"all".- cross_trajectorybool, optional
Combine all selected trajectories into a single RMSF profile when
True. Defaults toFalse.
Returns
- dict[str, np.ndarray]
Mapping of trajectory names – or
"combined"whencross_trajectoryisTrue– to per-atom RMSF arrays.
Examples
>>> facade = RMSFFacade(pipeline_data) >>> facade.to_mean_reference(traj_selection="all", atom_selection="all") {...}