@@ -77,10 +77,10 @@ static year_of_weather_data collect_weather_data( unsigned seed )
77
77
// Collect generated weather data for a single year.
78
78
for ( time_point i = begin ; i < end ; i += 1_minutes ) {
79
79
w_point w = wgen.get_weather ( tripoint_abs_ms::zero, i, seed );
80
- int day = to_days<int >( time_past_new_year ( i ) );
80
+ int day = to_days<int >( i - begin );
81
81
int minute = to_minutes<int >( time_past_midnight ( i ) );
82
82
result.temperature [day][minute] = units::to_fahrenheit ( w.temperature );
83
- int hour = to_hours<int >( time_past_new_year ( i ) );
83
+ int hour = to_hours<int >( i - begin );
84
84
*get_weather ().weather_precise = w;
85
85
result.hourly_precip [hour] +=
86
86
precip_mm_per_hour (
@@ -131,8 +131,9 @@ TEST_CASE( "weather_realism", "[weather]" )
131
131
CHECK ( mean_of_ranges <= 25 );
132
132
133
133
// Check that summer and winter temperatures are very different.
134
- size_t summer_idx = data.lows .size () / 4 ;
135
- size_t winter_idx = 5 * data.highs .size () / 6 ;
134
+ // 0 is the start of spring, 1/4 is the start of summer, 1/8 is halfway through
135
+ size_t summer_idx = 3 * data.lows .size () / 8 ;
136
+ size_t winter_idx = 7 * data.highs .size () / 8 ;
136
137
double summer_low = data.lows [summer_idx];
137
138
double winter_high = data.highs [winter_idx];
138
139
{
0 commit comments