MediaWiki:Common.js

Aus InDiGuD-Wiki
Zur Navigation springen Zur Suche springen

Hinweis: Leere nach dem Veröffentlichen den Browser-Cache, um die Änderungen sehen zu können.

  • Firefox/Safari: Umschalttaste drücken und gleichzeitig Aktualisieren anklicken oder entweder Strg+F5 oder Strg+R (⌘+R auf dem Mac) drücken
  • Google Chrome: Umschalttaste+Strg+R (⌘+Umschalttaste+R auf dem Mac) drücken
  • Internet Explorer/Edge: Strg+F5 drücken oder Strg drücken und gleichzeitig Aktualisieren anklicken
  • Opera: Strg+F5
/* Das folgende JavaScript wird für alle Benutzer geladen. */
 function scopCalculator() {
   var copa, copb, copc, scop, vorlauf, geregelt, heizgrenze, tww, speicher, wue, scop_w, scop_gesamt, f1, f2, f3;

	const tab11_1 = [0.036, 0.039, 0.042, 0.046, 0.050, 0.055];
	const tab11_2 = [0.514, 0.542, 0.573, 0.609, 0.649, 0.694];
	const tab11_3 = [0.346, 0.361, 0.377, 0.395, 0.415, 0.436];

	const tab12_1 = [0.036, 0.038, 0.041, 0.045, 0.049, 0.054];
	const tab12_2 = [0.500, 0.525, 0.553, 0.584, 0.619, 0.658];
	const tab12_3 = [0.328, 0.340, 0.352, 0.366, 0.380, 0.396];
	
	const tab13_1 = [0.046, 0.049, 0.053, 0.058, 0.063, 0.070];
	const tab13_2 = [0.595, 0.628, 0.665, 0.706, 0.752, 0.806];
	const tab13_3 = [0.272, 0.284, 0.298, 0.313, 0.329, 0.347];

	const tab14_1 = [0.045, 0.048, 0.052, 0.057, 0.062, 0.068];
	const tab14_2 = [0.579, 0.608, 0.641, 0.677, 0.718, 0.764];
	const tab14_3 = [0.259, 0.269, 0.280, 0.291, 0.303, 0.317];
	
	const tab15_1 = [0.055, 0.059, 0.064, 0.069, 0.076, 0.084];
	const tab15_2 = [0.658, 0.694, 0.735, 0.781, 0.832, 0.892];
	const tab15_3 = [0.210, 0.219, 0.230, 0.242, 0.254, 0.269];

	const tab16_1 = [0.054, 0.058, 0.063, 0.068, 0.074, 0.082];
	const tab16_2 = [0.640, 0.673, 0.709, 0.749, 0.795, 0.846];
	const tab16_3 = [0.200, 0.208, 0.217, 0.226, 0.236, 0.246];
	
	const temp = [30, 35, 40, 45, 50, 55];
	
	const k1 = 1.0;
	const k2 = 1.0;

	const tab24_i = [1.0, 0.905, 0.828, 0.751, 0.674];
	const tab24_e = [1.0, 0.916, 0.846, 0.776, 0.706];

	const k3 = 0.716;
	const k4 = 0.644;
	
  copa = document.getElementById('copa-7w35').value;
   copb = document.getElementById('copa2w35').value;
   copc = document.getElementById('copa7w35').value;
   vorlauf = document.getElementById('vorlauf').value;
   geregelt = document.getElementById('geregelt').checked;
   heizgrenze = document.getElementById('heizgrenze').value;
   wue = document.getElementById('wue').checked;
   tww = document.getElementById('tww').value;
   speicher = document.getElementById('speicher').value;
   


	if (geregelt == true)
	{
		if (heizgrenze == 3)
		{
			f1 = tab16_1[vorlauf];
			f2 = tab16_2[vorlauf];
			f3 = tab16_3[vorlauf];
		}
		else if (heizgrenze == 2)
		{
			f1 = tab14_1[vorlauf];
			f2 = tab14_2[vorlauf];
			f3 = tab14_3[vorlauf];
		}
		else
		{
			f1 = tab12_1[vorlauf];
			f2 = tab12_2[vorlauf];
			f3 = tab12_3[vorlauf];
		}
	}
	else
	{
		if (heizgrenze == 3)
		{
			f1 = tab15_1[vorlauf];
			f2 = tab15_2[vorlauf];
			f3 = tab15_3[vorlauf];
		}
		else if (heizgrenze == 2)
		{
			f1 = tab13_1[vorlauf];
			f2 = tab13_2[vorlauf];
			f3 = tab13_3[vorlauf];
		}
		else
		{
			f1 = tab11_1[vorlauf];
			f2 = tab11_2[vorlauf];
			f3 = tab11_3[vorlauf];
		}

	}

	/* geregelt ist true oder false */
   scop = k1 / ( (f1 / copa) + (f2 / copb)  + (f3 / copc ) );

/* Warmwasser */
	if (wue == true)
	{
		scop_w = copc * k2 * tab24_i[speicher] * k3;
	}
	else
	{
		scop_w = copc * k2 * tab24_e[speicher] * k4;
	}
	
	var alpha = 1.0;
	scop_gesamt = 1.0 / ( (1.0 - (tww / 100.0) ) * (alpha / scop) + (tww / 100.0) * (alpha / scop_w) + 1 - alpha );
	
   document.getElementById('scop').innerHTML = 'SCOP bei ' + 
   temp[vorlauf].toLocaleString("de-DE", {maximumFractionDigits: 0, style:"decimal"}) +
   '°C = ' + scop.toLocaleString("de-DE", {maximumFractionDigits: 1, style:"decimal"});

   document.getElementById('scop_w').innerHTML = 'SCOP Trinkwassererwärmung: ' + 
   ' ' + scop_w.toLocaleString("de-DE", {maximumFractionDigits: 1, style:"decimal"});
 
   document.getElementById('scop_gesamt').innerHTML = 'SCOP Gesamt: ' + 
   ' ' + scop_gesamt.toLocaleString("de-DE", {maximumFractionDigits: 1, style:"decimal"});

 }

function dlambdaCalculator() {
	var U, R, d, dcm, lambda;
	
	U = document.getElementById('uwert').value;
	lambda = document.getElementById('lambda').value;
	
	R = 1 / U;
	d = R * lambda;
	dcm = d * 100;
	
	document.getElementById('R').innerHTML = R.toFixed(3);
	document.getElementById('dcm').innerHTML = dcm.toFixed(1);
}

function myFunction() {
  var abstand, gemessen, berechnen, massstab, x, text1, text2;

  abstand = document.getElementById("abstand").value;
  gemessen = document.getElementById("gemessen").value;
  berechnen = document.getElementById("berechnen").value;
  massstab = abstand / gemessen;
  x = berechnen * massstab;
  
 
  text1 = massstab;
  text2 = x;
  document.getElementById("ergebnis1").innerHTML = text1;
  document.getElementById("ergebnis2").innerHTML = text2;
}


function ucalc() {
  var rsi, rse, u, lambda, d, text1;
  rsi = document.getElementById("rsi").value;
  rse = document.getElementById("rse").value;
  u = document.getElementById("u").value;
  lambda = document.getElementById("lambda").value;
  d = (lambda / u) - (rsi * lambda) - (rse * lambda);
  
  text = (100 * d) + " cm";
  document.getElementById("ergebnis").innerHTML = text;
}

function normalizeFloat(str) 
{
    if(typeof str === "number") 
    {
   	     return str;
   	}

    var ar = str.split(/\.|,/);  
   	var value = '';
   	for (var i in ar) 
   	{
    	if (i>0 && i==ar.length-1) 
      	{
        	value += ".";
       	}
       	value +=ar[i];
   	}
   	return Number(value);
}
	

