Package org.opentrafficsim.core.math
Class Acceleration3d
java.lang.Object
org.opentrafficsim.core.math.Acceleration3d
- All Implemented Interfaces:
 Serializable
A 3D acceleration vector, decomposed in X, Y, and Z-acceleration with easy conversion from and to a spherical coordinate
 system. 
Physicists and mathematicians do not agree on the meaning of theta and phi. In this class the convention in the physics domain is used:
 
Physicists and mathematicians do not agree on the meaning of theta and phi. In this class the convention in the physics domain is used:
- theta is the angle from the z direction.
 - phi is the projected angle in the xy-plane from the x direction.
 
 Copyright (c) 2013-2024 Delft University of Technology, PO Box 5, 2600 AA, Delft, the Netherlands. All rights reserved. 
 BSD-style license. See OpenTrafficSim License.
 
- Author:
 - Alexander Verbraeck, Peter Knoppers
 - See Also:
 
- 
Constructor Summary
ConstructorsConstructorDescriptionAcceleration3d(double x, double y, double z, org.djunits.unit.AccelerationUnit unit) Construct a new Acceleration3d from three double Cartesian coordinates and a acceleration unit.Acceleration3d(org.djunits.value.vdouble.scalar.Acceleration x, org.djunits.value.vdouble.scalar.Acceleration y, org.djunits.value.vdouble.scalar.Acceleration z) Construct a new Acceleration3d from three strongly typed Cartesian coordinates.Acceleration3d(org.djunits.value.vdouble.scalar.Acceleration acceleration, org.djunits.value.vdouble.scalar.Direction theta, org.djunits.value.vdouble.scalar.Direction phi) Construct a new Acceleration3d from a strongly typed acceleration and polar coordinates.Acceleration3d(org.djunits.value.vdouble.vector.AccelerationVector acceleration) Construct a new Acceleration3d from vector of strongly typed Cartesian coordinates. - 
Method Summary
Modifier and TypeMethodDescriptionfinal org.djunits.value.vdouble.scalar.AccelerationRetrieve the norm of this Acceleration3d.final org.djunits.value.vdouble.scalar.DirectiongetPhi()Retrieve the phi of this Acceleration3d.final org.djunits.value.vdouble.scalar.DirectiongetTheta()Retrieve the theta of this Acceleration3d.final org.djunits.value.vdouble.scalar.AccelerationgetX()Retrieve the x-component of this Acceleration3d.final org.djunits.value.vdouble.scalar.AccelerationgetY()Retrieve the y-component of this Acceleration3d.final org.djunits.value.vdouble.scalar.AccelerationgetZ()Retrieve the z-component of this Acceleration3d.final StringtoString() 
- 
Constructor Details
- 
Acceleration3d
public Acceleration3d(org.djunits.value.vdouble.vector.AccelerationVector acceleration) throws org.djunits.value.ValueRuntimeException Construct a new Acceleration3d from vector of strongly typed Cartesian coordinates.- Parameters:
 acceleration- the accelerations in 3D (YPR coded)- Throws:
 org.djunits.value.ValueRuntimeException- in case the vector does not have exactly three elements
 - 
Acceleration3d
public Acceleration3d(org.djunits.value.vdouble.scalar.Acceleration x, org.djunits.value.vdouble.scalar.Acceleration y, org.djunits.value.vdouble.scalar.Acceleration z) throws org.djunits.value.ValueRuntimeException Construct a new Acceleration3d from three strongly typed Cartesian coordinates.- Parameters:
 x- the acceleration in the x-directiony- the acceleration in the y-directionz- the acceleration in the z-direction- Throws:
 org.djunits.value.ValueRuntimeException- in case the units are incorrect
 - 
Acceleration3d
public Acceleration3d(double x, double y, double z, org.djunits.unit.AccelerationUnit unit) throws org.djunits.value.ValueRuntimeException Construct a new Acceleration3d from three double Cartesian coordinates and a acceleration unit.- Parameters:
 x- the acceleration in the x-directiony- the acceleration in the y-directionz- the acceleration in the z-directionunit- the unit of the xyz parameters- Throws:
 org.djunits.value.ValueRuntimeException- in case the units are incorrect
 - 
Acceleration3d
public Acceleration3d(org.djunits.value.vdouble.scalar.Acceleration acceleration, org.djunits.value.vdouble.scalar.Direction theta, org.djunits.value.vdouble.scalar.Direction phi) throws org.djunits.value.ValueRuntimeException Construct a new Acceleration3d from a strongly typed acceleration and polar coordinates.- Parameters:
 acceleration- the acceleration in the direction of the angle along the vectortheta- the angle from the z directionphi- the projected angle in the xy-plane from the x direction- Throws:
 org.djunits.value.ValueRuntimeException- in case the vector does not have exactly three elements
 
 - 
 - 
Method Details
- 
getX
public final org.djunits.value.vdouble.scalar.Acceleration getX()Retrieve the x-component of this Acceleration3d.- Returns:
 - the acceleration in the x-direction.
 
 - 
getY
public final org.djunits.value.vdouble.scalar.Acceleration getY()Retrieve the y-component of this Acceleration3d.- Returns:
 - the acceleration in the y-direction.
 
 - 
getZ
public final org.djunits.value.vdouble.scalar.Acceleration getZ()Retrieve the z-component of this Acceleration3d.- Returns:
 - the acceleration in the z-direction.
 
 - 
getTheta
public final org.djunits.value.vdouble.scalar.Direction getTheta()Retrieve the theta of this Acceleration3d.- Returns:
 - the angle of direction perpendicular to the xy-plane
 
 - 
getPhi
public final org.djunits.value.vdouble.scalar.Direction getPhi()Retrieve the phi of this Acceleration3d.- Returns:
 - the projected angle of direction in the xy-plane
 
 - 
getAcceleration
public final org.djunits.value.vdouble.scalar.Acceleration getAcceleration()Retrieve the norm of this Acceleration3d.- Returns:
 - the combined acceleration in the direction of the angle
 
 - 
toString
 
 -