File size: 2,905 Bytes
8adcd3e
 
 
 
 
3100307
 
 
8adcd3e
 
 
 
 
 
 
 
 
 
 
 
 
 
645d823
 
 
 
8adcd3e
 
aa2ff2c
8adcd3e
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
645d823
 
 
32745b6
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
import gradio as gr

def convert_temperature(value, unit):
    return value if unit == "K" else (value + 273.15 if unit == "°C" else (value - 32) * 5/9 + 273.15)

def convert_temp_c(value, unit):
    return value if unit == "°C" else (value - 32) * 5/9

def convert_wind_speed(value, unit):
    return value if unit == "m/s" else (value / 3.6 if unit == "km/h" else value * 0.44704)

def convert_elevation(value, unit):
    return value if unit == "m" else value * 0.3048

def convert_rainfall(val, unit):
    return val if unit == "mm" else val * 25.4

def convert_elevation(val, unit):
    return val if unit == "m" else val * 0.3048

def convert_distance(val, unit):
    return val if unit == "m" else val * 0.3048

def convert_rainfall_intensity(val, unit):
    return val if unit == "mm/hr" else val * 25.4
                                
                                
def update_temp_slider(unit):
    if unit == "K":
        return gr.update(minimum=280, maximum=330, value=300, label="Temperature (K)")
    elif unit == "°C":
        return gr.update(minimum=5, maximum=60, value=25, label="Temperature (°C)")
    elif unit == "°F":
        return gr.update(minimum=40, maximum=140, value=80, label="Temperature (°F)")

def update_wind_slider(unit):
    if unit == "m/s":
        return gr.update(minimum=0, maximum=50, value=10, label="Wind Speed (m/s)")
    elif unit == "km/h":
        return gr.update(minimum=0, maximum=180, value=36, label="Wind Speed (km/h)")
    elif unit == "mp/h":
        return gr.update(minimum=0, maximum=110, value=22, label="Wind Speed (mp/h)")

def update_elevation_slider(unit):
    if unit == "m":
        return gr.update(minimum=0, maximum=3000, value=500, label="Elevation (m)")
    elif unit == "ft":
        return gr.update(minimum=0, maximum=10000, value=1600, label="Elevation (ft)")

def update_flood_elevation_slider(unit):
    if unit == "m":
        return gr.update(minimum=0, maximum=20, value=5, label="Relative Elevation (m)")
    elif unit == "ft":
        return gr.update(minimum=0, maximum=60, value=15, label="Relative Elevation (ft)")
    
def update_flood_distance_slider(unit):
    if unit == "m":
        return gr.update(minimum=0, maximum=2000, value=100, label="Distance from River (m)")
    elif unit == "ft":
        return gr.update(minimum=0, maximum=6000, value=300, label="Distance from River (ft)")

def update_flood_rainfall_slider(unit):
    if unit == "mm":
        return gr.update(minimum=0, maximum=500, value=25, label="Rainfall (mm)")
    elif unit == "in":
        return gr.update(minimum=0, maximum=20, value=1, label="Rainfall (in)")

def update_rain_slider(unit):
    if unit == "in/hr":
        return gr.update(minimum=0, maximum=10, value=0.5, label="Rainfall Intensity (in/hr)")
    elif unit == "mm/hr":
        return gr.update(minimum=0, maximum=150, value=12, label="Rainfall Intensity (mm/hr)")