From aad32fce8a53698027c9d7b2faa8ab6e18ad289b Mon Sep 17 00:00:00 2001 From: vps1_gitea_admin Date: Wed, 4 Mar 2026 20:16:43 +0000 Subject: [PATCH] Add "Home" --- Home.md | 119 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 119 insertions(+) create mode 100644 Home.md diff --git a/Home.md b/Home.md new file mode 100644 index 0000000..db4cd89 --- /dev/null +++ b/Home.md @@ -0,0 +1,119 @@ +# reactor + +Custom Node-RED node implementing ASM3 (Activated Sludge Model No. 3) biological reactor simulation. + +## Overview + +| Property | Value | +|----------|-------| +| **Version** | 0.0.1 | +| **Category** | Biological Process | +| **Inputs** | 1 | +| **Outputs** | 3 (process / dbase / parent) | +| **Part of** | [EVOLV](https://gitea.wbd-rd.nl/RnD/EVOLV) | + +## Purpose + +The `reactor` node simulates biological treatment processes using the ASM3 kinetic model. It supports both CSTR (Continuous Stirred-Tank Reactor) and PFR (Plug Flow Reactor) configurations. Key capabilities: + +- **ASM3 kinetics** for activated sludge modeling +- **Nitrification/denitrification** simulation +- **Oxygen transfer** modeling via kLa parameter +- **Multi-inlet** support for influent blending +- **Real-time simulation** with configurable time stepping + +## Configuration + +### Reactor Type + +| Field | Description | +|-------|-------------| +| Reactor type | `CSTR` (completely mixed) or `PFR` (plug flow) | + +#### PFR-Specific + +| Field | Description | +|-------|-------------| +| `length` | Reactor length | +| `resolution_L` | Spatial discretization resolution | +| `alpha` | Dispersion coefficient | + +### Hydrodynamics + +| Field | Unit | Description | +|-------|------|-------------| +| `volume` | m3 | Reactor volume | +| `n_inlets` | - | Number of inlet connections | +| `kLa` | d-1 | Oxygen transfer coefficient | + +### ASM3 Initial Concentrations + +#### Dissolved Components + +| Parameter | Description | Typical Value | +|-----------|-------------|---------------| +| `S_O` | Dissolved oxygen | mg/L | +| `S_I` | Inert soluble COD | mg/L | +| `S_S` | Readily biodegradable substrate | mg/L | +| `S_NH` | Ammonium nitrogen | mg/L | +| `S_N2` | Dinitrogen gas | mg/L | +| `S_NO` | Nitrate nitrogen | mg/L | +| `S_HCO` | Alkalinity | mmol/L | + +#### Particulate Components + +| Parameter | Description | Typical Value | +|-----------|-------------|---------------| +| `X_I` | Inert particulate COD | mg/L | +| `X_S` | Slowly biodegradable substrate | mg/L | +| `X_H` | Heterotrophic biomass | mg/L | +| `X_STO` | Stored substrate | mg/L | +| `X_A` | **Autotrophic (nitrifier) biomass** | **~50 mg/L** | +| `X_TS` | Total suspended solids | mg/L | + +### Simulation + +| Field | Unit | Description | +|-------|------|-------------| +| `timeStep` | s | Simulation time step | +| `speedUpFactor` | - | Simulation speed multiplier | + +## Critical Parameters + +**X_A (Autotrophic biomass):** This parameter MUST be set to approximately **50 mg/L** for nitrification to occur. Setting it to 0.001 effectively disables nitrification, resulting in no nitrate production. + +## Downstream Connection + +The reactor connects to a **[settler](https://gitea.wbd-rd.nl/RnD/settler)** node downstream. The settler pulls effluent data from the reactor via the `getEffluent` method. + +## Inputs and Outputs + +### Input (Port 0) +Influent characteristics (flow rate, concentrations). + +### Output Port 0 - Process Data +Reactor state: all dissolved and particulate concentrations, volume, DO, pH proxy. + +### Output Port 1 - InfluxDB Telemetry +Time-series data for all reactor parameters. + +### Output Port 2 - Registration +Registration with downstream settler node. + +## Dependencies + +- [generalFunctions](https://gitea.wbd-rd.nl/RnD/generalFunctions) (MenuManager) + +## Technical Requirements + +- Node.js >= 18 +- Node-RED >= 3.x +- Understanding of ASM3 kinetics for parameter tuning + +## Testing + +```bash +node --test test/basic/*.test.js +node --test test/integration/*.test.js +node --test test/edge/*.test.js +```