1 package org.opentrafficsim.core.gtu.lane.changing;
2
3 import org.opentrafficsim.core.gtu.following.DualAccelerationStep;
4 import org.opentrafficsim.core.unit.AccelerationUnit;
5 import org.opentrafficsim.core.value.vdouble.scalar.DoubleScalar;
6
7
8
9
10
11
12
13
14
15
16
17 public class Altruistic extends AbstractLaneChangeModel
18 {
19
20
21 @Override
22 public final DoubleScalar.Abs<AccelerationUnit> applyDriverPersonality(final DualAccelerationStep accelerationSteps)
23 {
24
25 AccelerationUnit unit = accelerationSteps.getLeaderAcceleration().getUnit();
26 return new DoubleScalar.Abs<AccelerationUnit>(accelerationSteps.getLeaderAcceleration().getInUnit()
27 + accelerationSteps.getFollowerAcceleration().getInUnit(unit), unit);
28 }
29
30 }