MuhammadSajid commited on
Commit
9a72859
·
verified ·
1 Parent(s): 8a3954e

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +15 -21
app.py CHANGED
@@ -1,30 +1,24 @@
1
- # app.py
2
- from flask import Flask, request, render_template
3
  import math
4
 
5
- app = Flask(__name__)
 
6
 
7
- @app.route('/')
8
- def index():
9
- return render_template('index.html')
 
10
 
11
- @app.route('/calculate', methods=['POST'])
12
- def calculate():
13
- voltage = float(request.form['voltage'])
14
- current = float(request.form['current'])
15
- real_power = float(request.form['power'])
16
-
17
- apparent_power = voltage * current # in VA
18
  if apparent_power == 0:
19
  reactive_power = 0
20
  else:
21
- reactive_power = math.sqrt(apparent_power**2 - real_power**2) # in VAR
22
 
23
- return render_template('index.html',
24
- voltage=voltage,
25
- current=current,
26
- real_power=real_power,
27
- reactive_power=round(reactive_power, 2))
28
 
29
- if __name__ == '__main__':
30
- app.run(debug=False, use_reloader=False)
 
1
+ import streamlit as st
 
2
  import math
3
 
4
+ # Set the title of the app
5
+ st.title("Reactive Power Compensation Panel")
6
 
7
+ # User input fields for voltage, current, and real power
8
+ voltage = st.number_input("Enter Voltage (V)", min_value=0.0, step=0.1)
9
+ current = st.number_input("Enter Current (A)", min_value=0.0, step=0.1)
10
+ real_power = st.number_input("Enter Real Power (kW)", min_value=0.0, step=0.1)
11
 
12
+ # Calculate the apparent power and reactive power
13
+ if voltage > 0 and current > 0 and real_power >= 0:
14
+ apparent_power = voltage * current # Apparent power in VA
 
 
 
 
15
  if apparent_power == 0:
16
  reactive_power = 0
17
  else:
18
+ reactive_power = math.sqrt(apparent_power**2 - (real_power * 1000)**2) # Reactive power in VAR
19
 
20
+ # Display the results
21
+ st.subheader(f"Calculated Reactive Power: {round(reactive_power, 2)} VAR")
22
+ else:
23
+ st.warning("Please enter valid inputs!")
 
24