Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
|
@@ -976,22 +976,24 @@ def generate_genesis_prediction_monthly(month, oni_value, year=2025):
|
|
| 976 |
genesis_gpi = gpi_field[max_i, max_j]
|
| 977 |
|
| 978 |
# Determine probability of actual genesis
|
| 979 |
-
|
| 980 |
-
|
| 981 |
-
|
| 982 |
-
|
| 983 |
-
|
| 984 |
-
|
| 985 |
-
|
| 986 |
-
|
| 987 |
-
|
| 988 |
-
|
| 989 |
-
|
| 990 |
-
|
| 991 |
-
|
| 992 |
-
|
| 993 |
-
|
| 994 |
-
|
|
|
|
|
|
|
| 995 |
|
| 996 |
# Generate storm tracks for genesis events
|
| 997 |
storm_predictions = []
|
|
|
|
| 976 |
genesis_gpi = gpi_field[max_i, max_j]
|
| 977 |
|
| 978 |
# Determine probability of actual genesis
|
| 979 |
+
# Probability influenced by ONI to mimic El Niño/La Niña effects
|
| 980 |
+
genesis_prob = np.clip(
|
| 981 |
+
0.3 + genesis_gpi / 4.0 + 0.2 * np.tanh(oni_value), 0, 0.9
|
| 982 |
+
)
|
| 983 |
+
|
| 984 |
+
if np.random.random() < genesis_prob:
|
| 985 |
+
event = {
|
| 986 |
+
'day': day,
|
| 987 |
+
'lat': genesis_lat,
|
| 988 |
+
'lon': genesis_lon,
|
| 989 |
+
'gpi': genesis_gpi,
|
| 990 |
+
'probability': genesis_prob,
|
| 991 |
+
'date': f"{year}-{month:02d}-{day:02d}"
|
| 992 |
+
}
|
| 993 |
+
logging.info(
|
| 994 |
+
f"Genesis on day {day}: lat={genesis_lat:.1f} lon={genesis_lon:.1f} GPI={genesis_gpi:.2f} prob={genesis_prob:.2f}"
|
| 995 |
+
)
|
| 996 |
+
genesis_events.append(event)
|
| 997 |
|
| 998 |
# Generate storm tracks for genesis events
|
| 999 |
storm_predictions = []
|