# derekyeungqut/automated-program-for-eab-data-processing-operation architecture

> Architecture diagram of the GitHub repository derekyeungqut/automated-program-for-eab-data-processing-operation, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-26). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/derekyeungqut/automated-program-for-eab-data-processing-operation
- Repository: https://github.com/derekyeungqut/automated-program-for-eab-data-processing-operation

## Overview

This is a desktop Python application for processing continuous electrochemical aptamer-sensor data. The main workflow is to select a folder of ON/OFF measurement files, extract multichannel peak measurements, choose degradation-over-time or concentration-calibration analysis, inspect plots and save results to Excel. The README also identifies faulty-data screening and comparison with Fourier smoothing as objectives; the excerpts show Savitzky–Golay filtering and minimum-current controls, but do not establish a separate fault-removal pipeline or the full smoothing comparison. The source excerpts are partial, so uncertain internal wiring is omitted.

Main entry points: [`Aumated Program Package/AutomatedDataExtractionProgram(fixed).py`](https://github.com/derekyeungqut/automated-program-for-eab-data-processing-operation/blob/main/Aumated%20Program%20Package/AutomatedDataExtractionProgram(fixed).py) (Desktop application)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_interface["User interface"]
  node_app["Desktop application"]
  node_folder_selection["Folder selection"]
  node_mode_selection["Analysis selection"]
  node_current_thresholds["Minimum-current controls"]
end

subgraph group_processing["Signal processing"]
  node_file_discovery["File discovery and sorting"]
  node_signal_reading["Signal reading and filtering"]
  node_peak_extraction["Multichannel peak extraction"]
end

subgraph group_analysis["Analysis and output"]
  node_degradation_analysis["Degradation analysis"]
  node_calibration_analysis["Calibration analysis"]
  node_averaging_calibration["Trial averaging and calibration"]
  node_plotting["Result plotting"]
  node_excel_export["Excel export"]
end

node_researcher(("Researcher"))
node_measurement_files["Measurement files"]
node_result_files["Saved results"]

node_researcher -->|"uses"| node_app
node_researcher -->|"provides"| node_measurement_files
node_app -->|"opens"| node_folder_selection
node_folder_selection -->|"selects folder"| node_file_discovery
node_measurement_files -->|"reads files"| node_file_discovery
node_file_discovery -->|"supplies sorted files"| node_signal_reading
node_signal_reading -->|"filters signals"| node_peak_extraction
node_app -->|"offers modes"| node_mode_selection
node_mode_selection -->|"dispatches"| node_degradation_analysis
node_mode_selection -->|"dispatches"| node_calibration_analysis
node_degradation_analysis -->|"extracts peaks"| node_peak_extraction
node_calibration_analysis -->|"extracts peaks"| node_peak_extraction
node_calibration_analysis -->|"calibrates"| node_averaging_calibration
node_app -->|"configures limits"| node_current_thresholds
node_app -->|"plots results"| node_plotting
node_app -->|"saves results"| node_excel_export
node_excel_export -->|"writes workbook"| node_result_files

click node_app "https://github.com/derekyeungqut/automated-program-for-eab-data-processing-operation/blob/main/Aumated%20Program%20Package/AutomatedDataExtractionProgram(fixed).py"
click node_folder_selection "https://github.com/derekyeungqut/automated-program-for-eab-data-processing-operation/blob/main/Aumated%20Program%20Package/AutomatedDataExtractionProgram(fixed).py"
click node_mode_selection "https://github.com/derekyeungqut/automated-program-for-eab-data-processing-operation/blob/main/Aumated%20Program%20Package/AutomatedDataExtractionProgram(fixed).py"
click node_file_discovery "https://github.com/derekyeungqut/automated-program-for-eab-data-processing-operation/blob/main/Aumated%20Program%20Package/AutomatedDataExtractionProgram(fixed).py"
click node_signal_reading "https://github.com/derekyeungqut/automated-program-for-eab-data-processing-operation/blob/main/Aumated%20Program%20Package/AutomatedDataExtractionProgram(fixed).py"
click node_peak_extraction "https://github.com/derekyeungqut/automated-program-for-eab-data-processing-operation/blob/main/Aumated%20Program%20Package/AutomatedDataExtractionProgram(fixed).py"
click node_degradation_analysis "https://github.com/derekyeungqut/automated-program-for-eab-data-processing-operation/blob/main/Aumated%20Program%20Package/AutomatedDataExtractionProgram(fixed).py"
click node_calibration_analysis "https://github.com/derekyeungqut/automated-program-for-eab-data-processing-operation/blob/main/Aumated%20Program%20Package/AutomatedDataExtractionProgram(fixed).py"
click node_averaging_calibration "https://github.com/derekyeungqut/automated-program-for-eab-data-processing-operation/blob/main/Aumated%20Program%20Package/AutomatedDataExtractionProgram(fixed).py"
click node_current_thresholds "https://github.com/derekyeungqut/automated-program-for-eab-data-processing-operation/blob/main/Aumated%20Program%20Package/AutomatedDataExtractionProgram(fixed).py"
click node_plotting "https://github.com/derekyeungqut/automated-program-for-eab-data-processing-operation/blob/main/Aumated%20Program%20Package/AutomatedDataExtractionProgram(fixed).py"
click node_excel_export "https://github.com/derekyeungqut/automated-program-for-eab-data-processing-operation/blob/main/Aumated%20Program%20Package/AutomatedDataExtractionProgram(fixed).py"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_app,node_folder_selection,node_mode_selection,node_current_thresholds toneBlue
class node_file_discovery,node_signal_reading,node_peak_extraction toneAmber
class node_degradation_analysis,node_calibration_analysis,node_averaging_calibration,node_plotting,node_excel_export toneMint
class node_researcher,node_measurement_files,node_result_files toneIndigo
```

## Components

### User interface

- [Desktop application](https://github.com/derekyeungqut/automated-program-for-eab-data-processing-operation/blob/main/Aumated%20Program%20Package/AutomatedDataExtractionProgram(fixed).py): `Aumated Program Package/AutomatedDataExtractionProgram(fixed).py`
- [Folder selection](https://github.com/derekyeungqut/automated-program-for-eab-data-processing-operation/blob/main/Aumated%20Program%20Package/AutomatedDataExtractionProgram(fixed).py): `Aumated Program Package/AutomatedDataExtractionProgram(fixed).py`
- [Analysis selection](https://github.com/derekyeungqut/automated-program-for-eab-data-processing-operation/blob/main/Aumated%20Program%20Package/AutomatedDataExtractionProgram(fixed).py): `Aumated Program Package/AutomatedDataExtractionProgram(fixed).py`
- [Minimum-current controls](https://github.com/derekyeungqut/automated-program-for-eab-data-processing-operation/blob/main/Aumated%20Program%20Package/AutomatedDataExtractionProgram(fixed).py): `Aumated Program Package/AutomatedDataExtractionProgram(fixed).py`

### Signal processing

- [File discovery and sorting](https://github.com/derekyeungqut/automated-program-for-eab-data-processing-operation/blob/main/Aumated%20Program%20Package/AutomatedDataExtractionProgram(fixed).py): `Aumated Program Package/AutomatedDataExtractionProgram(fixed).py`
- [Signal reading and filtering](https://github.com/derekyeungqut/automated-program-for-eab-data-processing-operation/blob/main/Aumated%20Program%20Package/AutomatedDataExtractionProgram(fixed).py): `Aumated Program Package/AutomatedDataExtractionProgram(fixed).py`
- [Multichannel peak extraction](https://github.com/derekyeungqut/automated-program-for-eab-data-processing-operation/blob/main/Aumated%20Program%20Package/AutomatedDataExtractionProgram(fixed).py): `Aumated Program Package/AutomatedDataExtractionProgram(fixed).py`

### Analysis and output

- [Degradation analysis](https://github.com/derekyeungqut/automated-program-for-eab-data-processing-operation/blob/main/Aumated%20Program%20Package/AutomatedDataExtractionProgram(fixed).py): `Aumated Program Package/AutomatedDataExtractionProgram(fixed).py`
- [Calibration analysis](https://github.com/derekyeungqut/automated-program-for-eab-data-processing-operation/blob/main/Aumated%20Program%20Package/AutomatedDataExtractionProgram(fixed).py): `Aumated Program Package/AutomatedDataExtractionProgram(fixed).py`
- [Trial averaging and calibration](https://github.com/derekyeungqut/automated-program-for-eab-data-processing-operation/blob/main/Aumated%20Program%20Package/AutomatedDataExtractionProgram(fixed).py): `Aumated Program Package/AutomatedDataExtractionProgram(fixed).py`
- [Result plotting](https://github.com/derekyeungqut/automated-program-for-eab-data-processing-operation/blob/main/Aumated%20Program%20Package/AutomatedDataExtractionProgram(fixed).py): `Aumated Program Package/AutomatedDataExtractionProgram(fixed).py`
- [Excel export](https://github.com/derekyeungqut/automated-program-for-eab-data-processing-operation/blob/main/Aumated%20Program%20Package/AutomatedDataExtractionProgram(fixed).py): `Aumated Program Package/AutomatedDataExtractionProgram(fixed).py`

### Other components

- **Researcher**
- **Measurement files**
- **Saved results**

## Connections

- Researcher → Desktop application: uses
- Researcher → Measurement files: provides
- Desktop application → Folder selection: opens
- Folder selection → File discovery and sorting: selects folder
- Measurement files → File discovery and sorting: reads files
- File discovery and sorting → Signal reading and filtering: supplies sorted files
- Signal reading and filtering → Multichannel peak extraction: filters signals
- Desktop application → Analysis selection: offers modes
- Analysis selection → Degradation analysis: dispatches
- Analysis selection → Calibration analysis: dispatches
- Degradation analysis → Multichannel peak extraction: extracts peaks
- Calibration analysis → Multichannel peak extraction: extracts peaks
- Calibration analysis → Trial averaging and calibration: calibrates
- Desktop application → Minimum-current controls: configures limits
- Desktop application → Result plotting: plots results
- Desktop application → Excel export: saves results
- Excel export → Saved results: writes workbook
