Advertisement
Guest User

Untitled

a guest
Jan 22nd, 2018
65
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.73 KB | None | 0 0
  1. public class Demanda {
  2.  
  3.     public void CalculoDemandaIndividual(Double[] TemperaturaRed) {
  4.  
  5.         Double[] litrosDia = new Double[12];
  6.         Double[] litrosMes = new Double[12];
  7.         Double[] DemandaKWH = new Double[12];
  8.  
  9.         Double[] ocupacion = new Double[12];
  10.         Double[] diasMes = new Double[12];
  11.         Double LitrosDiaA60, TemperaturaACS, NumeroPersonas, OtrosConsumos;
  12.  
  13.         //Guardo la ocupacion de cada uno de los jspinners
  14.         ocupacion = ocupacion();
  15.         //Guardo la variable del consumo para una temperatura de 60ºC en litros/día y por persona
  16.         LitrosDiaA60 = Double.parseDouble(jFormattedTextFieldIndConDiaPersona.getText());
  17.  
  18.         //Guardo la  Temperatura del Agua Caliente Sanitaria (Por defecto, 60ºC)
  19.         TemperaturaACS = Double.parseDouble(jFormattedTextFieldIndTACS.getText());
  20.         //Guardo el número de personas
  21.         NumeroPersonas = Double.parseDouble(jFormattedTextFieldIndPersonas.getText());
  22.  
  23.         //Guardo otros consumos en el caso de que los haya
  24.         OtrosConsumos = Double.parseDouble(jFormattedTextFieldIndConOtros.getText());
  25.         //Con todos los datos obtengo el consumo en litros/día
  26.         litrosDia = consumoLitrosDia(TemperaturaRed, ocupacion, LitrosDiaA60, TemperaturaACS, NumeroPersonas, OtrosConsumos);
  27.         //Para obtener el consumo en litros/mes necesito el número de días de cada mes
  28.         diasMes = numDiasMes();
  29.         //Obtengo el consumo en litros/mes
  30.         litrosMes = consumoLitrosMes(litrosDia, diasMes);
  31.    
  32.         //Una vez he obtenido el consumo en litros/mes, lo transformo en kilovatios hora al mes
  33.         DemandaKWH = calculokWhMes(litrosMes, TemperaturaRed, TemperaturaACS);
  34.  
  35.         //Finalmente relleno la "tabla" que verá el usuario por pantalla
  36.         rellenarTablaDemanda(litrosDia, litrosMes, DemandaKWH);
  37.  
  38.     }
  39.  
  40. //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.
  41.     public Double[] consumoLitrosDia(Double[] TRed, Double[] ocupacion, Double consumo60, Double TRef, Double personas, Double otrosConsumos) {
  42.         Double[] consumo = new Double[12];
  43.         for (int i = 0; i < 12; i++) {
  44.  
  45.             consumo[i] = ocupacion[i] * (personas * (consumo60 * (60 - TRed[i]) / (TRef - TRed[i])) + otrosConsumos);
  46.         }
  47.         return consumo;
  48.        
  49.     }
  50.  
  51. public Double[] numDiasMes() {
  52.         Double[] var = new Double[12];
  53.         var[0] = 31.0;
  54.         var[1] = 28.0;
  55.         var[2] = 31.0;
  56.         var[3] = 30.0;
  57.         var[4] = 31.0;
  58.         var[5] = 30.0;
  59.         var[6] = 31.0;
  60.         var[7] = 31.0;
  61.         var[8] = 30.0;
  62.         var[9] = 31.0;
  63.         var[10] = 30.0;
  64.         var[11] = 31.0;
  65.         return var;
  66.     }
  67.  //Cálculo para el consumo litros/mes
  68.     public Double[] consumoLitrosMes(Double[] litrosDia, Double[] numDiasMes) {
  69.         Double[] con = new Double[12];
  70.         for (int i = 0; i < 12; i++) {
  71.             con[i] = litrosDia[i] * numDiasMes[i];
  72.         }
  73.         return con;
  74.     }
  75.     //Cálculo del consumo en kilovatios hora y mes
  76.     public Double[] calculokWhMes(Double[] consumo, Double[] TRed, Double TRef) {
  77.         //Unidades:
  78.         //Cesp KJ/KgCº, es el calor específico del agua
  79.         //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
  80.         //para pasar de uno a otro, se divide por 3600      
  81.         Double Cesp = 4.187;
  82.         Double[] KJMes = new Double[12];
  83.         Double[] kWh = new Double[12];
  84.         for (int i = 0; i < 12; i++) {
  85.             KJMes[i] = Cesp * consumo[i] * (TRef - TRed[i]);
  86.             kWh[i] = KJMes[i] / 3600;
  87.         }
  88.         return kWh;        
  89.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement