1 package org.djunits.demo.examples;
2
3 import java.util.Locale;
4
5 import org.djunits.unit.SpeedUnit;
6 import org.djunits.unit.UNITS;
7 import org.djunits.value.StorageType;
8 import org.djunits.value.ValueException;
9 import org.djunits.value.vdouble.scalar.DoubleScalar;
10 import org.djunits.value.vdouble.scalar.Duration;
11 import org.djunits.value.vdouble.scalar.Length;
12 import org.djunits.value.vdouble.scalar.Speed;
13 import org.djunits.value.vdouble.vector.DoubleVector;
14
15
16
17
18
19
20
21
22
23
24
25 public final class MultiplyAndDivide implements UNITS
26 {
27
28 private MultiplyAndDivide()
29 {
30
31 }
32
33
34
35
36
37
38 public static void main(final String[] args) throws ValueException
39 {
40 Locale.setDefault(Locale.US);
41 Speed speed = new Speed(50, KM_PER_HOUR);
42 Duration duration = new Duration(0.5, HOUR);
43 System.out.println("speed is " + speed);
44 System.out.println("duration is " + duration);
45 Length distance = speed.multiplyBy(duration);
46 System.out.println("distance is " + distance);
47 Length finish = new Length(100, KILOMETER);
48 Duration timeToFinish = finish.divideBy(speed);
49 System.out.println("at speed " + speed + " it will take " + timeToFinish + " to travel " + finish);
50 Speed requiredSpeed = finish.divideBy(duration);
51 System.out.println("speed required to reach finish at " + finish + " in " + duration + " is "
52 + requiredSpeed.toString(KM_PER_HOUR));
53 DoubleScalar.Rel<SpeedUnit> speed1 = new DoubleScalar.Rel<>(1.2, SpeedUnit.SI);
54 DoubleScalar.Rel<SpeedUnit> speed2 = speed1.multiplyBy(2.0);
55 DoubleScalar.Rel<SpeedUnit> speed3 = speed1.multiplyBy(3.0);
56 double[] sv = new double[] {1, 2, 3, 4, 5};
57 DoubleVector.Rel<SpeedUnit> speedVector = new DoubleVector.Rel<SpeedUnit>(sv, SpeedUnit.SI, StorageType.DENSE);
58 }
59
60 }