TargetVersionV2_1

Replace submodels under "org.vadere.simulator.models.infection" and attributes under "state.attributes.models.infection" Old scenario description looks like this:

{
"name" : "ScenarioName",
...
"scenario" : {
"mainModel": ...,
"attributesModel": {
"org.vadere.state.attributes.models...." : {
...
"submodels" : [ "org.vadere.simulator.models.sir.TransmissionModel" ]
},
...
"org.vadere.state.attributes.models.AttributesTransmissionModel" : {
"transmissionModelSourceParameters" : [ {
"sourceId" : -1,
"infectionStatus" : "SUSCEPTIBLE"
} ],
"pedestrianRespiratoryCyclePeriod" : 4.0,
"pedestrianPathogenEmissionCapacity" : 4.0,
"pedestrianPathogenAbsorptionRate" : 5.0E-4,
"pedestrianMinInfectiousDose" : 3200.0,
"exposedPeriod" : 432000.0,
"infectiousPeriod" : 1209600.0,
"recoveredPeriod" : 1.296E7,
"aerosolCloudHalfLife" : 600.0,
"aerosolCloudInitialRadius" : 1.5,
"dropletsExhalationFrequency" : 0.0,
"dropletsDistanceOfSpread" : 1.5,
"dropletsAngleOfSpreadInDeg" : 30.0,
"dropletsLifeTime" : 1.001,
"dropletsPathogenLoadFactor" : 200.0
}
},
...
}
}
This migration transforms it to:
{
"name" : "ScenarioName",
...
"scenario" : {
"mainModel": ...,
"attributesModel": {
"org.vadere.state.attributes.models...." : {
...
"submodels" : [ "org.vadere.simulator.models.infection.AirTransmissionModel", "org.vadere.simulator.models.infection.ThresholdResponseModel" ]
},
...
"org.vadere.state.attributes.models.infection.AttributesAirTransmissionModel" : {
"exposureModelSourceParameters" : [ {
"sourceId" : -1,
"infectious" : false
} ],
"infectiousPedestrianIdsNoSource" : [ ],
"pedestrianRespiratoryCyclePeriod" : 4.0,
"aerosolCloudsActive" : true,
"aerosolCloudParameters" : {
"halfLife" : 600.0,
"initialRadius" : 1.5,
"initialPathogenLoad" : 10000.0,
"airDispersionFactor" : 0.0,
"pedestrianDispersionWeight" : 0.0125,
"absorptionRate" : 5.0E-4
},
"dropletsActive" : false,
"dropletParameters" : {
"emissionFrequency" : 0.016666666666666666,
"distanceOfSpread" : 1.5,
"angleOfSpreadInDeg" : 30.0,
"lifeTime" : 1.5,
"pathogenLoad" : 10000.0,
"absorptionRate" : 0.1
}
},
"org.vadere.state.attributes.models.infection.AttributesThresholdResponseModel" : {
"exposureToInfectedThreshold" : 1000.0
}
},
...
}
}
Replace field healthStatus and add field infectionStatus under node dynamicElements. Assign value null in both cases.

Further, this handles deprecated data writers:

Remove:

Rename: