Add "Home"

2026-03-04 20:16:43 +00:00
commit aad32fce8a

119
Home.md Normal file

@@ -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
```