Boiler Operation Calculator
About this app
A tool to calculate various parameters related to boiler operation.
Boiler Operation Calculator Boiler Operation Calculator
Related apps
Put this on your site
Source
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>Boiler Operation Calculator</title>
<meta name="description" content="A tool to calculate various parameters related to boiler operation.">
<meta name="keywords" content="boiler, operation, calculator, mass flow rate, power output, boiler load, burner load, FGR, NOx conversion, NOx Cal, air flow needed, efficiency">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css" rel="stylesheet"
integrity="sha384-EVSTQN3/azprG1Anm3QDgpJLIm9Nao0Yz1ztcQTwFspd3yD65VohhpuuCOmLASjC" crossorigin="anonymous">
<link href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet">
<script type="text/javascript">
try {
// App Javascript Goes Here. Place your entire script content inside the try block for error handling.
// This will run when the DOM is ready.
document.addEventListener("DOMContentLoaded", function() {
// Boiler Operation Calculator
// Function to get user input
function get_input(parameter_name, unit) {
while (true) {
try {
var value = parseFloat(prompt("Enter " + parameter_name + " (" + unit + "):"));
if (isNaN(value)) {
throw new Error("Invalid input. Please enter a numerical value.");
}
return value;
} catch (error) {
alert(error.message);
}
}
}
// Function to calculate mass flow rate
function calculate_mass_flow_rate(volume_flow_rate, density_of_gas) {
return volume_flow_rate * density_of_gas;
}
// Function to calculate power output
function calculate_power_output(mass_flow_rate, calorific_value, conversion_factor) {
return mass_flow_rate * calorific_value * conversion_factor;
}
// Function to calculate boiler load
function calculate_boiler_load(steam_load, boiler_design_steam_load) {
return (steam_load / boiler_design_steam_load) * 100;
}
// Function to calculate burner load
function calculate_burner_load(burner_maximum_power, burner_power) {
return burner_maximum_power * (burner_power / 100);
}
// Function to calculate FGR
function calculate_fgr(air_o2, wb_o2, stack_o2) {
return ((air_o2 - wb_o2) / (wb_o2 - stack_o2)) * 100 / 1.06;
}
// Function to calculate NOx conversion
function calculate_nox_conversion(raw_nox) {
return raw_nox * 2.05;
}
// Function to calculate NOx Cal
function calculate_nox_cal(nox_conversion, o2_ref) {
return nox_conversion * 17.9 / (20.9 - o2_ref);
}
// Function to calculate air flow needed
function calculate_air_flow_needed(gas, excess_air, moles) {
return gas * moles * excess_air;
}
// Function to calculate efficiency
function calculate_efficiency(co2, max_co2) {
return (co2 / max_co2) * 100;
}
// Function to display result
function show_result(result_description, value, unit) {
var resultContainer = document.createElement("p");
resultContainer.innerHTML = "<strong>****** " + result_description + ": </strong>" + value + " " + unit + " ******";
document.getElementById("result-container").appendChild(resultContainer);
}
// Function for main menu
function main_menu() {
var choice = prompt("Boiler Operation Calculator Menu:\n\n1 - Calculate Mass Flow Rate and Power Output\n2 - Calculate Boiler Load\n3 - Calculate Burner Load\n4 - Calculate FGR\n5 - Calculate NOx Conversion and NOx Cal\n6 - Calculate Air Flow Needed\n7 - Calculate Chemical Combustion Efficiency\n0 - Exit\n\nEnter your choice:");
return choice;
}
// Function for the main logic
function main() {
while (true) {
var choice = main_menu();
if (choice === '1') {
while (true) {
var volume_flow_rate = get_input("Volume Flow Rate", "m³/h");
var density_of_gas = get_input("Density of Gas", "kg/m³");
var calorific_value = get_input("Calorific Value", "MJ/kg");
var conversion_factor = 0.000277777777777778;
var mass_flow_rate = calculate_mass_flow_rate(volume_flow_rate, density_of_gas);
var power_output = calculate_power_output(mass_flow_rate, calorific_value, conversion_factor);
show_result("Mass Flow Rate", mass_flow_rate, "kg/h");
show_result("Power Output", power_output, "MW");
if (prompt("Calculate again? (yes/no):").toLowerCase() !== 'yes') {
break;
}
}
} else if (choice === '2') {
while (true) {
var steam_load = get_input("Steam Load", "T/H");
var boiler_design_steam_load = get_input("Boiler Design Steam Load", "T/H");
var boiler_load = calculate_boiler_load(steam_load, boiler_design_steam_load);
show_result("Boiler Load", boiler_load, "%");
if (prompt("Calculate again? (yes/no):").toLowerCase() !== 'yes') {
break;
}
}
} else if (choice === '3') {
while (true) {
var burner_maximum_power = get_input("Burner Maximum Power", "MW");
var burner_power = get_input("Burner Power", "%");
var burner_load = calculate_burner_load(burner_maximum_power, burner_power);
show_result("Burner Load", burner_load, "MW");
if (prompt("Calculate again? (yes/no):").toLowerCase() !== 'yes') {
break;
}
}
} else if (choice === '4') {
while (true) {
var air_o2 = get_input("Air o2", "%");
var wb_o2 = get_input("WB o2", "%");
var stack_o2 = get_input("Stack o2", "%");
var fgr = calculate_fgr(air_o2, wb_o2, stack_o2);
show_result("FGR", fgr, "%");
if (prompt("Calculate again? (yes/no):").toLowerCase() !== 'yes') {
break;
}
}
} else if (choice === '5') {
while (true) {
var raw_nox = get_input("Raw NOx", "ppm");
var o2_ref = get_input("o2 Ref", "%");
var nox_conversion = calculate_nox_conversion(raw_nox);
var nox_cal = calculate_nox_cal(nox_conversion, o2_ref);
show_result("NOx Conversion", nox_conversion, "mg/Nm³");
show_result("NOx Cal", nox_cal, "mg/Nm³");
if (prompt("Calculate again? (yes/no):").toLowerCase() !== 'yes') {
break;
}
}
} else if (choice === '6') {
while (true) {
var gas = get_input("Gas", "m³/h");
var excess_air = get_input("Excess Air", "%");
var moles = get_input("Moles", "law");
var air_flow_needed = calculate_air_flow_needed(gas, excess_air, moles);
show_result("Air Flow Needed", air_flow_needed, "m³/h");
if (prompt("Calculate again? (yes/no):").toLowerCase() !== 'yes') {
break;
}
}
} else if (choice === '7') {
while (true) {
var max_co2 = get_input("Max Co2", "%");
var co2 = get_input("Co2", "%");
var efficiency = calculate_efficiency(co2, max_co2);
show_result("Chemical Combustion Efficiency", efficiency, "%");
if (prompt("Calculate again? (yes/no):").toLowerCase() !== 'yes') {
break;
}
}
} else if (choice === '0') {
alert("Exiting the program.");
break;
} else {
alert("Invalid choice. Please try again.");
}
}
}
// Run the main logic
main();
});
} catch (error) {
// This will throw the error to the parent window.
throw error;
}
</script>
<style>
/* App CSS Goes Here */
#result-container {
margin-top: 20px;
}
</style>
</head>
<body>
<div id="main-container" class="container">
<h1>Boiler Operation Calculator</h1>
<div id="result-container"></div>
</div>
</body>
</html>
NEW APPS
These are apps made by the community!