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
26 public final class MultiplyAndDivide implements UNITS
27 {
28
29 private MultiplyAndDivide()
30 {
31
32 }
33
34
35
36
37
38
39 public static void main(final String[] args) throws ValueException
40 {
41 Locale.setDefault(Locale.US);
42 Speed speed = new Speed(50, KM_PER_HOUR);
43 Duration duration = new Duration(0.5, HOUR);
44 System.out.println("speed is " + speed);
45 System.out.println("duration is " + duration);
46 Length distance = speed.multiplyBy(duration);
47 System.out.println("distance is " + distance);
48 Length finish = new Length(100, KILOMETER);
49 Duration timeToFinish = finish.divideBy(speed);
50 System.out.println("at speed " + speed + " it will take " + timeToFinish + " to travel " + finish);
51 Speed requiredSpeed = finish.divideBy(duration);
52 System.out.println("speed required to reach finish at " + finish + " in " + duration + " is "
53 + requiredSpeed.toString(KM_PER_HOUR));
54 DoubleScalar.Rel<SpeedUnit> speed1 = new DoubleScalar.Rel<>(1.2, SpeedUnit.SI);
55 DoubleScalar.Rel<SpeedUnit> speed2 = speed1.multiplyBy(2.0);
56 DoubleScalar.Rel<SpeedUnit> speed3 = speed1.multiplyBy(3.0);
57 double[] sv = new double[] { 1, 2, 3, 4, 5 };
58 DoubleVector.Rel<SpeedUnit> speedVector = new DoubleVector.Rel<SpeedUnit>(sv, SpeedUnit.SI, StorageType.DENSE);
59 }
60
61 }