{"service":"HALOWERK solarwerk","endpoint":"/tilt-optimiser","method":"POST","content_type":"application/json","inputSchema":{"type":"object","required":["lat","lon"],"additionalProperties":false,"properties":{"lat":{"type":"number","minimum":-90,"maximum":90},"lon":{"type":"number","minimum":-180,"maximum":180},"azimuth_deg":{"type":"number","minimum":0,"maximum":360,"default":180},"albedo":{"type":"number","minimum":0,"maximum":1,"default":0.2},"elevation_m":{"type":"number","minimum":-500,"maximum":6000,"default":0},"current_tilt_deg":{"type":"number","minimum":0,"maximum":90,"description":"Tilt in use today, for the loss comparison."},"tilt_step_deg":{"type":"number","minimum":1,"maximum":10,"default":2},"year":{"type":"integer","minimum":1970,"maximum":2100,"default":2026}}},"requestExample":{"lat":-90,"lon":-180,"azimuth_deg":180,"albedo":0.2,"elevation_m":0,"tilt_step_deg":2,"year":2026},"operations":[{"method":"POST","inputSchema":{"type":"object","required":["lat","lon"],"additionalProperties":false,"properties":{"lat":{"type":"number","minimum":-90,"maximum":90},"lon":{"type":"number","minimum":-180,"maximum":180},"azimuth_deg":{"type":"number","minimum":0,"maximum":360,"default":180},"albedo":{"type":"number","minimum":0,"maximum":1,"default":0.2},"elevation_m":{"type":"number","minimum":-500,"maximum":6000,"default":0},"current_tilt_deg":{"type":"number","minimum":0,"maximum":90,"description":"Tilt in use today, for the loss comparison."},"tilt_step_deg":{"type":"number","minimum":1,"maximum":10,"default":2},"year":{"type":"integer","minimum":1970,"maximum":2100,"default":2026}}},"requestExample":{"lat":-90,"lon":-180,"azimuth_deg":180,"albedo":0.2,"elevation_m":0,"tilt_step_deg":2,"year":2026}}],"example_request":{"lat":-90,"lon":-180,"azimuth_deg":180,"albedo":0.2,"elevation_m":0,"tilt_step_deg":2,"year":2026},"serviceName":"panel_tilt_optimiser","tags":["off-grid","solar","pv"],"outputSchema":{"type":"object"},"outputExample":{"lat":-90,"lon":-180,"azimuth_deg":180,"year":2026,"tilt_step_deg":2,"best_fixed_tilt_deg":56,"best_fixed_year_wh_per_m2":843997,"flat_year_wh_per_m2":715089,"gain_vs_flat_percent":18,"two_position":{"summer_tilt_deg":63,"winter_tilt_deg":0},"monthly":[{"month":"January","best_tilt_deg":48,"best_day_wh_per_m2":6643.4,"flat_day_wh_per_m2":6424,"gain_vs_flat_percent":3.4},{"month":"February","best_tilt_deg":68,"best_day_wh_per_m2":4209.1,"flat_day_wh_per_m2":3002.6,"gain_vs_flat_percent":40.2},{"month":"March","best_tilt_deg":86,"best_day_wh_per_m2":831.3,"flat_day_wh_per_m2":112.3,"gain_vs_flat_percent":640.5},{"month":"April","best_tilt_deg":0,"best_day_wh_per_m2":0,"flat_day_wh_per_m2":0,"gain_vs_flat_percent":null},{"month":"May","best_tilt_deg":0,"best_day_wh_per_m2":0,"flat_day_wh_per_m2":0,"gain_vs_flat_percent":null},{"month":"June","best_tilt_deg":0,"best_day_wh_per_m2":0,"flat_day_wh_per_m2":0,"gain_vs_flat_percent":null},{"month":"July","best_tilt_deg":0,"best_day_wh_per_m2":0,"flat_day_wh_per_m2":0,"gain_vs_flat_percent":null},{"month":"August","best_tilt_deg":0,"best_day_wh_per_m2":0,"flat_day_wh_per_m2":0,"gain_vs_flat_percent":null},{"month":"September","best_tilt_deg":0,"best_day_wh_per_m2":0,"flat_day_wh_per_m2":0,"gain_vs_flat_percent":null},{"month":"October","best_tilt_deg":76,"best_day_wh_per_m2":2991.2,"flat_day_wh_per_m2":1449.2,"gain_vs_flat_percent":106.4},{"month":"November","best_tilt_deg":54,"best_day_wh_per_m2":5929.1,"flat_day_wh_per_m2":5238.2,"gain_vs_flat_percent":13.2},{"month":"December","best_tilt_deg":48,"best_day_wh_per_m2":7687.7,"flat_day_wh_per_m2":7300.7,"gain_vs_flat_percent":5.3}],"current_tilt_comparison":null,"unavailable_fields":["current_tilt_comparison"],"high_latitude_note":"Above the polar circle single days carry the year; treat the fixed optimum with care.","models":["Sonnenstand: NOAA-Verfahren mit Spencer-Reihe fuer Deklination und Zeitgleichung.","Luftmasse: Kasten-Young 1989.","Direktnormalstrahlung: Luftmassenmodell nach Meinel, Klarhimmel.","Diffusstrahlung: fester Anteil von zehn Prozent der Direktstrahlung, Himmel isotrop.","Modulebene: isotroper Himmel plus Bodenreflex mit Albedo."],"limits":["Clear sky, so the optimum comes out steeper than under real weather, in winter noticeably so.","Shading, snow load and mounting constraints are not considered.","Azimuth is taken as given and not optimised."],"method":"clear-sky plane-of-array insolation on the fifteenth of each month, tilt scanned in steps"}}