Skip to content

Latest commit

 

History

History
152 lines (96 loc) · 11.3 KB

File metadata and controls

152 lines (96 loc) · 11.3 KB
graph LR
    Public_API_Facades["Public API Facades"]
    Data_Input_Output_Layer["Data Input/Output Layer"]
    Featurization_Layer["Featurization Layer"]
    Dimensionality_Reduction_Transformation["Dimensionality Reduction & Transformation"]
    Clustering_Discretization["Clustering & Discretization"]
    MSM_Estimation_Layer["MSM Estimation Layer"]
    MSM_Model_Representation["MSM Model Representation"]
    Thermodynamic_Estimation_Layer["Thermodynamic Estimation Layer"]
    Thermodynamic_Model_Representation["Thermodynamic Model Representation"]
    Core_Base_Classes_Utilities["Core Base Classes & Utilities"]
    Public_API_Facades -- "orchestrates" --> Data_Input_Output_Layer
    Public_API_Facades -- "orchestrates" --> Featurization_Layer
    Public_API_Facades -- "orchestrates" --> Dimensionality_Reduction_Transformation
    Public_API_Facades -- "orchestrates" --> Clustering_Discretization
    Public_API_Facades -- "orchestrates" --> MSM_Estimation_Layer
    Public_API_Facades -- "orchestrates" --> Thermodynamic_Estimation_Layer
    MSM_Estimation_Layer -- "produces" --> MSM_Model_Representation
    Thermodynamic_Estimation_Layer -- "produces" --> Thermodynamic_Model_Representation
    Dimensionality_Reduction_Transformation -- "processes data from" --> Featurization_Layer
    Clustering_Discretization -- "processes data from" --> Dimensionality_Reduction_Transformation
    Public_API_Facades -- "utilizes" --> Core_Base_Classes_Utilities
    Data_Input_Output_Layer -- "utilizes" --> Core_Base_Classes_Utilities
    Featurization_Layer -- "utilizes" --> Core_Base_Classes_Utilities
    Dimensionality_Reduction_Transformation -- "utilizes" --> Core_Base_Classes_Utilities
    Clustering_Discretization -- "utilizes" --> Core_Base_Classes_Utilities
    MSM_Estimation_Layer -- "utilizes" --> Core_Base_Classes_Utilities
    MSM_Model_Representation -- "utilizes" --> Core_Base_Classes_Utilities
    Thermodynamic_Estimation_Layer -- "utilizes" --> Core_Base_Classes_Utilities
    Thermodynamic_Model_Representation -- "utilizes" --> Core_Base_Classes_Utilities
Loading

CodeBoardingDemoContact

Details

The Public API in PyEMMA serves as the high-level, user-facing interface, designed to abstract the intricate details of data preprocessing, model estimation, and analysis. It provides a simplified, cohesive set of functions and classes that orchestrate complex scientific computing workflows, enabling users to perform molecular dynamics data analysis and statistical thermodynamics without needing deep knowledge of the underlying implementations. This component adheres to the Facade architectural pattern, offering a streamlined entry point to PyEMMA's powerful capabilities.

Public API Facades

These modules (pyemma.coordinates.api, pyemma.msm.api, pyemma.thermo.api) are the primary entry points for users. They provide high-level functions that orchestrate the entire workflow, from data loading and preprocessing to model estimation and analysis.

Related Classes/Methods:

Data Input/Output Layer

Responsible for handling the loading and management of molecular dynamics trajectory data from various sources (e.g., HDF5, NumPy, CSV files). It provides the foundational data structures and iterators for subsequent processing steps.

Related Classes/Methods:

Featurization Layer

This component extracts relevant molecular features (e.g., distances, angles, torsions) from raw trajectory data, transforming it into a more suitable representation for analysis.

Related Classes/Methods:

Dimensionality Reduction & Transformation

Implements algorithms like TICA (Time-lagged Independent Component Analysis) and PCA (Principal Component Analysis) to reduce the dimensionality of the featurized data, identifying slow collective variables or principal components.

Related Classes/Methods:

Clustering & Discretization

Groups high-dimensional data points into a finite number of discrete states, which is a crucial step for building Markov State Models. This includes algorithms like k-means and regular space clustering.

Related Classes/Methods:

MSM Estimation Layer

Contains the algorithms for estimating Markov State Models (MSMs) from discretized trajectory data, including maximum likelihood and Bayesian approaches.

Related Classes/Methods:

MSM Model Representation

Defines the data structures and methods for representing estimated Markov State Models, allowing for analysis of their properties (e.g., implied timescales, metastable states, reaction pathways).

Related Classes/Methods:

Thermodynamic Estimation Layer

Provides estimators for thermodynamic properties, such as free energies, using methods like DTRAM, MBAR, TRAM, and WHAM.

Related Classes/Methods:

Thermodynamic Model Representation

Encapsulates the results of thermodynamic estimations, providing a structured way to access and analyze calculated thermodynamic quantities.

Related Classes/Methods:

Core Base Classes & Utilities

A foundational layer providing common functionalities and abstract interfaces (e.g., Estimator, Model, SerializableMixIn) that are inherited and utilized across various components, ensuring consistency and reusability.

Related Classes/Methods: