Skip to content

Commit

Permalink
Fix zone interval for external demand
Browse files Browse the repository at this point in the history
  • Loading branch information
zptro committed Oct 17, 2022
1 parent 2d841e2 commit e1bc114
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 15 deletions.
29 changes: 15 additions & 14 deletions Scripts/datahandling/zonedata.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,29 +13,30 @@ class ZoneData:
def __init__(self, data_dir, zone_numbers):
self._values = {}
self.share = ShareChecker(self)
zone_numbers = numpy.array(zone_numbers)
all_zone_numbers = numpy.array(zone_numbers)
self.all_zone_numbers = all_zone_numbers
surrounding = param.areas["surrounding"]
peripheral = param.areas["peripheral"]
external = param.areas["external"]
first_extra = numpy.searchsorted(zone_numbers, peripheral[1], "right")
self.zone_numbers = zone_numbers[:first_extra]
self.zone_numbers = all_zone_numbers[:all_zone_numbers.searchsorted(
peripheral[1], "right")]
Zone.counter = 0
self.zones = {number: Zone(number) for number in self.zone_numbers}
self.first_not_helsinki_zone = numpy.searchsorted(
self.zone_numbers, param.municipalities["Espoo"][0])
self.first_surrounding_zone = numpy.searchsorted(
self.zone_numbers, surrounding[0])
first_peripheral = numpy.searchsorted(self.zone_numbers, peripheral[0])
self.first_not_helsinki_zone = self.zone_numbers.searchsorted(
param.municipalities["Espoo"][0])
self.first_surrounding_zone = self.zone_numbers.searchsorted(
surrounding[0])
first_peripheral = self.zone_numbers.searchsorted(peripheral[0])
self.first_peripheral_zone = first_peripheral
first_external = numpy.searchsorted(zone_numbers, external[0])
self.first_external_zone = first_external
external_zones = zone_numbers[first_external:]
popdata = read_csv_file(data_dir, ".pop", self.zone_numbers, float)
workdata = read_csv_file(data_dir, ".wrk", self.zone_numbers, float)
schooldata = read_csv_file(data_dir, ".edu", self.zone_numbers, float)
landdata = read_csv_file(data_dir, ".lnd", self.zone_numbers, float)
parkdata = read_csv_file(data_dir, ".prk", self.zone_numbers, float)
self.externalgrowth = read_csv_file(data_dir, ".ext", external_zones, float)
self.externalgrowth = read_csv_file(
data_dir, ".ext",
all_zone_numbers[all_zone_numbers.searchsorted(external[0]):],
float)
transit = read_csv_file(data_dir, ".tco")
try:
transit["fare"] = transit["fare"].astype(
Expand Down Expand Up @@ -69,8 +70,8 @@ def __init__(self, data_dir, zone_numbers):
+ self["share_age_65-99"])
self.share["share_age_18-99"] = (self["share_age_7-99"]
-self["share_age_7-17"])
self.share["share_female"] = pandas.Series(0.5, zone_numbers)
self.share["share_male"] = pandas.Series(0.5, zone_numbers)
self.share["share_female"] = pandas.Series(0.5, self.zone_numbers)
self.share["share_male"] = pandas.Series(0.5, self.zone_numbers)
self.nr_zones = len(self.zone_numbers)
self["population_density"] = pop / landdata["builtar"]
wp = workdata["total"]
Expand Down
2 changes: 1 addition & 1 deletion Scripts/datatypes/purpose.py
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ def __init__(self, specification, zone_data, resultdata=None):
self.dest = specification["dest"]
self.area = specification["area"]
self.sources = []
zone_numbers = zone_data.zone_numbers
zone_numbers = zone_data.all_zone_numbers
zone_intervals = param.purpose_areas[self.area]
self.bounds = slice(*zone_numbers.searchsorted(
[zone_intervals[0], zone_intervals[-1]]))
Expand Down

0 comments on commit e1bc114

Please sign in to comment.