Skip to content

validator_advanced

validator_advanced

Advanced / cross-field AERMOD validation.

The base Validator in validator.py catches per-field range violations (e.g. negative stack height). The checks here look for combinations that commonly cause AERMOD to crash cryptically or produce silently wrong results:

  • Stack-parameter consistency (zero exit velocity with non-ambient temp, implausibly small diameter given emission rate, etc.).
  • Receptor-grid/domain sanity (extent, density).
  • DFAULT vs. non-default model-option consistency.
  • Emission-rate plausibility for the declared pollutant.
  • Met date range vs. ControlPathway date range.

As of v1.3.0 these checks are integrated into Validator.validate() by default — findings land in the returned ValidationResult.errors list with the appropriate severity. Call the standalone advanced_validate(project) only when you need the cross-field findings in isolation (e.g. for custom reporting).

advanced_validate

advanced_validate(project: Any) -> List[ValidationError]

Run all advanced / cross-field checks and return findings.

Findings include both 'warning' and 'error' severities; merge into a base ValidationResult via result.errors.extend(...).