.. _ensembleanalysis-base: ============================== Ensemble Analysis base class ============================== .. versionadded:: 0.8.0 The Analysis modules help in the implementation analyses of MDPOW simulations. To simplify the process of analyzing a collection of systems generated by a free energy simulation the objects in :ref:`ensemble-objects` allow for a molecule directory's systems to be loaded into `MDAnalysis `_ Universes and be analyzed as a group. :class:`~mdpow.analysis.ensemble.EnsembleAnalysis` is a class inspired by the :class:`AnalysisBase ` from MDAnalysis which iterates over the systems in the ensemble or the frames in the systems. It sets up iterations between universes or universe frames allowing for analysis to be run on either whole systems or the frames of those systems. This allows for users to easily run analyses on MDPOW simulations. :exc:`NotImplementedError` will detect whether :meth:`~EnsembleAnalysis._single_universe` or :meth:`~EnsembleAnalysis._single_frame` should be implemented, based on which is defined in the :class:`~mdpow.analysis.ensemble.EnsembleAnalysis`. Only one of the two methods should be defined for an :class:`~mdpow.analysis.ensemble.EnsembleAnalysis`. For verbose functionality, the analysis may show two iteration bars, where only one of which will actually be iterated, while the other will load to completion instantaneously, showing the system that is being worked on. .. autoclass:: mdpow.analysis.ensemble.EnsembleAnalysis :members: .. automethod:: _prepare_ensemble .. automethod:: _prepare_universe .. automethod:: _single_universe .. automethod:: _single_frame .. automethod:: _conclude_ensemble .. automethod:: _conclude_universe