|
|
""" |
|
|
Main application module for the HVAC Load Calculator. |
|
|
|
|
|
This module provides the main entry point and navigation for the HVAC calculator application. |
|
|
""" |
|
|
|
|
|
import streamlit as st |
|
|
import pandas as pd |
|
|
import matplotlib.pyplot as plt |
|
|
from pathlib import Path |
|
|
import sys |
|
|
import os |
|
|
|
|
|
|
|
|
sys.path.append(os.path.dirname(os.path.abspath(__file__))) |
|
|
|
|
|
|
|
|
from pages.cooling_calculator import cooling_calculator |
|
|
from pages.heating_calculator import heating_calculator |
|
|
from reference_data import ReferenceData |
|
|
from utils.scenario_integration import scenario_comparison_page |
|
|
|
|
|
|
|
|
os.makedirs("scenarios/cooling", exist_ok=True) |
|
|
os.makedirs("scenarios/heating", exist_ok=True) |
|
|
|
|
|
|
|
|
pages = { |
|
|
"cooling_calculator": cooling_calculator, |
|
|
"heating_calculator": heating_calculator, |
|
|
"scenario_comparison": scenario_comparison_page |
|
|
} |
|
|
|
|
|
def main(): |
|
|
""" |
|
|
Main function to run the HVAC Load Calculator application. |
|
|
""" |
|
|
st.set_page_config( |
|
|
page_title="HVAC Load Calculator", |
|
|
page_icon="🏢", |
|
|
layout="wide", |
|
|
initial_sidebar_state="expanded" |
|
|
) |
|
|
|
|
|
st.sidebar.title("HVAC Load Calculator") |
|
|
|
|
|
|
|
|
st.sidebar.markdown(""" |
|
|
**Created by:** Dr. Majed Abuseif |
|
|
|
|
|
This tool was created to facilitate HVAC calculation and understanding for Deakin University students, but has been enhanced to cover wider aspects to allow professionals and energy and HVAC enthusiasts to use it. |
|
|
""") |
|
|
|
|
|
|
|
|
page = st.sidebar.radio( |
|
|
"Select Calculator", |
|
|
["Cooling Load Calculator", "Heating Load Calculator", "Scenario Comparison"] |
|
|
) |
|
|
|
|
|
if page == "Cooling Load Calculator": |
|
|
cooling_calculator() |
|
|
elif page == "Heating Load Calculator": |
|
|
heating_calculator() |
|
|
elif page == "Scenario Comparison": |
|
|
scenario_comparison_page() |
|
|
|
|
|
if __name__ == "__main__": |
|
|
main() |
|
|
|