function uwand_rechnen(wand, bj)
{
	var uwand;
	switch (wand)
	{
		case 1: 	//	Massivwand	
			switch(bj)
			{
				case 1:	//	bis 1918
						uwand = 1.4;
						break;
				case 2: //	1919 bis 1948
						uwand = 1.4;
						break;
				case 3: //	1949 bis 1957
						uwand = 1.4;
						break;
				case 4: //	1958 bis 1968
						uwand = 1.4;
						break;
				case 5: //	1969 bis 1978
						uwand = 1.0;
						break;
				case 6: //	1979 bis 1983
						uwand = 0.8;
						break;
				case 7: //	1984 bis 1994
						uwand = 0.6;
						break;
				case 8: //	ab 1995
						uwand = 0.5;
						break;
				default: // nicht definiert
						uwand = 5.0;
						break;
			}
			break;
			
		case 2: 	//	sonstige Massivwand	
			switch(bj)
			{
				case 1:	//	bis 1918
						uwand = 2.2;
						break;
				case 2: //	1919 bis 1948
						uwand = 2.2;
						break;
				case 3: //	1949 bis 1957
						uwand = 2.2;
						break;
				case 4: //	1958 bis 1968
						uwand = 1.4;
						break;
				case 5: //	1969 bis 1978
						uwand = 1.0;
						break;
				case 6: //	1979 bis 1983
						uwand = 0.8;
						break;
				case 7: //	1984 bis 1994
						uwand = 0.6;
						break;
				case 8: //	ab 1995
						uwand = 0.5;
						break;
				default: // nicht definiert
						uwand = 5.0;
						break;
			}
			break;
			case 3: 	//	Holz
			switch(bj)
			{
				case 1:	//	bis 1918
						uwand = 0.5;
						break;
				case 2: //	1919 bis 1948
						uwand = 0.5;
						break;
				case 3: //	1949 bis 1957
						uwand = 0.5;
						break;
				case 4: //	1958 bis 1968
						uwand = 0.5;
						break;
				case 5: //	1969 bis 1978
						uwand = 0.5;
						break;
				case 6: //	1979 bis 1983
						uwand = 0.5;
						break;
				case 7: //	1984 bis 1994
						uwand = 0.4;
						break;
				case 8: //	ab 1995
						uwand = 0.4;
						break;
				default: // nicht definiert
						uwand = 5.0;
						break;
			}
			break;
		default: 	//	undefiniert
			switch(bj)
			{
				case 1:	//	bis 1918
						uwand = 2.2;
						break;
				case 2: //	1919 bis 1948
						uwand = 2.2;
						break;
				case 3: //	1949 bis 1957
						uwand = 2.2;
							break;
				case 4: //	1958 bis 1968
						uwand = 1.4;
						break;
				case 5: //	1969 bis 1978
						uwand = 1.0;
						break;
				case 6: //	1979 bis 1983
						uwand = 0.8;
						break;
				case 7: //	1984 bis 1994
						uwand = 0.6;
						break;
				case 8: //	ab 1995
						uwand = 0.5;
						break;
				default: // nicht definiert
						uwand = 5.0;
						break;
			}
			break;
	}
	return uwand;	
		
}

function berechnen() 
{
	var rse = 0.04;
	var rsi = 0.13;
	var dstring = document.getElementById('d').value;
	var d = normalizeFloat( dstring ) * 0.01;
	var bj = parseInt(document.getElementById('baujahr').value);
	var wand = parseInt(document.getElementById('wand').value);

	//	U-Wert der Wand
	uwand = uwand_rechnen(wand, bj);

	var rtwand = 1.0 / uwand;
	var rwand = rtwand - rsi - rse;
	
	var lambda = parseFloat(document.getElementById('daemmung').value);
	var rt;

	if (lambda <= 0.0)
	{
		rt = rsi + rwand + rse;
	}
	else
	{
		var rdaemm = d / lambda;
		rt = rsi + rdaemm + rwand + rse;
		rtdaemm = rsi + rdaemm + rse;
	}	
	
	var u = 1 / rt;
	var su = u.toFixed(4);
	document.getElementById('ergebnis').innerHTML =  "Der U-Wert der Wand betr&auml;gt " + su.replace(".",",") + "&nbsp;W/m<sup>2</sup>K";
		
	if (su <= 0.20)
	{
		document.getElementById('info').innerHTML = "Eine F&ouml;rdung im Rahmen der BEG-EM ist m&ouml;glich.";
		
	}
	else if (su <= 0.24)
	{
		document.getElementById('info').innerHTML = "Der geforderte D&auml;mmwert nach GEG ist eingehalten.";			
	}
	else
	{
		document.getElementById('info').innerHTML = "";			
	}
	
}


function berechnen2() 
{
	var rse = 0.04;
	var rsi = 0.13;
	var bj = parseInt(document.getElementById('baujahr').value);
	var wand = parseInt(document.getElementById('wand').value);

	//	U-Wert der Wand
	uwand = uwand_rechnen(wand, bj);

	var rtwand = 1.0 / uwand;
	var rwand = rtwand - rsi - rse;
	
	var r_enev = (1.0 / 0.24);
	var r_kfw = (1.0 / 0.20);

	var rdaemm_enev = r_enev - rwand;
	var rdaemm_kfw = r_kfw - rwand;
	
	var lambda = parseFloat(document.getElementById('daemmung').value);

	d_enev = rdaemm_enev * lambda;
	d_kfw = rdaemm_kfw * lambda;
	
	d_enev_cm = Math.ceil(d_enev * 100.0);
	d_kfw_cm = Math.ceil(d_kfw * 100.0);
	document.getElementById('ergebnis2').innerHTML =  "Die Mindestd&auml;mmst&auml;rke f&uuml;r eine F&ouml;rderung im Rahmen der BEG-EM betr&auml;gt " + d_kfw_cm + " cm. Um den Vorgabewert des GEG zu erreichen ist eine D&auml;mmst&auml;rke von mindestens " + d_enev_cm + " cm erforderlich.";	
}

function energiecalc() {
  var u, l, h, f, e;
  var hgr = 66;
  u = document.getElementById("uwert").value;
  l = document.getElementById("laenge").value;
  h = document.getElementById("hoehe").value;
  hgr = document.getElementById("klimafaktor").value;

  f = l * h;
  e = u * f * hgr;

  document.getElementById("ergebnis").innerHTML = 'Über die Fläche von ' + 
  f.toLocaleString("de-DE", {maximumFractionDigits: 2, style:"decimal"}) + ' m<sup>2</sup> ' + 
  ' gehen ' + e.toLocaleString("de-DE", {maximumFractionDigits: 2, style:"decimal"}) + ' kWh/a verloren.';
}

 $(function () {
   if ($('#scop-wrapper').length) {
       document.getElementById('scop-wrapper').innerHTML =
       '<h2>SCOP/JAZ Rechner</h2>' +
       '<p><table class="gtable"' +
       '<tr><th>COP-Wert A-7/W35</th><th>COP-Wert A2/W35</th><th>COP-Wert A7/W35</th></tr>' +
       '<tr><td><input id="copa-7w35" type="number" value=2.73 style="width: 130px"></td>' +
       '<td><input id="copa2w35" type="number" value=4.24 style="width: 130px"></td>' +
	   '<td><input id="copa7w35" type="number" value=5.47 style="width: 130px"></td></tr>' +	      
		'</table></p>' +
		'<p>Wärmepumpe ist geregelt: ' + '<input id="geregelt" type="checkbox" name="geregelt" value="geregelt" checked></p>' +
		'<p>Vorlauftemperatur: <select id="vorlauf" name="Vorlauftemperatur">' +
		'<option value="0">30°C</option>' +
		'<option value="1">35°C</option>' +
		'<option value="2">40°C</option>' +
		'<option value="3">45°C</option>' +
		'<option value="4">50°C</option>' +
		'<option value="5">55°C</option>' +
		'</select></p>' +
		'<p>Heizgrenztemperatur: <select id="heizgrenze" name="Heizgrenze">' +
		'<option value="0">15°C</option>' +
		'<option value="1">12°C</option>' +
		'<option value="2">10°C</option>' +
		'</select></p>' +
		'<p>Anteil Warmwasser am Gesamtwärmebedarf:&nbsp;<input id="tww" type="number" value=18 style="width: 130px">&nbsp;%</p>' +
		'</select></p>' +
		'<p>Speichertemperatur: <select id="speicher" name="Speichertemperatur">' +
		'<option value="0">50°C</option>' +
		'<option value="1">55°C</option>' +
		'<option value="2">60°C</option>' +
		'<option value="3">65°C</option>' +
		'<option value="4">70°C</option>' +
		'</select></p>' +
		'<p>WÜ innen: ' + '<input id="wue" type="checkbox" name="Wärmeübertrager" value="wue" checked></p>' +
		'<p><button type="button" onclick="scopCalculator()">Aktualisieren</button></p>' +
	     '<p><a id="scop">?</a></p>' +
        '<p><a id="scop_w">?</a></p>' +
         '<p><a id="scop_gesamt">?</a></p>';
   }
   
   if ($('#dlambda-wrapper').length) {
   	document.getElementById('dlambda-wrapper').innerHTML =
       '<p>gewünschter U-Wert: ' + 
       '<input id="uwert" type="number" style="width: 130px">' + 
       'W/(m<sup>2</sup>&middot;K)</p>' +
       '<p>Lambda-Wert (Bemessungswert): ' +
       '<input id="lambda" type="number" style="width: 130px">' + 
       ' W/(m&middot;K)</p>' +
        '<br />' +
       '<button type="button" onclick="dlambdaCalculator()">Berechnen</button>' +
       '<p>Dämmstoffdicke in cm: <a id="dcm">0</a> cm, ' +
       'R-Wert des Dämmstoffes: <a id="R">0</a> (m<sup>2</sup>&middot;K)/W</p>' +
       '<br />';
	}
   
    if ($('#u-wert-rechner').length) { 
	document.getElementById('u-wert-rechner').innerHTML =
    '<p>Rsi eingeben:</p>' +
    '<input id="rsi" type="number" value="0.10" style="width: 130px">m<sup>2</sup>K/W<br />' +
    '<p>Rse eingeben:</p>' +
    '<input id="rse" type="number" value="0.04" style="width: 130px">m<sup>2</sup>K/W<br />' +
    '<p>Ziel U-Wert eingeben:</p>' +
    '<input id="u" type="number" value="0.20" style="width: 130px"W/>m<sup>2</sup>K<br />' +
    '<p>Lambda-Wert eingeben:</p>' +
    '<input id="lambda" type="number" value="0.035" style="width: 130px">W/mK<br />' +
    '<button type="button" onclick="ucalc()">berechnen</button>' +
	    '<p><a id="ergebnis">0 cm</a></p>';
    }
   
	if ($('#sanierung-rechner').length) {
   		document.getElementById('sanierung-rechner').innerHTML = '<h1>Sanierung Au&szlig;enwand</h1>' +
		'<div>' +
		'Baujahr: <select id="baujahr" name="Baujahr">' +
		'<option value="1">bis 1918</option>' +
		'<option value="2">1919 bis 1948</option>' +
		'<option value="3">1949 bis 1957</option>' +
		'<option selected value="4">1958 bis 1968</option>' +
		'<option value="5">1969 bis 1978</option>' +
		'<option value="6">1979 bis 1983</option>' +
		'<option value="7">1984 bis 1994</option>' +
		'<option value="8">ab 1995</option>' +
		'</select>' +
		'&nbsp;Wand: <select id="wand" name="Wand">' +
		'<option value="1">Massivwand aus Hochlochziegel, Bimsbeton-Hohlsteine</option>' +
		'<option value="2">Sonstige Massivwand mind. 20cm</option>' +
		'<option value="3">Holzrahmen oder Holztafelwand</option>' +
		'</select>' +
		'</div>' +
		'<div>' +
		'geplante D&auml;mmung:&nbsp;<select id="daemmung" name="D&auml;mmung">' +
		'<option value="0.10">Planblock 0,10 W/mK</option>' +
		'<option value="0.08">Planblock 0,08 W/mK</option>' +
		'<option value="0.04">Holzfaserd&auml;mmung 0,04 W/mK</option>' +
		'<option selected value="0.035">Mineralfaser 0,035 W/mK</option>' +
		'<option value="0.032">EPS/XPS/PUR 0,032 W/mK</option>' +
		'<option value="0.030">PUR 0,030 W/mK</option>' +
		'<option value="0.028">PUR 0,028 W/mK</option>' +
		'<option value="0.025">PUR 0,025 W/mK</option>' +
		'<option value="0.024">PUR 0,024 W/mK</option>' +
		'<option value="0.022">PUR 0,022 W/mK</option>' +
		'</select>' +
		'</div>' +
		'<p class="abstand10"></p>' +
		'<h2 class="blau">Erforderliche D&auml;mmst&auml;rke berechnen</h2>' +
		'<div>' +
		'<button style="background-color: #dcffb2;" id="calc" onClick="berechnen2()">berechnen</button>' +
		'</div>' +
		'<p></p>' +
		'<div id="ergebnis2"><br /><br /></div>' +
		'<p class="abstand10"></p>' +
		'<p class="abstand10"></p>' +
		'<h2 class="blau">Erreichter U-Wert berechnen</h2>' +
		'<div>' +
		'D&auml;mmung: <input id="d" name="D&auml;mmst&auml;rke in cm" value="16,0" size="10" onChange="berechnen()" /> cm ' +
		'</div>' +
		'<p class="abstand10"></p>' +
		'<div>' +
		'<button style="background-color: #dcffb2;" id="calc" onClick="berechnen()">berechnen</button> ' +
		'</div>' +
		'<p class="abstand10"></p>' +
		'<div id="ergebnis"></div>' +
		'<div style="color: #33ac25;" id="info"></div>';
   }
   
    if ($('#ll55-wrapper').length) {
    	document.getElementById('ll55-wrapper').innerHTML = '<p>Abstandsmass in m eingeben:</p>' +
    	'<input id="abstand" type="number" style="width: 130px"><br />' +
    	'<p>gemessen in cm eingeben:</p>' +
    	'<input id="gemessen" type="number" style="width: 130px"><br />' +
    	'<p>Zu berechnende Stecke in cm:</p>' +
    	'<input id="berechnen" type="number" style="width: 130px"><br />' +
    	'<button type="button" onclick="myFunction()">berechnen</button>' +
    	'<p><a id="ergebnis1">0</a></p>' +
    	'<p><a id="ergebnis2">0</a> m</p>';
	}
	
    if ($('#energie-rechner').length) {
   		document.getElementById('energie-rechner').innerHTML =
		'<h1>Energieverluste eines Bauteils schätzen</h1>' +
		'<p>U-Wert des Bauteils eingeben: ' +
    	'<input id="uwert" type="number" style="width: 130px">' + 
    	'W/(m<sup>2</sup>&middot;K)</p>' +
		'<p>Umrechnungsfaktor (z.B. 66) eingeben: ' +
    	'<input id="klimafaktor" type="number" value="66" style="width: 130px">' + 
    	'(K&middot;kWh)/(W&middot;a)</p>' +    	
    	'<p>Länge des Bauteils eingeben: ' +
        '<input id="laenge" type="number" style="width: 130px">' + 
		'm</p>' +
        '<p>Höhe/Breite des Bauteils eingeben: ' +
        '<input id="hoehe" type="number" style="width: 130px">' + 
		'm</p>' +
    	'<button type="button" onclick="energiecalc()">berechnen</button>' +
       '<p><a id="ergebnis">0</a></p>';
    }
 });