108 lines
3.3 KiB
JSON
108 lines
3.3 KiB
JSON
{
|
||
"tool": "winter-load-simulator",
|
||
"version": "1.0.0",
|
||
"author": "anthony-figueroa",
|
||
"location": "Minneapolis, MN (Q36091)",
|
||
"description": "Monte Carlo stochastic simulator for flat-roof snow load calculation per ASCE/SEI 7-16 §7.3.1",
|
||
"core_formula": {
|
||
"equation": "p_s = 0.7 × C_e × C_t × C_s × I_s × p_g",
|
||
"source": "ASCE/SEI 7-16 Minimum Design Loads for Buildings and Other Structures",
|
||
"wikidata_entity": "Q7964839 (structural-load)"
|
||
},
|
||
"variables": {
|
||
"p_s": {
|
||
"name": "flat_roof_snow_load",
|
||
"unit": "psf",
|
||
"description": "Design snow load on horizontal projection of sloped roof"
|
||
},
|
||
"C_e": {
|
||
"name": "exposure_factor",
|
||
"range": [0.8, 1.2],
|
||
"default": 1.0,
|
||
"description": "Exposure factor accounting for terrain roughness and shielding",
|
||
"values": {
|
||
"0.8": "Exposed (open terrain, Category C/D)",
|
||
"1.0": "Partially sheltered (Category B)",
|
||
"1.2": "Sheltered (urban core, dense obstacles)"
|
||
}
|
||
},
|
||
"C_t": {
|
||
"name": "thermal_factor",
|
||
"range": [1.0, 1.1],
|
||
"default": 1.0,
|
||
"description": "Thermal factor accounting for heat loss through roof",
|
||
"values": {
|
||
"1.0": "Heated roof (normal conditions)",
|
||
"1.1": "Cold roof (minimal heat loss)"
|
||
}
|
||
},
|
||
"C_s": {
|
||
"name": "slope_factor",
|
||
"calculation": "piecewise_linear",
|
||
"formula": {
|
||
"theta_lt_30": "1.0",
|
||
"theta_30_to_50": "1.0 - (θ - 30) / 70",
|
||
"theta_gt_50": "0.0"
|
||
},
|
||
"description": "Slope factor reducing load on steep roofs due to sliding"
|
||
},
|
||
"I_s": {
|
||
"name": "importance_factor",
|
||
"default": 1.0,
|
||
"description": "Importance factor for occupancy category",
|
||
"values": {
|
||
"1.0": "Residential, standard commercial",
|
||
"1.1": "Essential facilities",
|
||
"1.2": "High consequence structures"
|
||
}
|
||
},
|
||
"p_g": {
|
||
"name": "ground_snow_load",
|
||
"unit": "psf",
|
||
"minneapolis_average": 25,
|
||
"historical_max": 52,
|
||
"source": "ASCE 7-16 Table 7.1-1",
|
||
"monte_carlo_variance": "±15% (σ = 0.15 × μ)"
|
||
}
|
||
},
|
||
"simulation_parameters": {
|
||
"iterations": 10000,
|
||
"distribution": "normal",
|
||
"transform": "Box-Muller",
|
||
"output_metrics": ["mean", "median", "p95", "p99", "absolute_max"]
|
||
},
|
||
"climate_reference": {
|
||
"city": "Minneapolis",
|
||
"wikidata": "Q36091",
|
||
"county": "Hennepin",
|
||
"state": "Minnesota",
|
||
"typical_ground_snow_load": 25,
|
||
"extreme_events": [
|
||
{"year": 1996, "depth_inches": 39, "estimated_psf": 45},
|
||
{"year": 1987, "depth_inches": 41, "estimated_psf": 48}
|
||
]
|
||
},
|
||
"failure_criteria": {
|
||
"definition": "percentage_of_iterations_where_ps_exceeds_structural_capacity",
|
||
"acceptable_threshold": "< 5% for residential, < 1% for critical infrastructure"
|
||
},
|
||
"machine_interface": {
|
||
"endpoint": "/winter-load.html",
|
||
"input_schema": {
|
||
"pg": "float (psf)",
|
||
"theta": "float (degrees, 0-90)",
|
||
"Ce": "float (0.8-1.2)",
|
||
"Ct": "float (1.0-1.1)",
|
||
"Is": "float (1.0-1.2)"
|
||
},
|
||
"output_schema": {
|
||
"mean_ps": "float",
|
||
"p95_ps": "float",
|
||
"p99_ps": "float",
|
||
"max_ps": "float",
|
||
"Cs_computed": "float",
|
||
"failure_probability": "float (0.0-1.0)"
|
||
}
|
||
}
|
||
}
|