graph LR
CLI_Interface["CLI Interface"]
Workflow_Orchestrator["Workflow Orchestrator"]
Core_Data_Processing["Core Data Processing"]
Classification_Domain_Logic["Classification & Domain Logic"]
Output_Management["Output Management"]
Shared_Utilities["Shared Utilities"]
CLI_Interface -- "initiates" --> Workflow_Orchestrator
Workflow_Orchestrator -- "calls" --> Core_Data_Processing
Workflow_Orchestrator -- "calls" --> Classification_Domain_Logic
Workflow_Orchestrator -- "calls" --> Output_Management
Core_Data_Processing -- "provides data to" --> Classification_Domain_Logic
Core_Data_Processing -- "provides data to" --> Output_Management
Core_Data_Processing -- "utilizes" --> Shared_Utilities
Classification_Domain_Logic -- "provides classified data to" --> Output_Management
Classification_Domain_Logic -- "utilizes" --> Shared_Utilities
Output_Management -- "utilizes" --> Shared_Utilities
click CLI_Interface href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/NonadditivityAnalysis/CLI_Interface.md" "Details"
click Workflow_Orchestrator href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/NonadditivityAnalysis/Workflow_Orchestrator.md" "Details"
click Classification_Domain_Logic href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/NonadditivityAnalysis/Classification_Domain_Logic.md" "Details"
click Output_Management href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/NonadditivityAnalysis/Output_Management.md" "Details"
click Shared_Utilities href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/NonadditivityAnalysis/Shared_Utilities.md" "Details"
Abstract Components Overview of the nonadditivity analysis project.
CLI Interface [Expand]
Serves as the primary user interface, responsible for parsing command-line arguments and initiating the main application workflow.
Related Classes/Methods:
Workflow Orchestrator [Expand]
Manages the overall execution flow of the nonadditivity analysis, coordinating the sequence of operations from input processing through core logic to final output generation.
Related Classes/Methods:
Handles the core scientific data manipulation, including reading and validating input, generating matched molecular pairs (MMPs), and implementing the central algorithms for identifying double-transformation cycles and calculating nonadditivity values.
Related Classes/Methods:
nonadditivity.workflow.input_parsing(1:1)nonadditivity.workflow.mmpdb_helper(1:1)nonadditivity.workflow.nonadditivity_core(1:1)
Classification & Domain Logic [Expand]
Encapsulates the domain models for chemical entities (Compound, Transformation, Circle) and implements the algorithms for classifying these entities based on various chemical and structural criteria.
Related Classes/Methods:
nonadditivity.classification.classify(1:1)nonadditivity.classification.classification_classes.compound(1:1)nonadditivity.classification.classification_classes.transfromation(1:1)nonadditivity.classification.classification_classes.circle(1:1)nonadditivity.classification.circle_classification(1:1)nonadditivity.classification.ortho_classification(1:1)nonadditivity.classification.rgroup_distance(1:1)nonadditivity.classification.transformation_classification(1:1)nonadditivity.classification.compound_classification(1:1)
Output Management [Expand]
Manages the writing of all processed data and analysis results to various output files, including canonicalizing and formatting dataframes for consistent output.
Related Classes/Methods:
Shared Utilities [Expand]
Provides a collection of common helper functions for mathematical operations, general data manipulation, and validation, used across various components of the application.
Related Classes/Methods: