		function recalculate() {
			var unit_select = document.getElementById("unit");
			var unit_value = unit_select.value;
			
			if(unit_value == "Imperial") {
				set_labels_imperial();
			}else{
				set_labels_metric();
			}
			
			set_values();
		}
		
		function remove_all_nodes(id) {
			var element = document.getElementById(id);
			
			if(element != null && element.hasChildNodes()) {
				while(element.childNodes.length >= 1) {
					element.removeChild(element.firstChild);
				}
			}
		}
		
		
		
		
		
		
		function set_values() {
			var unit_select = document.getElementById("unit");
			var unit_value = unit_select.value;
	
			var valve_size_select = document.getElementById("valve_size");
			var valve_size_value = valve_size_select.value;
			
			var air_per_pulse;
			if(valve_size_value == "1")  {
				air_per_pulse = 1;
			}else if(valve_size_value == "2") {
				air_per_pulse = 1.7;
			}else if(valve_size_value == "3") {
				air_per_pulse = 4.5;
			}else if(valve_size_value == "4") {
				air_per_pulse = 5.5;
			}else if(valve_size_value == "5") {
				air_per_pulse = 8.9;
			}else if(valve_size_value == "6") {
				air_per_pulse = 12;
			}
	
			if(unit_value == "Metric") {
				air_per_pulse = air_per_pulse * 0.02831685;
			}
			
			var air_per_pulse_div = document.getElementById('air_per_pulse');
			air_per_pulse_rounded = round_to_3_decimals(air_per_pulse);
			remove_all_nodes('air_per_pulse');
			var newdiv = document.createElement("div");
			newdiv.innerHTML = air_per_pulse_rounded;
			air_per_pulse_div.appendChild(newdiv);
			
			var unit_cost_input = document.getElementById("unit_cost");
			var unit_cost = unit_cost_input.value;
			var unit_cost_display = add_zero_if_decimal(parseFloat(unit_cost));
			
			var unit_cost_fixed = document.getElementById("fan_unit_cost");
			remove_all_nodes('fan_unit_cost');
			var newdiv = document.createElement("div");
			newdiv.innerHTML = unit_cost_display;
			unit_cost_fixed.appendChild(newdiv);
			
			unit_cost_input.value = unit_cost_display;
			
			var hours_per_day_input = document.getElementById("hours_per_day");
			var hours_per_day = hours_per_day_input.value;
			
			var hours_per_day_fixed = document.getElementById("fan_hours_per_day");
			remove_all_nodes('fan_hours_per_day');
			var newdiv = document.createElement("div");
			newdiv.innerHTML = hours_per_day;
			hours_per_day_fixed.appendChild(newdiv);
			
			hours_per_day_input.value = hours_per_day;
			
			var days_per_year_input = document.getElementById("days_per_year");
			var days_per_year = days_per_year_input.value;
			
			var days_per_year_fixed = document.getElementById("fan_days_per_year");
			remove_all_nodes('fan_days_per_year');
			var newdiv = document.createElement("div");
			newdiv.innerHTML = days_per_year;
			days_per_year_fixed.appendChild(newdiv);
			
			days_per_year_input.value = days_per_year;
			
			if(unit_value == "Imperial") {
				var hp_per = .25;
			}else if(unit_value == "Metric") {
				var hp_per = 0.25/0.02831685;
			}
			
			var kw_per_hp = .746;
			
			var motor_efficiency = .9;
			
			var current_pressure_input = document.getElementById("current_pressure");
			var current_pressure = current_pressure_input.value;
			
			if(unit_value == "Imperial") {
				var actual_per_1 = air_per_pulse * (current_pressure / 100);
			}else if(unit_value == "Metric") {
				var actual_per_1 = air_per_pulse * (current_pressure / 6.894757);
			}
			
			var firing_simultaneously_input = document.getElementById("firing_simultaneously");
			var firing_simultaneously = firing_simultaneously_input.value;
			
			var pulse_frequency_input = document.getElementById("pulse_frequency");
			var pulse_frequency = pulse_frequency_input.value;
			
			var air_cost_before = (actual_per_1 * firing_simultaneously) * (60 / pulse_frequency) * hp_per * kw_per_hp * (1 / motor_efficiency) * unit_cost * hours_per_day * days_per_year;
			var air_cost_before_display = Math.round(parseFloat(air_cost_before));
			air_cost_before_display = "$" + addCommas(air_cost_before_display);
			
			var air_previous_cost_div = document.getElementById('air_previous_cost');
			remove_all_nodes('air_previous_cost');
			var newdiv = document.createElement("div");
			newdiv.innerHTML = air_cost_before_display;
			air_previous_cost_div.appendChild(newdiv);
			
			if(unit_value == "Imperial") {
				var current_header = 60;
			}else if(unit_value == "Metric") {
				var current_header = 4.136854;
			}
			
			if(unit_value == "Imperial") {
				var actual_per_2 = air_per_pulse * (current_header / 100);
			}else if(unit_value == "Metric") {
				var actual_per_2 = air_per_pulse * (current_header / 6.894757);
			}
			
			var firing_simultaneously = 2;
			
			var pulse_frequency = 5;
			
			var air_cost_after = (actual_per_2 * firing_simultaneously) * (60 / pulse_frequency) * hp_per * kw_per_hp * (1 / motor_efficiency) * unit_cost * hours_per_day * days_per_year;
			var air_cost_after_display = Math.round(parseFloat(air_cost_after));
			air_cost_after_display = "$" + addCommas(air_cost_after_display);
			
			var air_pulsepleat_cost_div = document.getElementById('air_pulsepleat_cost');
			remove_all_nodes('air_pulsepleat_cost');
			var newdiv = document.createElement("div");
			newdiv.innerHTML = air_cost_after_display;
			air_pulsepleat_cost_div.appendChild(newdiv);
			
			var air_volume_input = document.getElementById("air_volume");
			var air_volume = air_volume_input.value;
			
			var orig_sys_resistance_input = document.getElementById("orig_sys_resistance");
			var orig_sys_resistance = orig_sys_resistance_input.value;
			
			var fan_efficiency = .7;
			
			var motor_efficiency = .9;
			
			var drive_efficiency = .99;
			
			if(unit_value == "Imperial") {
				var energy_cost_before = air_volume * orig_sys_resistance * 0.746 * unit_cost * hours_per_day * days_per_year / (6356 * (fan_efficiency * motor_efficiency * drive_efficiency));
			}else if(unit_value == "Metric") {
				var energy_cost_before = air_volume * orig_sys_resistance * 0.746 * unit_cost * hours_per_day * days_per_year / (6356 * (fan_efficiency * motor_efficiency * drive_efficiency)) * 0.5885/25.4;
			}
			var energy_cost_before_display = Math.round(parseFloat(energy_cost_before));
			energy_cost_before_display = "$" + addCommas(energy_cost_before_display);
			
			var fan_previous_cost_div = document.getElementById('fan_previous_cost');
			remove_all_nodes('fan_previous_cost');
			var newdiv = document.createElement("div");
			newdiv.innerHTML = energy_cost_before_display;
			fan_previous_cost_div.appendChild(newdiv);
			
			if(unit_value == "Imperial") {
				var modified_sys_resistance = orig_sys_resistance - 2;
			}else if(unit_value == "Metric") {
				var modified_sys_resistance = orig_sys_resistance - (2 * 25.4);
			}
			
			if(unit_value == "Imperial") {
				var energy_cost_after = air_volume * modified_sys_resistance * 0.746 * unit_cost * hours_per_day * days_per_year / (6356 * (fan_efficiency * motor_efficiency * drive_efficiency));
			}else if(unit_value == "Metric") {
				var energy_cost_after = air_volume * modified_sys_resistance * 0.746 * unit_cost * hours_per_day * days_per_year / (6356 * (fan_efficiency * motor_efficiency * drive_efficiency)) * 0.5885/25.4;
			}
			var energy_cost_after_display = Math.round(parseFloat(energy_cost_after));
			energy_cost_after_display = "$" + addCommas(energy_cost_after_display);
			
			var fan_pulsepleat_cost_div = document.getElementById('fan_pulsepleat_cost');
			remove_all_nodes('fan_pulsepleat_cost');
			var newdiv = document.createElement("div");
			newdiv.innerHTML = energy_cost_after_display;
			fan_pulsepleat_cost_div.appendChild(newdiv);
			
			
			
			var total_air_savings = Math.round(air_cost_before) - Math.round(air_cost_after);
			var total_air_savings_display = Math.round(parseFloat(total_air_savings));
			total_air_savings_display = "$" + addCommas(total_air_savings_display) + "**";
			
			var total_air_savings_div = document.getElementById('total_air_savings_something');
			remove_all_nodes('total_air_savings_something');
			var newdiv = document.createTextNode(total_air_savings_display);
			total_air_savings_div.appendChild(newdiv);
			
			var total_air_savings_hidden = document.getElementById('total_air_savings_hidden');
			total_air_savings_hidden.value = total_air_savings_display;
			
			var total_energy_savings = Math.round(energy_cost_before) - Math.round(energy_cost_after);
			var total_energy_savings_display = Math.round(parseFloat(total_energy_savings));
			total_energy_savings_display = "$" + addCommas(total_energy_savings_display) + "**";
			
			var total_fan_savings_div = document.getElementById('total_fan_savings_something');
			remove_all_nodes('total_fan_savings_something');
			var newdiv = document.createElement("div");
			newdiv.innerHTML = total_energy_savings_display;
			total_fan_savings_div.appendChild(newdiv);
			
			var total_fan_savings_hidden = document.getElementById('total_fan_savings_hidden');
			total_fan_savings_hidden.value = total_energy_savings_display;
			
			var total_savings = Math.round(total_air_savings) + Math.round(total_energy_savings);
			var total_savings_display = Math.round(parseFloat(total_savings));
			total_savings_display = "$" + addCommas(total_savings_display) + "**";
			
			var total_overall_savings_div = document.getElementById('total_overall_savings_something');
			remove_all_nodes('total_overall_savings_something');
			var newdiv = document.createElement("div");
			newdiv.innerHTML = total_savings_display;
			total_overall_savings_div.appendChild(newdiv);
			
			var total_overall_savings_hidden = document.getElementById('total_overall_savings_hidden');
			total_overall_savings_hidden.value = total_savings_display;
		}
		
		function go_to_form() {
			var total_air_savings_div = document.getElementById('total_air_savings');
			var total_air_savings = total_air_savings_div.innerHTML;
			
			var total_fan_savings_div = document.getElementById('total_fan_savings');
			var total_fan_savings = total_fan_savings_div.innerHTML;
			
			var total_overall_savings_div = document.getElementById('total_overall_savings');
			var total_overall_savings = total_overall_savings_div.innerHTML;
			
			window.location = "form.php?total_air_savings=" + total_air_savings + "&total_fan_savings=" + total_fan_savings + "&total_overall_savings=" + total_overall_savings;
		}
		
		
		
		
		
		
		
		
		
		
		
		
		
		function set_labels_imperial() {
			var air_per_pulse_label = document.getElementById('air_per_pulse_label');
			remove_all_nodes('air_per_pulse_label');
			var newdiv = document.createElement("div");
			newdiv.innerHTML = "Actual SCF per Pulse";
			air_per_pulse_label.appendChild(newdiv);
			
			var current_pressure_label = document.getElementById('current_pressure_label');
			remove_all_nodes('current_pressure_label');
			var newdiv = document.createElement("div");
			newdiv.innerHTML = "Current Pressure in Air Header (psi)*";
			current_pressure_label.appendChild(newdiv);
			
			
			
			var air_volume_label = document.getElementById('air_volume_label');
			remove_all_nodes('air_volume_label');
			var newdiv = document.createElement("div");
			newdiv.innerHTML = "Air Volume (ACFM)*";
			air_volume_label.appendChild(newdiv);
			
			var orig_sys_resistance_label = document.getElementById('orig_sys_resistance_label');
			remove_all_nodes('orig_sys_resistance_label');
			var newdiv = document.createElement("div");
			newdiv.innerHTML = "Original System Resistance (W.C.)*";
			orig_sys_resistance_label.appendChild(newdiv);
		}
		
		function set_labels_metric() {
			var air_per_pulse_label = document.getElementById('air_per_pulse_label');
			remove_all_nodes('air_per_pulse_label');
			var newdiv = document.createElement("div");
			newdiv.innerHTML = "Actual m<sup>3<\/sup>/hr per Pulse";
			air_per_pulse_label.appendChild(newdiv);
			
			var current_pressure_label = document.getElementById('current_pressure_label');
			remove_all_nodes('current_pressure_label');
			var newdiv = document.createElement("div");
			newdiv.innerHTML = "Current Pressure in Air Header (bar)*";
			current_pressure_label.appendChild(newdiv);
			
			
			
			
			var air_volume_label = document.getElementById('air_volume_label');
			remove_all_nodes('air_volume_label');
			var newdiv = document.createElement("div");
			newdiv.innerHTML = "Air Volume (Am<sup>3<\/sup>/hr)*";
			air_volume_label.appendChild(newdiv);
			
			var orig_sys_resistance_label = document.getElementById('orig_sys_resistance_label');
			remove_all_nodes('orig_sys_resistance_label');
			var newdiv = document.createElement("div");
			newdiv.innerHTML = "Original System Resistance (mm W.C.)*";
			orig_sys_resistance_label.appendChild(newdiv);
		}
		
		
		
		
		
		
		
		
		
		
		
		
		function round_to_2_decimals(num) {
			return Math.round(num*100)/100;
		}
		
		function round_to_3_decimals(num) {
			return Math.round(num*1000)/1000;
		}
		
		function add_zero_if_decimal(num) {
			/*if(num < 1 && num > 0) {
				return "0" + num;
			}else if(num < 0 && num > -1) {
				
			}*/
			
			if(num < 1 && num > 0) {
				num = num + "";
				
				if(num.substr(0, 1) != "0") {
					num = "0" + num;
				}
				
				if(num.length < 4) {
					num = num + "0";
				}
			}
			
			return num;
		}
		
		function remove_all_nodes(id) {
			var element = document.getElementById(id);
			
			if(element != null && element.hasChildNodes()) {
				while(element.childNodes.length >= 1) {
					element.removeChild(element.firstChild);       
				} 
			}
		}
		
		function addCommas(nStr) {
			nStr += '';
			x = nStr.split('.');
			x1 = x[0];
			x2 = x.length > 1 ? '.' + x[1] : '';
			var rgx = /(\d+)(\d{3})/;
			while (rgx.test(x1)) {
				x1 = x1.replace(rgx, '$1' + ',' + '$2');
			}
			return x1 + x2;
		}