import { funktionEinfacheInterpolation } from "./funktionEinfacheInterpolation.js";
import { A13BerechnungRechnerischeLaufzeitHeizung } from "#lib/Berechnungen/BedarfsausweisWohnen/A13BerechnungRechnerischeLaufzeitHeizung.js";

export function funktionHilfsenergiePufferspeicherHeizungLadepumpeT53(LeistungHilfsenergie: string, NettoGrundFlaeche: number) {

    const resultRechnerischeLaufzeitHeizung = A13BerechnungRechnerischeLaufzeitHeizung();
    const rechnerischeLaufzeitGesamt = resultRechnerischeLaufzeitHeizung.rechnerischeLaufzeitGesamt;
    let HilfsenergiePufferspeicherHeizungLadepumpe = 0;

    if (NettoGrundFlaeche < 50) { NettoGrundFlaeche = 50; }
   
const dataset = [
    {SuchSpalte: ["Nettogrundfläche"], DatenSpalte: [50, 100, 150, 200, 300, 400, 500, 600, 700, 800, 900, 1000, 2000, 3000, 4000, 5000, 5000]},
    {SuchSpalte: ["Pumpenleistung"], DatenSpalte: [42, 43, 45, 46, 49, 52, 55, 58, 61, 64, 67, 70, 85, 100, 130, 160, 190]},
    {SuchSpalte: ["Hilfsenergieaufwand"], DatenSpalte: [208, 215, 223, 230, 245, 260, 275, 290, 305, 320, 335, 350, 425, 500, 650, 800, 950]}
];


if (NettoGrundFlaeche > 5000) { 
    if (LeistungHilfsenergie === "Hilfsenergieaufwand") {
        HilfsenergiePufferspeicherHeizungLadepumpe = (0.15 * NettoGrundFlaeche + 200) * (rechnerischeLaufzeitGesamt / 5000);
        return HilfsenergiePufferspeicherHeizungLadepumpe;
        }
        else {
        NettoGrundFlaeche = 5000;
        HilfsenergiePufferspeicherHeizungLadepumpe = funktionEinfacheInterpolation(NettoGrundFlaeche, LeistungHilfsenergie, dataset);
        return HilfsenergiePufferspeicherHeizungLadepumpe;
        }
} 
else {
    HilfsenergiePufferspeicherHeizungLadepumpe = funktionEinfacheInterpolation(NettoGrundFlaeche, LeistungHilfsenergie, dataset);
    return HilfsenergiePufferspeicherHeizungLadepumpe;
}

}