static ScenarioForEvalData createPlanfall(ScenarioForEvalData nullfall) { // (construct the policy case. The base case can be used to simplify things ...) // The policy case is initialized as a complete copy of the base case: ScenarioForEvalData planfall = nullfall.createDeepCopy(); // we are now looking at one specific OD relation (for this scenario, there is only one!) Values planfallForOD = planfall.getByODRelation("AB"); { // modify the travel times for the rail mode: ValuesForAMode railValues = planfallForOD.getByMode(Mode.rail); railValues .getByDemandSegment(DemandSegment.PV_NON_COMMERCIAL) .incByEntry(Attribute.hrs, -0.1); railValues.getByDemandSegment(DemandSegment.GV).incByEntry(Attribute.hrs, -0.1); // modify some demand (presumably as a result): double delta = 100.; // double delta = 0. ; railValues.getByDemandSegment(DemandSegment.GV).incByEntry(Attribute.XX, delta); planfall .getByODRelation("AB") .getByMode(Mode.road) .getByDemandSegment(DemandSegment.GV) .incByEntry(Attribute.XX, -delta); } return planfall; }