示例#1
0
 private void LoadSetupFiles(CovidScenario scenario)
 {
     Wards                      = WardRecord.LoadFromCsv(scenario.GeographyFile);
     AgeDistributions           = AgeDistributionCollection.LoadFromCsv(scenario.AgeDistributionsFile);
     HouseHoldSizeDistributions = HouseSizeDistributionCollection.LoadFromCsv(scenario.HouseHoldSizesFile);
     HomeContactMatrix          = ContactMatrix.LoadFromCsv(scenario.HomeContactMatrixFile);
     OtherContactMatrix         = ContactMatrix.LoadFromCsv(scenario.OtherContactMatrixFile);
     TravelMatrix               = TravelMatrix.LoadFromCsv(scenario.TravelMatrixFile);
 }
        public static HouseSizeDistributionCollection LoadFromCsv(string fileName)
        {
            var sizeRecords      = LoadSizeRecords(fileName);
            var maxHouseHoldSize = sizeRecords.Max(r => r.Size);

            var householdSizes = new HouseSizeDistributionCollection();

            foreach (var sizeRec in sizeRecords)
            {
                if (!householdSizes.ContainsKey(sizeRec.WardId))
                {
                    householdSizes.Add(sizeRec.WardId, new WardHouseSizeDistribution(maxHouseHoldSize));
                }
                var wardHouseSizeDist = householdSizes[sizeRec.WardId];
                wardHouseSizeDist[sizeRec.Size] = sizeRec.NoOfHouseholds;
            }

            Log.Verbose($"Loaded household sizes from {fileName}");

            return(householdSizes);
        }