internal double LKVKierto(Constants.KK kuukausi) { var ala = _attrs.NetArea; // Kiertojohdon pituus taulukosta 6.7 // TODO: to talo attributes var Llkv_omin = 0.2; // Kiertojohdon ominaispituus: Llkv, omin, m / m2 // kiertojohdon eristys (taulukko 6.6) var Llkv_havio = 15; // kv, kiertohäviö, omin, W / m // TODO: varaajahäviöt pitäs laskee tähän // KOULU case, öljykattilan kanssa ei erillistä varaajaa, häviöt lasketaan erikseen. // kiertojohdon häviön teho var havioTeho = ala * Llkv_omin * Llkv_havio; //Debug.WriteLine($"[ERITE] LKV kierto häviö: {havioTeho} W."); //var tot_kwhs = 0d; //foreach (Constants.KK kuukausi in Enum.GetValues(typeof(Constants.KK))) //{ // kiertojohdon häviö tammikuussa var kwht = havioTeho * HoursInMonth(kuukausi) / 1000; // tot_kwhs += kwht; //} Debug.WriteLine($"[ERITE] {kuukausi.ToString()} LKV kierto häviö: {havioTeho} W, {kwht} kWh."); return(kwht); }
private int HoursInMonth(Constants.KK month) { return(24 * DaysInMonth((int)month)); }
public double Kohta7LampokuormienHyodyntaminen(int kk) { Constants.KK kuukausi = (Constants.KK)kk; // johtumishäviöt, tammikuu (kts. Excel) var Qjoht = /*Qylapohja + Qikk + Qovet + Qulkoseina + Qalapohja*/ 1948.0; // Olemassa olevan rakennuksen yhteydessä voidaan laskea 10% johtumishäviöstä // kylmäsilloille. Uudiskohteelle lasketaan reunaviivat tms. var kylmasilta = 0.10 * Qjoht; //var tot_bs_response = 0d; //// TODO: tehdaanko kuukausittain, vai kokonaisvahennys //foreach (Constants.KK kuukausi in Enum.GetValues(typeof(Constants.KK))) //{ // Lasketaan (kaava 3.2) Qtila = Qjoht + Qvuotoilma + Qiv,tuloilma + Qiv,korvausilma var Qvuoto = _Qvuotoilmat[kuukausi]; // 271d; // tODO: tallenna välitulos per kuukausi var QivTulo = 157d; // TODO: ^^sama var QivKorvaus = 0d; //< todo: onko se tulo tai korvaus var Qtila = Qjoht + kylmasilta + Qvuoto + QivTulo + QivKorvaus; // Note. tuloilma tulee iv koneesta // korvausilma tulee ikkunan raosta tai tuloilmaventtiilista // Rakennuksen tilojen ominaislampohavio double Htila = 0d; var deltaT = (_attrs.InTemp - _OutdoorTemp[kuukausi]); if (0 == deltaT) { deltaT = 0.01; // valitse pieni } Htila = Qtila / (deltaT * HoursInMonth(kuukausi)) * 1000; // valitaan Crak = 70 Wh/m2K (taulukko 5.6) var Crak = 70d; // TODO: katso taulukosta // Rakennuksen aikavakio var Tau = (Crak * _attrs.NetArea) / (Htila); Debug.WriteLine($"[ERITE] Aikavakio: {Tau} h"); // suhdeluku gamma (kaava 5.4) // Lämpökuormat tammikuussa: // - henkilöt, 131,2 kWh // - valaistus+sähkö, 263 kWh // - lämp.veden kierto 328 kWh (kts. 1010/2017, 18§) kerroin! // - aurinko ikkunoista var henkilot = LampokuormaHenkiloista((int)kuukausi); var valaistus = ValaistusJaKulutussahko((int)kuukausi); var kierto = 1.5 * LKVKierto(kuukausi); var aurinko = Kohta6IkkunoidenKauttaTulevaSateilyEnergia((int)kuukausi); var lampoKuorma = henkilot + valaistus + kierto + aurinko; // Lampokuorman suhde lampohavioon var gamma = lampoKuorma / 2571d; // (5.14) // Numeerinen parametri a var a = 1 + Tau / 15; // (5.13) // lämpökuorman hyödyntämisaste tassa kuussa var nlampo = (1 + Math.Pow(gamma, a)) / (1 + Math.Pow(gamma, a + 1)); Debug.WriteLine($"[ERITE] Lampokuorman hyodyntamisaste kk: {kuukausi.ToString()}, arvo: {nlampo}"); var Qlamm_tilat_netto = 2571d - nlampo * 616.2; //< todo mitanaaoli? //tot_bs_response += Qlamm_tilat_netto; //} //return tot_bs_response; return(Qlamm_tilat_netto); }