{
    "water_balance_validation": {
        "total_input_mm": 1916.2300416226944,
        "total_output_mm": 2153.784423828125,
        "total_residual_mm": -237.55413806480556,
        "residual_pct": -12.396953022594348,
        "mean_daily_error_pct": -35939506.93257157,
        "max_daily_error_pct": 846739578.2470703,
        "tolerance_pct": 5.0,
        "components": {
            "evapotranspiration_mm": 2013.9476318359375,
            "evapotranspiration_pct": 105.09947073632632,
            "runoff_mm": 140.73016357421875,
            "runoff_pct": 7.344116338717151,
            "storage_change_mm": -0.8935413360595703,
            "storage_change_pct": -0.04663017052498066
        },
        "pass_validation": false,
        "validation_note": "Using journal standard tolerance (5%) for physics-informed models"
    },
    "ml_model_validation": {
        "hydro_simulator": {
            "ML-Hydro-runoff": {
                "model_name": "ML-Hydro-runoff",
                "NSE": 0.031623005867004395,
                "R2": 0.06825613975524902,
                "PBIAS": -1.4676854610443115,
                "RMSE": 0.11348386108875275,
                "MAE": 0.09034295380115509,
                "status": "FAIL",
                "nse_interpretation": "UNSATISFACTORY",
                "r2_interpretation": "UNSATISFACTORY",
                "pbias_interpretation": "VERY GOOD"
            },
            "ML-Hydro-infiltration": {
                "model_name": "ML-Hydro-infiltration",
                "NSE": -1.1053898334503174,
                "R2": 0.11505851149559021,
                "PBIAS": 6.917140483856201,
                "RMSE": 0.041040293872356415,
                "MAE": 0.02733948454260826,
                "status": "FAIL",
                "nse_interpretation": "UNSATISFACTORY",
                "r2_interpretation": "UNSATISFACTORY",
                "pbias_interpretation": "VERY GOOD"
            },
            "ML-Hydro-percolation": {
                "model_name": "ML-Hydro-percolation",
                "NSE": 0.03394681215286255,
                "R2": 0.08568675071001053,
                "PBIAS": -1.2817699909210205,
                "RMSE": 0.476630836725235,
                "MAE": 0.42049506306648254,
                "status": "FAIL",
                "nse_interpretation": "UNSATISFACTORY",
                "r2_interpretation": "UNSATISFACTORY",
                "pbias_interpretation": "VERY GOOD"
            },
            "ML-Hydro-baseflow": {
                "model_name": "ML-Hydro-baseflow",
                "NSE": 0.004134953022003174,
                "R2": 0.05845755338668823,
                "PBIAS": 8.047698020935059,
                "RMSE": 0.04973233491182327,
                "MAE": 0.04473152011632919,
                "status": "FAIL",
                "nse_interpretation": "UNSATISFACTORY",
                "r2_interpretation": "UNSATISFACTORY",
                "pbias_interpretation": "VERY GOOD"
            },
            "ML-Hydro-reservoir": {
                "model_name": "ML-Hydro-reservoir",
                "NSE": -0.08117568492889404,
                "R2": 0.06826062500476837,
                "PBIAS": -6.085638999938965,
                "RMSE": 0.15750955045223236,
                "MAE": 0.11760390549898148,
                "status": "FAIL",
                "nse_interpretation": "UNSATISFACTORY",
                "r2_interpretation": "UNSATISFACTORY",
                "pbias_interpretation": "VERY GOOD"
            },
            "ML-Hydro-soil_storage": {
                "model_name": "ML-Hydro-soil_storage",
                "NSE": -0.24509978294372559,
                "R2": 0.05206506699323654,
                "PBIAS": -7.121339321136475,
                "RMSE": 0.009216411970555782,
                "MAE": 0.00865334551781416,
                "status": "FAIL",
                "nse_interpretation": "UNSATISFACTORY",
                "r2_interpretation": "UNSATISFACTORY",
                "pbias_interpretation": "VERY GOOD"
            },
            "ML-Hydro-aquifer": {
                "model_name": "ML-Hydro-aquifer",
                "NSE": -0.03309059143066406,
                "R2": 0.3761398196220398,
                "PBIAS": -11.590993881225586,
                "RMSE": 6.798883438110352,
                "MAE": 5.48540735244751,
                "status": "FAIL",
                "nse_interpretation": "UNSATISFACTORY",
                "r2_interpretation": "UNSATISFACTORY",
                "pbias_interpretation": "GOOD"
            },
            "ML Model": {
                "model_name": "ML Model",
                "NSE": 1.0,
                "R2": 1.0,
                "PBIAS": 0.0,
                "RMSE": 0.0,
                "MAE": 0.0,
                "status": "PASS",
                "nse_interpretation": "VERY GOOD",
                "r2_interpretation": "EXCELLENT",
                "pbias_interpretation": "VERY GOOD"
            },
            "Rational Method": {
                "model_name": "Rational Method",
                "NSE": -58664.2980771175,
                "R2": 0.21817875619969238,
                "PBIAS": 580.8170906084686,
                "RMSE": 3.952275282663711,
                "MAE": 2.552449639858735,
                "status": "FAIL",
                "nse_interpretation": "UNSATISFACTORY",
                "r2_interpretation": "UNSATISFACTORY",
                "pbias_interpretation": "UNSATISFACTORY"
            },
            "Curve Number": {
                "model_name": "Curve Number",
                "NSE": -638.5925732089128,
                "R2": 0.003093155414685276,
                "PBIAS": -93.92818112782813,
                "RMSE": 0.41267508706006273,
                "MAE": 0.4010890443296695,
                "status": "FAIL",
                "nse_interpretation": "UNSATISFACTORY",
                "r2_interpretation": "UNSATISFACTORY",
                "pbias_interpretation": "UNSATISFACTORY"
            },
            "Simple Balance": {
                "model_name": "Simple Balance",
                "NSE": -92145.69309772803,
                "R2": 0.11963812907182735,
                "PBIAS": 530.3014563446449,
                "RMSE": 4.953320420729087,
                "MAE": 2.5848368398653845,
                "status": "FAIL",
                "nse_interpretation": "UNSATISFACTORY",
                "r2_interpretation": "UNSATISFACTORY",
                "pbias_interpretation": "UNSATISFACTORY"
            },
            "Persistence": {
                "model_name": "Persistence",
                "NSE": -31.384063720703125,
                "R2": 0.01645691692829132,
                "PBIAS": -2.6052980422973633,
                "RMSE": 0.09285861998796463,
                "MAE": 0.07492086291313171,
                "status": "FAIL",
                "nse_interpretation": "UNSATISFACTORY",
                "r2_interpretation": "UNSATISFACTORY",
                "pbias_interpretation": "VERY GOOD"
            },
            "Moving Average": {
                "model_name": "Moving Average",
                "NSE": -18.800999966196187,
                "R2": 0.03763551582453066,
                "PBIAS": -2.6098295601721238,
                "RMSE": 0.07261061363361225,
                "MAE": 0.060375900083215056,
                "status": "FAIL",
                "nse_interpretation": "UNSATISFACTORY",
                "r2_interpretation": "UNSATISFACTORY",
                "pbias_interpretation": "VERY GOOD"
            }
        }
    },
    "validation_summary": {
        "total_components_validated": 7,
        "components_passed": 0,
        "components_marginal": 0,
        "components_failed": 7,
        "average_NSE": -0.19929301738739014,
        "average_R2": 0.11770349528108325,
        "average_PBIAS": 6.073180879865374
    },
    "baseline_comparison": {
        "component_analyzed": "runoff",
        "baseline_methods": {
            "Rational Method": {
                "description": "Q = C \u00d7 P, where C = 0.5 (mixed land use)",
                "reference": "Classical rational method"
            },
            "Curve Number": {
                "description": "NRCS SCS-CN method, CN = 75",
                "reference": "USDA Natural Resources Conservation Service"
            },
            "Simple Balance": {
                "description": "P - ET = R (simplified water balance)",
                "reference": "Basic hydrological equation"
            },
            "Persistence": {
                "description": "Tomorrow = Today (naive forecast)",
                "reference": "Time series baseline"
            },
            "Moving Average": {
                "description": "7-day moving average",
                "reference": "Statistical baseline"
            }
        },
        "comparison_results": {
            "runoff": {
                "detailed_metrics": {
                    "ML Model": {
                        "NSE": 1.0,
                        "R2": 1.0,
                        "PBIAS": 0.0,
                        "RMSE": 0.0,
                        "MAE": 0.0
                    },
                    "Rational Method": {
                        "NSE": -58664.2980771175,
                        "R2": 0.21817875619969238,
                        "PBIAS": 580.8170906084686,
                        "RMSE": 3.952275282663711,
                        "MAE": 2.552449639858735
                    },
                    "Curve Number": {
                        "NSE": -638.5925732089128,
                        "R2": 0.003093155414685276,
                        "PBIAS": -93.92818112782813,
                        "RMSE": 0.41267508706006273,
                        "MAE": 0.4010890443296695
                    },
                    "Simple Balance": {
                        "NSE": -92145.69309772803,
                        "R2": 0.11963812907182735,
                        "PBIAS": 530.3014563446449,
                        "RMSE": 4.953320420729087,
                        "MAE": 2.5848368398653845
                    },
                    "Persistence": {
                        "NSE": -31.384063720703125,
                        "R2": 0.01645691692829132,
                        "PBIAS": -2.6052980422973633,
                        "RMSE": 0.09285861998796463,
                        "MAE": 0.07492086291313171
                    },
                    "Moving Average": {
                        "NSE": -18.800999966196187,
                        "R2": 0.03763551582453066,
                        "PBIAS": -2.6098295601721238,
                        "RMSE": 0.07261061363361225,
                        "MAE": 0.060375900083215056
                    }
                },
                "improvements": {
                    "Rational Method": {
                        "NSE_improvement_%": null,
                        "R2_improvement_%": null,
                        "note": "Baseline model failed validation"
                    },
                    "Curve Number": {
                        "NSE_improvement_%": null,
                        "R2_improvement_%": null,
                        "note": "Baseline model failed validation"
                    },
                    "Simple Balance": {
                        "NSE_improvement_%": null,
                        "R2_improvement_%": null,
                        "note": "Baseline model failed validation"
                    },
                    "Persistence": {
                        "NSE_improvement_%": null,
                        "R2_improvement_%": null,
                        "note": "Baseline model failed validation"
                    },
                    "Moving Average": {
                        "NSE_improvement_%": null,
                        "R2_improvement_%": null,
                        "note": "Baseline model failed validation"
                    }
                },
                "average_improvement": null
            }
        },
        "validation_criteria": {
            "NSE_threshold": 0.5,
            "R2_threshold": 0.6,
            "PBIAS_threshold": 25,
            "reference": "Muletationa (2012)"
        },
        "conclusion": {
            "status": "INCONCLUSIVE",
            "message": "Unable to calculate improvement metrics"
        }
    }
}