1 #ifndef COVIDSIM_PARAM_H_INCLUDED_ 2 #define COVIDSIM_PARAM_H_INCLUDED_ 8 #include "MicroCellPosition.hpp" 46 int AirportKernelType;
47 unsigned int BinFileLen;
48 int DoBin, DoSaveSnapshot, DoLoadSnapshot;
49 double SnapshotSaveTime, SnapshotLoadTime, clP1, clP2, clP3, clP4, clP5, clP6;
54 int NMCP, ncw, nch, DoUTM_coords, nsp, DoSeasonality, DoCorrectAgeDist, DoPartialImmunity;
56 int get_number_of_micro_cells_wide()
const;
57 int get_number_of_micro_cells_high()
const;
62 int DoAdUnits, NumAdunits, DoAdunitBoundaries, AdunitLevel1Divisor, AdunitLevel1Mask, AdunitBitmapDivisor, CountryDivisor;
63 int DoAdunitOutput, DoAdunitBoundaryOutput, DoAdunitDemog, DoCorrectAdunitPop, DoSpecifyPop, AdunitLevel1Lookup[ADUNIT_LOOKUP_SIZE];
64 int DoOutputPlaceDistForOneAdunit, OutputPlaceDistAdunit, OutputDensFile;
65 int DoOneGen, OutputEveryRealisation, BitmapMovieFrame, MaxCorrSample, DoLatent, InfQueuePeakLength, NumThreads, MaxNumThreads;
69 BitmapFormats BitmapFormat;
70 int DoSI, DoHeteroDensity, DoPeriodicBoundaries, DoImmuneBitmap, OutputBitmapDetected;
71 int DoHouseholds, DoPlaces, PlaceTypeNum, Nplace[NUM_PLACE_TYPES], SmallEpidemicCases, DoPlaceGroupTreat;
72 int NumInitialInfections[MAX_NUM_SEED_LOCATIONS], DoRandomInitialInfectionLoc, DoAllInitialInfectioninSameLoc;
73 int MinPopDensForInitialInfection, NumSeedLocations,InitialInfectionsAdminUnitId[MAX_NUM_SEED_LOCATIONS],InitialInfectionsAdminUnit[MAX_NUM_SEED_LOCATIONS], MaxPopDensForInitialInfection;
74 int DoAge, DoSymptoms, LoadSaveNetwork, IncThreshPop, GlobalIncThreshPop;
75 int OutputOnlyNonExtinct, DoInfectiousnessProfile, DoInfectionTree, DoWholeHouseholdImmunity, DoSpatial, DoDeath;
76 int DoAirports, Nairports, Air_popscale, DoSchoolFile, DoRealSymptWithdrawal, CaseAbsentChildAgeCutoff, DoEarlyCaseDiagnosis, DoInterventionFile;
77 int PlaceTypeNoAirNum;
79 int32_t setupSeed1, setupSeed2;
80 int32_t runSeed1, runSeed2;
81 int32_t nextSetupSeed1, nextSetupSeed2;
82 int32_t nextRunSeed1, nextRunSeed2;
83 int ResetSeeds,KeepSameSeeds, ResetSeedsPostIntervention, ResetSeedsFlag, TimeToResetSeeds;
85 double LongitudeCutLine;
86 double SpatialBoundingBox[4], LocationInitialInfection[MAX_NUM_SEED_LOCATIONS][2], InitialInfectionsAdminUnitWeight[MAX_NUM_SEED_LOCATIONS], TimeStepsPerDay;
87 double FalsePositiveRate, FalsePositivePerCapitaIncidence, FalsePositiveAgeRate[NUM_AGE_GROUPS];
88 double latent_icdf[CDF_RES + 1], infectious_icdf[CDF_RES + 1], infectious_prof[INFPROF_RES + 1], infectiousness[MAX_INFECTIOUS_STEPS];
90 double MildToRecovery_icdf[CDF_RES + 1], ILIToRecovery_icdf[CDF_RES + 1], SARIToRecovery_icdf[CDF_RES + 1], CriticalToCritRecov_icdf[CDF_RES + 1], CritRecovToRecov_icdf[CDF_RES + 1];
91 double ILIToSARI_icdf[CDF_RES + 1], SARIToCritical_icdf[CDF_RES + 1], ILIToDeath_icdf[CDF_RES + 1], SARIToDeath_icdf[CDF_RES + 1], CriticalToDeath_icdf[CDF_RES + 1];
93 double Mean_MildToRecovery[NUM_AGE_GROUPS], Mean_ILIToRecovery[NUM_AGE_GROUPS], Mean_SARIToRecovery[NUM_AGE_GROUPS], Mean_CriticalToCritRecov[NUM_AGE_GROUPS], Mean_CritRecovToRecov[NUM_AGE_GROUPS];
94 double Mean_TimeToTest, Mean_TimeToTestOffset, Mean_TimeToTestCriticalOffset, Mean_TimeToTestCritRecovOffset;
95 double Mean_ILIToSARI[NUM_AGE_GROUPS], Mean_SARIToCritical[NUM_AGE_GROUPS], Mean_CriticalToDeath[NUM_AGE_GROUPS], Mean_SARIToDeath[NUM_AGE_GROUPS], Mean_ILIToDeath[NUM_AGE_GROUPS];
96 double Prop_Mild_ByAge[NUM_AGE_GROUPS], Prop_ILI_ByAge[NUM_AGE_GROUPS], Prop_SARI_ByAge[NUM_AGE_GROUPS], Prop_Critical_ByAge[NUM_AGE_GROUPS];
97 double CFR_SARI_ByAge[NUM_AGE_GROUPS], CFR_Critical_ByAge[NUM_AGE_GROUPS], CFR_ILI_ByAge[NUM_AGE_GROUPS];
102 double BitmapAspectScale;
105 double scalex, scaley;
109 double KernelShape, KernelScale, KernelP3, KernelP4, KernelDelta, MoveKernelShape, MoveKernelScale, MoveKernelP3, MoveKernelP4;
110 double AirportKernelShape, AirportKernelScale, AirportKernelP3, AirportKernelP4, AirportTrafficScale;
111 double R0, R0scale, LocalBeta;
113 double InfectiousPeriod;
114 double R0household, R0places, R0spatial;
115 double Seasonality[DAYS_PER_YEAR];
116 double SusceptibilitySD,InfectiousnessSD, R0DensityScalePower;
117 double ProportionSymptomatic[NUM_AGE_GROUPS], LatentToSymptDelay, SymptInfectiousness;
118 double SymptSpatialContactRate, SymptPlaceTypeContactRate[NUM_PLACE_TYPES], InhibitInterAdunitPlaceAssignment[NUM_PLACE_TYPES];
119 double SymptPlaceTypeWithdrawalProp[NUM_PLACE_TYPES], CaseAbsenteeismDuration, CaseAbsenteeismDelay;
120 double CaseAbsentChildPropAdultCarers;
121 double RelativeTravelRate[NUM_AGE_GROUPS], RelativeSpatialContact[NUM_AGE_GROUPS];
122 double AgeSusceptibility[NUM_AGE_GROUPS], AgeInfectiousness[NUM_AGE_GROUPS], InitialImmunity[NUM_AGE_GROUPS];
123 double WAIFW_Matrix[NUM_AGE_GROUPS][NUM_AGE_GROUPS];
124 double HotelPropLocal, JourneyDurationDistrib[MAX_TRAVEL_TIME], LocalJourneyDurationDistrib[MAX_TRAVEL_TIME];
125 double MeanJourneyTime, MeanLocalJourneyTime;
126 int PlaceCloseRoundHousehold;
127 int AbsenteeismPlaceClosure;
129 int InvJourneyDurationDistrib[1025], InvLocalJourneyDurationDistrib[1026];
130 double HouseholdTrans, HouseholdSizeDistrib[MAX_ADUNITS][MAX_HOUSEHOLD_SIZE], HouseholdTransPow;
131 double HouseholdDenomLookup[MAX_HOUSEHOLD_SIZE];
132 int PlaceTypeAgeMin[NUM_PLACE_TYPES], PlaceTypeAgeMax[NUM_PLACE_TYPES], PlaceTypeMaxAgeRead[NUM_PLACE_TYPES];
133 int PlaceTypeAgeMin2[NUM_PLACE_TYPES], PlaceTypeAgeMax2[NUM_PLACE_TYPES];
134 int PlaceTypeAgeMin3[NUM_PLACE_TYPES], PlaceTypeAgeMax3[NUM_PLACE_TYPES];
135 int PlaceTypeNearestNeighb[NUM_PLACE_TYPES], PlaceTypeKernelType[NUM_PLACE_TYPES];
136 double PlaceTypePropAgeGroup[NUM_PLACE_TYPES], PlaceTypePropAgeGroup2[NUM_PLACE_TYPES];
137 double PlaceTypePropAgeGroup3[NUM_PLACE_TYPES], PlaceTypeKernelShape[NUM_PLACE_TYPES], PlaceTypeKernelScale[NUM_PLACE_TYPES];
138 double PlaceTypeKernelP3[NUM_PLACE_TYPES], PlaceTypeKernelP4[NUM_PLACE_TYPES], PlaceTypeTrans[NUM_PLACE_TYPES];
139 double PlaceTypeMeanSize[NUM_PLACE_TYPES], PlaceTypePropBetweenGroupLinks[NUM_PLACE_TYPES], PlaceTypeSizeSD[NUM_PLACE_TYPES];
140 double PlaceTypeSizePower[NUM_PLACE_TYPES], PlaceTypeSizeOffset[NUM_PLACE_TYPES], PlaceTypeSizeMax[NUM_PLACE_TYPES];
141 double PlaceTypeGroupSizeParam1[NUM_PLACE_TYPES], PlaceExclusivityMatrix[NUM_PLACE_TYPES * NUM_PLACE_TYPES];
142 double PropAgeGroup[MAX_ADUNITS][NUM_AGE_GROUPS], PopByAdunit[MAX_ADUNITS][2];
143 double InvLifeExpecDist[MAX_ADUNITS][1001];
145 double PlaceCloseTimeStart, PlaceCloseTimeStart2, PlaceCloseDurationBase, PlaceCloseDuration, PlaceCloseDuration2, PlaceCloseDelayMean, PlaceCloseRadius, PlaceCloseRadius2;
146 double PlaceCloseEffect[NUM_PLACE_TYPES], PlaceClosePropAttending[NUM_PLACE_TYPES], PlaceCloseSpatialRelContact, PlaceCloseHouseholdRelContact;
147 double PlaceCloseCasePropThresh, PlaceCloseAdunitPropThresh, PlaceCloseFracIncTrig;
148 int DoHolidays, NumHolidays;
149 double HolidayEffect[NUM_PLACE_TYPES], HolidayStartTime[DAYS_PER_YEAR], HolidayDuration[DAYS_PER_YEAR];
150 double ColourPeriod, BoundingBox[4], BitmapScale;
151 double TreatSuscDrop, TreatInfDrop, TreatDeathDrop, TreatSympDrop, TreatDelayMean, TreatTimeStart, TreatPlaceGeogDuration;
152 double TreatProphCourseLength, TreatCaseCourseLength, TreatPropRadial, TreatRadius, TreatRadius2, TreatCellIncThresh;
153 double CaseIsolation_CellIncThresh, HHQuar_CellIncThresh, DigitalContactTracing_CellIncThresh;
154 double TreatPropCases, TreatPropCaseHouseholds, TreatHouseholdsDuration;
155 double TreatPlaceProbCaseId[NUM_PLACE_TYPES], TreatPlaceTotalProp[NUM_PLACE_TYPES];
156 double TreatMaxCoursesBase, TreatNewCoursesRate, TreatNewCoursesStartTime, TreatMaxCourses;
157 double VaccSuscDrop, VaccSuscDrop2, VaccInfDrop, VaccMortDrop, VaccSympDrop, VaccDelayMean, VaccTimeStart, VaccTimeEfficacySwitch, VaccTimeStartGeo;
158 double VaccTimeToEfficacy, VaccProp, VaccRadius, VaccRadius2, VaccMinRadius, VaccMinRadius2, VaccPropCaseHouseholds, VaccHouseholdsDuration, VaccMaxCoursesBase;
159 double VaccNewCoursesRate, VaccNewCoursesStartTime, VaccMaxCourses, VaccNewCoursesEndTime, VaccEfficacyDecay, VaccCellIncThresh, VaccCampaignInterval, VaccCoverageIncreasePeriod;
161 int EnhancedSocDistClusterByHousehold;
163 double PreAlertControlPropCasesId, PostAlertControlPropCasesId, ControlPropCasesId;
164 double MoveRestrRadius, MoveRestrRadius2;
165 double MoveDelayMean, MoveRestrEffect, MoveRestrDuration, MoveRestrTimeStart;
166 double AirportCloseTimeStart, AirportCloseDuration, AirportCloseEffectiveness;
168 double CaseIsolationDuration, CaseIsolationEffectiveness, CaseIsolationHouseEffectiveness;
169 double CaseIsolationDelay, CaseIsolationPolicyDuration, CaseIsolationProp;
171 double HQuarantineTimeStart, HQuarantineDelay, HQuarantineHouseDuration, HQuarantinePolicyDuration, HQuarantinePropIndivCompliant;
172 double HQuarantinePropHouseCompliant, HQuarantinePlaceEffect[NUM_PLACE_TYPES], HQuarantineSpatialEffect, HQuarantineHouseEffect;
174 double SocDistTimeStart, SocDistDuration, SocDistHouseholdEffect, SocDistPlaceEffect[NUM_PLACE_TYPES], SocDistSpatialEffect;
175 double EnhancedSocDistHouseholdEffect, EnhancedSocDistPlaceEffect[NUM_PLACE_TYPES], EnhancedSocDistSpatialEffect, EnhancedSocDistProportionCompliant[NUM_AGE_GROUPS];
177 double SocDistChangeDelay, SocDistDuration2, SocDistHouseholdEffect2, SocDistPlaceEffect2[NUM_PLACE_TYPES], SocDistSpatialEffect2;
178 double EnhancedSocDistHouseholdEffect2, EnhancedSocDistPlaceEffect2[NUM_PLACE_TYPES], EnhancedSocDistSpatialEffect2;
180 double SocDistDurationCurrent, SocDistHouseholdEffectCurrent, SocDistPlaceEffectCurrent[NUM_PLACE_TYPES], SocDistSpatialEffectCurrent;
181 double EnhancedSocDistHouseholdEffectCurrent, EnhancedSocDistPlaceEffectCurrent[NUM_PLACE_TYPES], EnhancedSocDistSpatialEffectCurrent;
183 double SocDistRadius, SocDistRadius2;
193 int Num_SD_ChangeTimes;
195 double SD_SpatialEffects_OverTime [MAX_NUM_INTERVENTION_CHANGE_TIMES];
196 double SD_HouseholdEffects_OverTime [MAX_NUM_INTERVENTION_CHANGE_TIMES];
197 double SD_PlaceEffects_OverTime [MAX_NUM_INTERVENTION_CHANGE_TIMES][NUM_PLACE_TYPES];
198 int SD_CellIncThresh_OverTime [MAX_NUM_INTERVENTION_CHANGE_TIMES];
202 double Enhanced_SD_HouseholdEffects_OverTime [MAX_NUM_INTERVENTION_CHANGE_TIMES];
203 double Enhanced_SD_PlaceEffects_OverTime [MAX_NUM_INTERVENTION_CHANGE_TIMES][NUM_PLACE_TYPES];
205 int Num_CI_ChangeTimes;
206 int Num_HQ_ChangeTimes;
207 int Num_PC_ChangeTimes;
208 int Num_DCT_ChangeTimes;
212 double CI_SpatialAndPlaceEffects_OverTime [MAX_NUM_INTERVENTION_CHANGE_TIMES];
213 double CI_HouseholdEffects_OverTime [MAX_NUM_INTERVENTION_CHANGE_TIMES];
214 double CI_Prop_OverTime [MAX_NUM_INTERVENTION_CHANGE_TIMES];
215 double CI_CellIncThresh_OverTime [MAX_NUM_INTERVENTION_CHANGE_TIMES];
219 double HQ_SpatialEffects_OverTime [MAX_NUM_INTERVENTION_CHANGE_TIMES];
220 double HQ_HouseholdEffects_OverTime [MAX_NUM_INTERVENTION_CHANGE_TIMES];
221 double HQ_PlaceEffects_OverTime [MAX_NUM_INTERVENTION_CHANGE_TIMES][NUM_PLACE_TYPES];
222 double HQ_Individual_PropComply_OverTime [MAX_NUM_INTERVENTION_CHANGE_TIMES];
223 double HQ_Household_PropComply_OverTime [MAX_NUM_INTERVENTION_CHANGE_TIMES];
224 double HQ_CellIncThresh_OverTime [MAX_NUM_INTERVENTION_CHANGE_TIMES];
228 double PC_SpatialEffects_OverTime [MAX_NUM_INTERVENTION_CHANGE_TIMES];
229 double PC_HouseholdEffects_OverTime [MAX_NUM_INTERVENTION_CHANGE_TIMES];
230 double PC_PlaceEffects_OverTime [MAX_NUM_INTERVENTION_CHANGE_TIMES][NUM_PLACE_TYPES];
231 double PC_PropAttending_OverTime [MAX_NUM_INTERVENTION_CHANGE_TIMES][NUM_PLACE_TYPES];
232 int PC_IncThresh_OverTime [MAX_NUM_INTERVENTION_CHANGE_TIMES];
233 double PC_FracIncThresh_OverTime [MAX_NUM_INTERVENTION_CHANGE_TIMES];
234 int PC_CellIncThresh_OverTime [MAX_NUM_INTERVENTION_CHANGE_TIMES];
235 double PC_Durs_OverTime [MAX_NUM_INTERVENTION_CHANGE_TIMES];
239 double DCT_SpatialAndPlaceEffects_OverTime [MAX_NUM_INTERVENTION_CHANGE_TIMES];
240 double DCT_HouseholdEffects_OverTime [MAX_NUM_INTERVENTION_CHANGE_TIMES];
241 double DCT_Prop_OverTime [MAX_NUM_INTERVENTION_CHANGE_TIMES];
242 int DCT_MaxToTrace_OverTime [MAX_NUM_INTERVENTION_CHANGE_TIMES];
244 double KeyWorkerProphTimeStart, KeyWorkerProphDuration, KeyWorkerPropInKeyPlaces[NUM_PLACE_TYPES], KeyWorkerHouseProp;
245 double KeyWorkerProphRenewalDuration, KeyWorkerProphRadius, KeyWorkerProphRadius2;
247 double TreatTimeStartBase, VaccTimeStartBase, MoveRestrTimeStartBase, PlaceCloseTimeStartBase, PlaceCloseTimeStartBase2,PlaceCloseTimeStartPrevious;
248 double AirportCloseTimeStartBase, HQuarantineTimeStartBase, CaseIsolationTimeStartBase, SocDistTimeStartBase, KeyWorkerProphTimeStartBase, DigitalContactTracingTimeStartBase;
249 double InfectionImportRate1, InfectionImportRate2, InfectionImportChangeTime, ImportInfectionTimeProfile[MAX_DUR_IMPORT_PROFILE];
250 double PreControlClusterIdTime, PreControlClusterIdCalTime, PreControlClusterIdHolOffset, PreIntervIdCalTime,PreIntervTime,SeedingScaling;
251 int PreControlClusterIdCaseThreshold, PreControlClusterIdCaseThreshold2, PreControlClusterIdUseDeaths, PreControlClusterIdDuration, DoAlertTriggerAfterInterv, AlertTriggerAfterIntervThreshold,StopCalibration,ModelCalibIteration;
252 int DoPerCapitaTriggers, DoGlobalTriggers, DoAdminTriggers, DoICUTriggers, MoveRestrCellIncThresh, DoHQretrigger;
254 int PlaceCloseCellIncThresh, PlaceCloseCellIncThresh1, PlaceCloseCellIncThresh2, TriggersSamplingInterval, PlaceCloseIndepThresh, SocDistCellIncThresh, VaccPriorityGroupAge[2];
255 int PlaceCloseCellIncStopThresh, SocDistCellIncStopThresh;
256 int PlaceCloseAdunitPlaceTypes[NUM_PLACE_TYPES];
258 int DoPlaceCloseOnceOnly, DoSocDistOnceOnly, DoMoveRestrOnceOnly, DoKeyWorkerProphOnceOnly;
260 int VaccMaxRounds, VaccByAdminUnit, VaccAdminUnitDivisor, TreatByAdminUnit, TreatAdminUnitDivisor, MoveRestrByAdminUnit, MoveRestrAdminUnitDivisor, PlaceCloseByAdminUnit, PlaceCloseAdminUnitDivisor;
261 int KeyWorkerProphCellIncThresh, KeyWorkerPlaceNum[NUM_PLACE_TYPES], KeyWorkerPopNum, KeyWorkerNum, KeyWorkerIncHouseNum;
262 int DoBlanketMoveRestr, PlaceCloseIncTrig, PlaceCloseIncTrig1, PlaceCloseIncTrig2, TreatMaxCoursesPerCase, DoImportsViaAirports, DoMassVacc, DurImportTimeProfile;
263 int DoRecordInfEvents, MaxInfEvents, RecordInfEventsPerRun;
264 unsigned short int usHQuarantineHouseDuration, usVaccTimeToEfficacy, usVaccTimeEfficacySwitch;
265 unsigned short int usCaseIsolationDuration, usCaseIsolationDelay, usCaseAbsenteeismDuration, usCaseAbsenteeismDelay,usAlignDum;
267 double KernelPowerScale, KernelOffsetScale;
268 int LimitNumInfections, MaxNumInfections;
271 int DoDigitalContactTracing, ClusterDigitalContactUsers, NDigitalContactUsers, NDigitalHouseholdUsers, FindContactsOfDCTContacts, DoDCTTest;
272 int OutputDigitalContactTracing, OutputDigitalContactDist, DCTIsolateIndexCases, RemoveContactsOfNegativeIndexCase, MaxDigitalContactsToTrace;
273 double PropPopUsingDigitalContactTracing, ScalingFactorSpatialDigitalContacts, ScalingFactorPlaceDigitalContacts, DigitalContactTracingDelay, LengthDigitalContactIsolation, ProportionDigitalContactsIsolate, ProportionSmartphoneUsersByAge[NUM_AGE_GROUPS];
274 double DelayFromIndexCaseDetectionToDCTIsolation, DelayToTestIndexCase, DelayToTestDCTContacts, SpecificityDCT, SensitivityDCT;
275 double DigitalContactTracingPolicyDuration, DCTCaseIsolationHouseEffectiveness, DCTCaseIsolationEffectiveness;
277 int DoOriginDestinationMatrix;
278 int DoInterventionDelaysByAdUnit;
281 int OutputAge, OutputR0, OutputControls, OutputCountry, OutputAdUnitVar, OutputHousehold, OutputInfType, OutputNonSeverity, OutputSeverityAdminUnit, OutputSeverityAge, OutputNonSummaryResults;
285 int MaxMFPartnerAgeGap;
286 int MaxFMPartnerAgeGap;
294 double OneChildTwoPersProb;
295 double TwoChildThreePersProb;
296 double OnePersHouseProbOld;
297 double TwoPersHouseProbOld;
298 double OnePersHouseProbYoung;
299 double TwoPersHouseProbYoung;
300 double OneChildProbYoungestChildUnderFive;
301 double TwoChildrenProbYoungestUnderFive;
302 double ProbYoungestChildUnderFive;
303 double ZeroChildThreePersProb;
304 double OneChildFourPersProb;
305 double YoungAndSingleSlope;
306 double ThreeChildFivePersProb;
311 #endif // COVIDSIM_PARAM_H_INCLUDED_ double DCT_ChangeTimes[MAX_NUM_INTERVENTION_CHANGE_TIMES]
DomainSize in_degrees_
Size of spatial domain in degrees.
double Enhanced_SD_SpatialEffects_OverTime[MAX_NUM_INTERVENTION_CHANGE_TIMES]
double PC_ChangeTimes[MAX_NUM_INTERVENTION_CHANGE_TIMES]
double Mean_MildToRecovery[NUM_AGE_GROUPS]
means for above icdf's.
DomainSize in_microcells_
Size of spatial domain in microcells.
double height_
The height.
double HQ_ChangeTimes[MAX_NUM_INTERVENTION_CHANGE_TIMES]
Stores the parameters for the simulation.
double SD_ChangeTimes[MAX_NUM_INTERVENTION_CHANGE_TIMES]
Size of spatial domain in various units.
int VaryEfficaciesOverTime
double CI_ChangeTimes[MAX_NUM_INTERVENTION_CHANGE_TIMES]
int NumNonExtinctRealisations
DomainSize in_cells_
Size of spatial domain in cells.