public class PuLorentz
extends java.lang.Object
Constructor and Description |
---|
PuLorentz() |
Modifier and Type | Method and Description |
---|---|
static double |
abs(PdVector p,
PdVector sign)
Compute absolute value of point in Minkowski space.
|
static double |
dist(PdVector p,
PdVector q,
PdVector sign)
Distance of two points in Lorentz model of hyperbolic space.
|
static double |
distMinkowski(PdVector p,
PdVector q,
PdVector sign)
Compute distance of two points in Minkowski space by taking euclidean
different and norm with respect to signature metric.
|
static double |
distToOrigin(PdVector p,
PdVector sign)
Distance of a point and the origin in Lorentz model of hyperbolic space.
|
static double |
dot(PdVector p,
PdVector q,
PdVector sign)
Scalar product of two vectors in Lorentz model of hyperbolic space.
|
static void |
getTangent(PdVector tangent,
PdVector p,
PdVector q,
PdVector sign)
Compute unit tangent vector at point p of geodesic from p to q in Lorentz model of hyperbolic space.
|
static void |
getTangentAtOrigin(PdVector tangent,
PdVector p,
PdVector sign)
Compute unit tangent vector at origin of geodesic to point p in Lorentz model of hyperbolic space.
|
static void |
invertAtPoint(PdMatrix mat,
PdVector p,
PdVector sign)
Compute transformation 4*4 matrix to invert at given point.
|
static void |
normalize(PdVector p,
PdVector sign)
Normalize Minkowski length of point.
|
static void |
reflectAtOrigin(PdMatrix mat,
PdVector q,
PdVector r,
PdVector sign)
Compute transformation 4*4 matrix to reflect at plane through origin spanned by two given points.
|
static void |
reflectAtPlane(PdMatrix mat,
PdVector p,
PdVector q,
PdVector r,
PdVector sign)
Compute transformation 4*4 matrix to reflect at arbitrary plane spanned by three given points.
|
static void |
rotateAroundLine(PdMatrix mat,
PdVector p,
PdVector q,
double angle,
PdVector sign)
Compute transformation 4*4 matrix to rotate around geodesic connecting two given points.
|
static void |
rotateAtOrigin(PdMatrix mat,
PdVector p,
double angle,
PdVector sign)
Compute rotation 4*4 matrix to rotate tangent space at origin around line in
Lorentz model of hyperbolic space.
|
static void |
setLength(PdVector p,
double length,
PdVector sign)
Set Minkowski length of point to given length.
|
static double |
sqrAbs(PdVector p,
PdVector sign)
Compute square of absolute value of point in Minkowski space.
|
static double |
sqrDistMinkowski(PdVector p,
PdVector q,
PdVector sign)
Compute square distance of two points in Minkowski space by taking euclidean
different and square norm with respect to signature metric.
|
static void |
translate(PdMatrix mat,
PdVector p,
PdVector q,
PdVector sign)
Compute translation 4*4 matrix to move a point p to a point q in Lorentz model of hyperbolic space.
|
static void |
translate2Origin(PdMatrix mat,
PdVector p,
PdVector sign)
Compute translation 4*4 matrix to move a point p to origin in Lorentz model of hyperbolic space.
|
static void |
translate2Point(PdMatrix mat,
PdVector p,
PdVector sign)
Compute translation 4*4 matrix to move a point p to origin in Lorentz model of hyperbolic space.
|
public static double abs(PdVector p, PdVector sign)
p
- point in Minkowski spacesign
- Signature of space formpublic static double sqrAbs(PdVector p, PdVector sign)
p
- point in Minkowski spacesign
- Signature of space formpublic static double distMinkowski(PdVector p, PdVector q, PdVector sign)
dist = |p-q|_L
p
- point in Minkowski spaceq
- point in Minkowski spacesign
- Signature of space formpublic static double sqrDistMinkowski(PdVector p, PdVector q, PdVector sign)
dist = (|p-q|_L)^2
p
- point in Minkowski spaceq
- point in Minkowski spacesign
- Signature of space formpublic static void normalize(PdVector p, PdVector sign)
|v|_L == 1.
p
- point in Minkowski spacesign
- Signature of space formpublic static void setLength(PdVector p, double length, PdVector sign)
|v|_L == length
p
- point in Minkowski spacesign
- Signature of space formpublic static double dot(PdVector p, PdVector q, PdVector sign)
p
- point in Lorentz model in R4_Lq
- point in Lorentz model in R4_Lsign
- Signature of space formpublic static double dist(PdVector p, PdVector q, PdVector sign)
p
- point in Lorentz model in R4_Lq
- point in Lorentz model in R4_Lsign
- Signature of space formpublic static double distToOrigin(PdVector p, PdVector sign)
p
- point in Lorentz model in R4_Lsign
- Signature of space formpublic static void getTangent(PdVector tangent, PdVector p, PdVector q, PdVector sign)
tangent
- resulting unit length tangent vector at p of geodesic from p to qp
- point in Lorentz model in R4_Lq
- point in Lorentz model in R4_Lsign
- Signature of space formpublic static void getTangentAtOrigin(PdVector tangent, PdVector p, PdVector sign)
tangent
- resulting unit length tangent vector at origin of geodesic to pp
- point in Lorentz model in R4_Lsign
- Signature of space formpublic static void translate2Origin(PdMatrix mat, PdVector p, PdVector sign)
mat
- resulting translation 4*4 matrix to move a point p to originp
- point in Lorentz model in R4_Lsign
- Signature of space formpublic static void translate2Point(PdMatrix mat, PdVector p, PdVector sign)
mat
- resulting translation 4*4 matrix to move origin to point pp
- point in Lorentz model in R4_Lsign
- Signature of space formpublic static void translate(PdMatrix mat, PdVector p, PdVector q, PdVector sign)
mat
- resulting translation 4*4 matrix to move a point p to point qp
- point in Lorentz model in R4_Lq
- point in Lorentz model in R4_Lsign
- Signature of space formpublic static void rotateAtOrigin(PdMatrix mat, PdVector p, double angle, PdVector sign)
mat
- resulting rotation 4*4 matrix to rotate around line through originp
- point in Lorentz model in R4_L specifying geodesic around to rotateangle
- angle in degrees specifying amount to rotatesign
- Signature of space formpublic static void rotateAroundLine(PdMatrix mat, PdVector p, PdVector q, double angle, PdVector sign)
mat
- resulting rotation 4*4 matrix to rotate around line through originp
- (p,q): two points in Lorentz model in R4_L specifying geodesic around to rotateq
- (p,q): two points in Lorentz model in R4_L specifying geodesic around to rotateangle
- angle in degrees specifying amount to rotatesign
- Signature of space formpublic static void reflectAtOrigin(PdMatrix mat, PdVector q, PdVector r, PdVector sign)
mat
- resulting reflection 4*4 matrix to reflect at plane through originq
- (q,r): two points in Lorentz model in R4_L specifying plane to reflect atr
- (q,r): two points in Lorentz model in R4_L specifying plane to reflect atsign
- Signature of space formpublic static void reflectAtPlane(PdMatrix mat, PdVector p, PdVector q, PdVector r, PdVector sign)
mat
- resulting reflection 4*4 matrix to reflect at planep
- (p,q,r): three points in Lorentz model in R4_L specifying plane to reflect atq
- (p,q,r): three points in Lorentz model in R4_L specifying plane to reflect atr
- (p,q,r): three points in Lorentz model in R4_L specifying plane to reflect atsign
- Signature of space formpublic static void invertAtPoint(PdMatrix mat, PdVector p, PdVector sign)
mat
- resulting inversion 4*4 matrix to invert at given pointp
- point in Lorentz model in R4_L specifying center of inversionsign
- Signature of space form"