File size: 614 Bytes
df27dfb
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
import numpy as np

from convgru_ensemble.utils import normalized_to_rainrate, rainrate_to_normalized


def test_roundtrip_conversion():
    rain = np.array([0.0, 1.0, 5.0, 20.0, 50.0], dtype=np.float32)
    normalized = rainrate_to_normalized(rain)
    recovered = normalized_to_rainrate(normalized)
    np.testing.assert_allclose(recovered, rain, rtol=0.01, atol=0.05)


def test_zero_rain_maps_to_low_normalized():
    rain = np.array([0.0], dtype=np.float32)
    normalized = rainrate_to_normalized(rain)
    # Zero rain should map to approximately -1 (0 dBZ → normalized -1)
    assert normalized[0] < -0.9