Skip to content

[E5-F5] Generate implementation issues for Validation and Integration Tests #1119

@Gorkowski

Description

@Gorkowski

Dependencies:

#1117 [E5-F3] ──┐
├──► #THIS [E5-F5]
#1118 [E5-F4] ──┘

Summary

Generate implementation issues for feature E5-F5: Validation and Integration Tests.

Comprehensive integration tests validating mass conservation, isothermal-limit parity, and physical accuracy of the non-isothermal condensation implementation against literature values. These tests go beyond the unit tests in E5-F2 and E5-F3 by testing the full end-to-end flow through the strategy class with realistic physical scenarios, including validation against Rogers & Yau (1989) cloud droplet growth rates.

Feature Plan

Document: adw-docs/dev-plans/features/E5-F5-validation-integration-tests.md

Parent Epic: E5: Non-Isothermal Condensation with Latent Heat (adw-docs/dev-plans/epics/E5-non-isothermal-condensation.md)

Phases to Generate

Phase Description Size
E5-F5-P1 Mass conservation and isothermal-limit integration tests M (~100 LOC)
E5-F5-P2 Physical validation against known cloud droplet growth M (~80 LOC)

Dependencies

ADW Instructions

When processing this issue:

  1. Read the feature plan document: adw-docs/dev-plans/features/E5-F5-validation-integration-tests.md
  2. Read the parent epic for context: adw-docs/dev-plans/epics/E5-non-isothermal-condensation.md
  3. For each phase in the Phase Checklist (E5-F5-P1 through E5-F5-P2), create an implementation issue with:
    • Full technical details from the feature plan
    • Specific file paths from the feature plan's scope section
    • Test file paths (co-located in module tests/ directories)
    • Co-located testing: tests ship with implementation in every phase
    • Coverage target: 80-85% per phase
  4. Set dependency chain: E5-F5-P1 → E5-F5-P2
  5. Label all phases with agent, blocked, type:complete, model:default

Files to Create/Modify

  • Create: particula/dynamics/condensation/tests/latent_heat_conservation_test.py — mass conservation and isothermal-limit parity tests
  • Create: particula/dynamics/condensation/tests/latent_heat_validation_test.py — physical validation against literature

Testing Strategy

Integration Tests

Test File Phase Coverage Target
particula/dynamics/condensation/tests/latent_heat_conservation_test.py P1 Mass conservation + isothermal parity
particula/dynamics/condensation/tests/latent_heat_validation_test.py P2 Physical validation

Parametrized Test Matrix (P1)

Distribution Type Particles/Bins Species Scenario
Particle-resolved 100 1 Water, 293K
Particle-resolved 1000 1 Water, 293K
Particle-resolved 10000 3 Water + organics, 293K
Discrete 10 1 Water, 293K
Discrete 50 3 Water + organics, 293K
Discrete 100 1 Water, 293K
Continuous N/A 1 Water, 293K

Physical Validation Matrix (P2)

Parameter Value Source
Temperature 273.15 K Rogers & Yau Ch. 7
Pressure 101325 Pa Standard atmosphere
Supersaturation 0.5% (S=1.005) Cloud activation
Droplet radius 10 µm Cloud droplet size
Latent heat 2.501e6 J/kg Water at 273 K
Expected ratio ~0.6-0.7 (non-iso/iso) Literature

Key Tolerances

  • Mass conservation: |total_initial - total_final| / total_initial < 1e-12
  • Isothermal parity: < 1e-15 relative error on all mass arrays
  • Physical validation: < 5% relative error vs Rogers & Yau literature
  • Energy bookkeeping: |Q_released - sum(dm * L)| < 1e-14 * |Q|

Metadata

Metadata

Assignees

No one assigned

    Labels

    agentCreated or managed by ADW automationblockedBlocked - review required before ADW can processepic:E5type:generateGeneration workflow - create new issues, code, or artifacts

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions