Skip to content

Commit

Permalink
SCHED-417: Change weather conditions to stable ones
Browse files Browse the repository at this point in the history
  • Loading branch information
Sergio committed Jul 31, 2023
1 parent 78815ea commit 6db2340
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 3 deletions.
8 changes: 7 additions & 1 deletion scheduler/core/components/selector/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
from lucupy.minimodel import (ALL_SITES, AndGroup, Conditions, Group, Observation, ObservationClass, ObservationStatus,
Program, ProgramID, ROOT_GROUP_ID, Site, TooType, NightIndex, NightIndices, UniqueGroupID,
Variant)
from lucupy.minimodel import CloudCover, ImageQuality

from scheduler.core.calculations import GroupData, GroupDataMap, GroupInfo, ProgramCalculations, ProgramInfo, Selection
from scheduler.core.components.base import SchedulerComponent
Expand Down Expand Up @@ -312,8 +313,13 @@ def _calculate_observation_group(self,
start_time = night_events.times[night_idx][0]
end_time = night_events.times[night_idx][-1]
actual_conditions = self.collector.sources.origin.env.get_actual_conditions_variant(obs.site,
start_time,
start_time,
end_time)
actual_conditions = Variant(iq=np.array([ImageQuality.IQ70 for i in range(len(actual_conditions.cc))]),
cc=np.array([CloudCover.CC50 for i in range(len(actual_conditions.cc))]),
wind_dir=actual_conditions.wind_dir,
wind_spd=actual_conditions.wind_spd
)

# Make sure that we have conditions for every time slot.
variant_length = len(actual_conditions.cc)
Expand Down
4 changes: 2 additions & 2 deletions scheduler/services/environment/ocs_env_service.py
Original file line number Diff line number Diff line change
Expand Up @@ -91,9 +91,9 @@ def get_actual_conditions_variant(self,
filtered_df = time_filtered_df.iloc[::self._time_slot_length]

iq_array = np.array([ImageQuality(iq) for iq in filtered_df[OcsEnvService._iq_band_col].values],
dtype=CloudCover)
cc_array = np.array([CloudCover(cc) for cc in filtered_df[OcsEnvService._cc_band_col].values],
dtype=ImageQuality)
cc_array = np.array([CloudCover(cc) for cc in filtered_df[OcsEnvService._cc_band_col].values],
dtype=CloudCover)

# TODO Performance: Remove units and just use numpy arrays?
wind_dir_array = Angle(filtered_df[OcsEnvService._wind_dir_col].values, unit=u.deg)
Expand Down

0 comments on commit 6db2340

Please sign in to comment.