calculate
CPCB 2014 SUB-INDEX CALCULATOR & PIECEWISE LINEAR ENGINE
AQI Calculator
Piecewise linear sub-index interpolation engine conforming to CPCB National Air Quality Index standards with real-time unit self-test verification. Computes regulatory AQI from ambient pollutant vectors.
RUNTIME TEST MATRIX
self-test: {{passing_tests}}/{{total_tests}} passing
[VERIFIED AGAINST CPCB BENCHMARK]
Breakpoints: {{breakpoints_verified_status}} • Hash: {{engine_hash}}
tune
TIER 1 QA/QC
POLLUTANT CONCENTRATION VECTOR INPUT (24-H MEAN)
science
GOVERNING PIECEWISE LINEAR FORMULATION
CPCB GUIDELINE EQ. 4.1
I = I_low + [ (I_high - I_low) / (C_high - C_low) ] × (C - C_low)
C: observed concentration (24h)
[C_low, C_high]: breakpoint concentration interval
[I_low, I_high]: sub-index AQI category interval
Final AQI: max(I_PM2.5, I_PM10, ...)
COMPUTED REGULATORY INDEX
CPCB SPECIFICATION STANDARD
{{category_name}}
AIR QUALITY INDEX (AQI)
{{aqi_result}}
/ {{scale_max}} scale
Critical Determinant
warning
Critical Pollutant: {{critical_pollutant}}
health_and_safety
Official Health Advisory:
{{health_statement}}
SUB-INDEX ANALYTICAL BREAKDOWN
{{pollutant_count}}-POLLUTANT SYNCHRONIZATION
PM2.5 Sub-Index (I_PM2.5)
{{pm25_sub_index}}
Linear trace: [{{pm25_bp_low}}, {{pm25_bp_high}}] → [{{i_low}}, {{i_high}}]
Audited Hours:
{{pm25_valid_hours}} / {{required_hours}}h
PM10 Sub-Index (I_PM10)
{{pm10_sub_index}}
Linear trace: [{{pm10_bp_low}}, {{pm10_bp_high}}] → [{{i_low}}, {{i_high}}]
Audited Hours:
{{pm10_valid_hours}} / {{required_hours}}h
Max Sub-Index aggregation rule:
max(I_PM2.5 [{{pm25_sub_index}}], I_PM10 [{{pm10_sub_index}}]) = {{aqi_result}}
storage
ACTIVE NODE: {{node_id}}
CPCB Reference Matrix: 2014 v{{cal_ver}}
Data Integrity Signature: {{data_signature}}
fact_check
Automated CPCB Verification Test Vectors
Runtime unit regression suite verifying mathematical compliance against official Central Pollution Control Board standard datasets.
Vectors Loaded: {{total_tests}}
Pass Rate: {{pass_rate_pct}}
| Test Vector ID | Pollutant Input Vector | Mathematical Target Range | Interpolated Sub-Index | Expected AQI | Assertion Status |
|---|---|---|---|---|---|
| Test Vector {{test_id_1}} | PM2.5 = {{test1_pm25}} µg/m³, PM10 = {{test1_pm10}} µg/m³ | [{{test1_range}}] | I_pm25 = {{test1_i_pm25}} | AQI = {{test1_expected}} | [{{test1_status}}] (Passed) |
| Test Vector {{test_id_2}} | PM2.5 = {{test2_pm25}} µg/m³, PM10 = {{test2_pm10}} µg/m³ | [{{test2_range}}] | I_pm25 = {{test2_i_pm25}} | AQI = {{test2_expected}} | [{{test2_status}}] (Passed) |
| Test Vector {{test_id_3}} (Severe Excursion) | PM2.5 = {{test3_pm25}} µg/m³, PM10 = {{test3_pm10}} µg/m³ | [{{test3_range}}] | Excursion Triggered | AQI = {{test3_expected}} | [{{test3_status}}] (Passed) |
Algorithm: Piecewise Linear Sub-Index Interpolation (PLSI) with dynamic breakpoint selection.
CPCB Breakpoints verification: {{verification_status}} • Hash: {{hash}}