Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class Demanda {
- public void CalculoDemandaIndividual(Double[] TemperaturaRed) {
- Double[] litrosDia = new Double[12];
- Double[] litrosMes = new Double[12];
- Double[] DemandaKWH = new Double[12];
- Double[] ocupacion = new Double[12];
- Double[] diasMes = new Double[12];
- Double LitrosDiaA60, TemperaturaACS, NumeroPersonas, OtrosConsumos;
- //Guardo la ocupacion de cada uno de los jspinners
- ocupacion = ocupacion();
- //Guardo la variable del consumo para una temperatura de 60ºC en litros/día y por persona
- LitrosDiaA60 = Double.parseDouble(jFormattedTextFieldIndConDiaPersona.getText());
- //Guardo la Temperatura del Agua Caliente Sanitaria (Por defecto, 60ºC)
- TemperaturaACS = Double.parseDouble(jFormattedTextFieldIndTACS.getText());
- //Guardo el número de personas
- NumeroPersonas = Double.parseDouble(jFormattedTextFieldIndPersonas.getText());
- //Guardo otros consumos en el caso de que los haya
- OtrosConsumos = Double.parseDouble(jFormattedTextFieldIndConOtros.getText());
- //Con todos los datos obtengo el consumo en litros/día
- litrosDia = consumoLitrosDia(TemperaturaRed, ocupacion, LitrosDiaA60, TemperaturaACS, NumeroPersonas, OtrosConsumos);
- //Para obtener el consumo en litros/mes necesito el número de días de cada mes
- diasMes = numDiasMes();
- //Obtengo el consumo en litros/mes
- litrosMes = consumoLitrosMes(litrosDia, diasMes);
- //Una vez he obtenido el consumo en litros/mes, lo transformo en kilovatios hora al mes
- DemandaKWH = calculokWhMes(litrosMes, TemperaturaRed, TemperaturaACS);
- //Finalmente relleno la "tabla" que verá el usuario por pantalla
- rellenarTablaDemanda(litrosDia, litrosMes, DemandaKWH);
- }
- //Cálculo del consumo litros/día (varía con la Tª de ACS de referencia)Considera la ocupación y el número de personas.
- public Double[] consumoLitrosDia(Double[] TRed, Double[] ocupacion, Double consumo60, Double TRef, Double personas, Double otrosConsumos) {
- Double[] consumo = new Double[12];
- for (int i = 0; i < 12; i++) {
- consumo[i] = ocupacion[i] * (personas * (consumo60 * (60 - TRed[i]) / (TRef - TRed[i])) + otrosConsumos);
- }
- return consumo;
- }
- public Double[] numDiasMes() {
- Double[] var = new Double[12];
- var[0] = 31.0;
- var[1] = 28.0;
- var[2] = 31.0;
- var[3] = 30.0;
- var[4] = 31.0;
- var[5] = 30.0;
- var[6] = 31.0;
- var[7] = 31.0;
- var[8] = 30.0;
- var[9] = 31.0;
- var[10] = 30.0;
- var[11] = 31.0;
- return var;
- }
- //Cálculo para el consumo litros/mes
- public Double[] consumoLitrosMes(Double[] litrosDia, Double[] numDiasMes) {
- Double[] con = new Double[12];
- for (int i = 0; i < 12; i++) {
- con[i] = litrosDia[i] * numDiasMes[i];
- }
- return con;
- }
- //Cálculo del consumo en kilovatios hora y mes
- public Double[] calculokWhMes(Double[] consumo, Double[] TRed, Double TRef) {
- //Unidades:
- //Cesp KJ/KgCº, es el calor específico del agua
- //Otra unidad del consumo de energía es el kilo julio "kJ", para los cálculos se necesita el consumo en kilo vatios hora kWh
- //para pasar de uno a otro, se divide por 3600
- Double Cesp = 4.187;
- Double[] KJMes = new Double[12];
- Double[] kWh = new Double[12];
- for (int i = 0; i < 12; i++) {
- KJMes[i] = Cesp * consumo[i] * (TRef - TRed[i]);
- kWh[i] = KJMes[i] / 3600;
- }
- return kWh;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement