// Definition der function gitterrostberechnung()
function gitterrostberechnung() {

	// Variabeln:
	var atb;
	var vorhw;
	var vorhi;
	var eDfp;
	var maxfp;
	var maxdurchb1;
	var maxdurchb2;
	var maxdurchb;
	var maxBm; 
	var Ivorh;
	var Fv;
	var n;
	var Mmax;
	var Wxvorh;
	var f;
	var Fp;
	var Mmax2;
	var QBleg2;
	var Wxvorh2;
	var n2;
	var h;
	// Konstante:
	var a = 0.9; 	
	var d = 4; 		
	var e = 21000; 	 
	var maxo = 24;
	var QBleg = 160; // Verteilte Last 16000 N/cm²
	var v = 0.9;    // Abminderungsfaktor für verteilte Last
	var A = 1000000; 	// Fläche cm² für verteilte Last
	var E = 210000; // Elastizitätsmodul für Durchbiegung(f)
	var v2 = 0.9; 	// Abminderungsfaktor für Punktlast
	var QBleg2 = 160; // Punktlast 160 N/mm²

	// Ausgabe der eingegebenen Daten
	var t 	= 3.33;
	var bQ 	= window.document.berechnung.bQ.value; // Belastungsbreite (bQ) in Querstabrichtung
	var bT 	= window.document.berechnung.bT.value; // Belastungsbreite (bT) in Tragstabrichtung
	var h1 	= window.document.berechnung.h1.value; // Tragstabhöhe (h1 = h) bei Tragstabstärke (b) 2-3mm
	var h2  = window.document.berechnung.h2.value; // Tragstabhöhe (h2 = h) bei Tragstabstärke (b) 4-5mm
	var b 	= window.document.berechnung.b.value; // Tragstabstärke (b)
	var L 	= window.document.berechnung.L.value; // lichte Stützweite (L)

	// Setzt die Variabel h(Tragstabhöhe) und dem entsprechend die Variabel m(mittragende Stäbe)
	switch(b) {
		case "2" :
		case "3" :
	
		if (h1 == 20) {var m = 3.33};
		if (h1 == 25) {var m = 3.25};
		if (h1 == 30) {var m = 3.17};
		if (h1 == 35) {var m = 3.08};
		if (h1 == 40) {var m = 3.00};
		if (h1 == 45) {var m = 2.92};
		if (h1 == 50) {var m = 2.83};
		if (h1 == 60) {var m = 2.67};
		if (h1 == 70) {var m = 2.50};
		h = h1;
	    break;
		
		case "4" :
		case "5" :
		
		if (h2 == 25) {var m = 2.98};
		if (h2 == 30) {var m = 2.90};
		if (h2 == 35) {var m = 2.82};
		if (h2 == 40) {var m = 2.75};
		if (h2 == 45) {var m = 2.67};
 		if (h2 == 50) {var m = 2.60};
		if (h2 == 60) {var m = 2.67};
		if (h2 == 70) {var m = 2.45};
		if (h2 == 80) {var m = 2.13};
		if (h2 == 90) {var m = 1.99};
		if (h2 == 100) {var m = 1.83};
		if (h2 == 110) {var m = 1.66};
		if (h2 == 120) {var m = 1.53};
	    h = h2;
		break;
 	}

	// Setzt die Variabel tls(Tragstabteilung)
	if (b == 2)	{var tls = 33}; 
	if (b == 3)	{var tls = 33}; 
	if (b == 4)	{var tls = 36}; 
	if (b == 5)	{var tls = 36}; 
	
	// Formel Bezeichnungen --------------
	// Formel_1: Tragstäbe
	// Formel_2: Widerstandsmoment
	// Formel_3: Trägheitsmoment
	// Formel_4: Maximale Einzellast
	// Formel_5: Maximale Durchbiegung
	// Formel_6: Einzellast
	// Formel_7: Maximale Biegemoment
	// Formel_8: Spannung
	// Formel_9: verteilte Last
	// Formel_10: Punktlast
	// -----------------------------------

	// Formel_1 Tragstäbe
		atb = (bQ / t) + m;
	// Formel_1 Tragstäbe


	// Formel_2 Wiederstandsmoment 
		vorhw = (b * Math.pow(h,2) / 6) * atb * a;
	// Formel_2 Wiederstandsmoment


	// Formel_3 Trägheitsmoment
		vorhi = b * Math.pow(h,3) / 12;
	// Formel_3 Trägheitsmoment


	// Formel_4 Verteilte Last
		maxfp = (4 * (maxo * vorhw)) / (L- (bT / 2)) * 100;
	// Formel_4 Verteilte Last
	

	// Formel_6 Einzellast
		eDfp = (((d / 10) * (384 * e * vorhi)) / ((8 * Math.pow(L,3)) - (4 * L * Math.pow(bT,2)) + (Math.pow(bT,3)))) * 100;
	// Formel_6 Einzellast


	// Formel_7 Maximale Biegemoment (Wird momentan nicht mehr verwendet)
		maxBm = (eDfp / 100 * (L - (bT/2))) / 4;
	// Formel_7 Maximale Biegemoment (Wird momentan nicht mehr verwendet)
	
	
	// Formel_9 Verteilte Last
		// Zwischenformeln:
		n = A / (L * tls);
		Wxvorh = ((b * Math.pow(h,2))/6) * n * v;		
		Mmax = QBleg * Wxvorh;
	
		// Hauptformel:
		Fv = (Mmax * 8) / L;
	// Formel_9 Verteilte Last
			
			
	// Formel_10 Punktlast	
		n2 = ((bQ/tls)+m).toFixed(3);
		Wxvorh2	= (((b*Math.pow(h,2))/6)*n2*v);
		Mmax2 = (QBleg2*Wxvorh2);
	   	Fp = (Mmax2*4) / (L-(bT/2));
	// Formel_10 Punktlast

	// Formel_5 gleichmäßig verteilte Last -> dazugehörigen Durchbiegung
		maxdurchb1 = 5*Fv*Math.pow(L,3);
		maxdurchb2 = 384 * e * vorhi*n*v;
		maxdurchb = (maxdurchb1 / maxdurchb2);
	// Formel_5 gleichmäßig verteilte Last -> dazugehörigen Durchbiegung

	// Formel_5 Durchbiegung
		Ivorh = ((b * Math.pow(h,3)) / 12)*n2;
		var f1 = (Fp) / (384 * E * Ivorh);
		var f2 = (8*Math.pow(L,3))-(4*L*Math.pow(bT,2))+(Math.pow(bT,3));
		f = f1*f2;
	// Formel_5 Durchbiegung


	// Ausgabe der Ergebnisse in den entsprechenden Felder
	window.document.berechnung.maxdurchb.value 		= (maxdurchb/10).toFixed(2); // Ergebnis((Aufgerundet)*10)/10 der dazugehörigen Durchbiegung
	window.document.berechnung.Fv.value				= Math.round(Fv);		// Ergebnis(Aufgerundet) der verteilten Last
	window.document.berechnung.f.value				= f.toFixed(2);			// Ergebnis(2 Nachkommastellen) der Durchbiegung
	window.document.berechnung.Fp.value				= Math.round(Fp);					// Ergebnis der Punktlast
	
	
	// Kontroll Fenster (Bitte jede neue Variabel plus Funktion eintragen!
	 //alert(" b: " + b + " h: " + h + " L: " + L);
	 //alert("m " + m + "bQ" + bQ + "tls " + tls );
	 //alert("n2: " + n2 + " Wxvorh2: " + Wxvorh2 + "Mmax2 " + Mmax2 + "Fp" +  Fp); // Kontrolle
	 //alert("Ivorh: " + Ivorh + " b: " + b + "  h: " + h + "  n2: " + n2 + " f: " + f + "  Fp: " + Fp + "  E " + E);
}; 
