Go to the documentation of this file.
    8 package net.sf.geographiclib;
 
   31   public static final double min = Math.pow(0.5, 1022);
 
   39   public static double sq(
double x) { 
return x * 
x; }
 
   49   public static double hypot(
double x, 
double y) {
 
   50     x = Math.abs(
x); 
y = Math.abs(
y);
 
   51     double a = Math.max(
x, 
y), 
b = Math.min(
x, 
y) / (
a != 0 ? 
a : 1);
 
   52     return a * Math.sqrt(1 + 
b * 
b);
 
   71   public static double log1p(
double x) {
 
   79     return z == 0 ? 
x : 
x * Math.log(
y) / 
z;
 
   90   public static double atanh(
double x)  {
 
   91     double y = Math.abs(
x);     
 
   92     y = Math.log1p(2 * 
y/(1 - 
y))/2;
 
   93     return x < 0 ? -
y : 
y;
 
  105     return Math.abs(
x) * (
y < 0 || (
y == 0 && 1/
y < 0) ? -1 : 1);
 
  115   public static double cbrt(
double x) {
 
  116     double y = Math.pow(Math.abs(
x), 1/3.0); 
 
  117     return x < 0 ? -
y : 
y;
 
  120   public static Pair norm(
double sinx, 
double cosx) {
 
  121     double r = 
hypot(sinx, cosx);
 
  122     return new Pair(sinx/r, cosx/r);
 
  141     double t = -(up + vpp);
 
  162   public static double polyval(
int N, 
double p[], 
int s, 
double x) {
 
  163     double y = 
N < 0 ? 0 : 
p[
s++];
 
  164     while (--
N >= 0) 
y = 
y * 
x + 
p[
s++];
 
  175     final double z = 1/16.0;
 
  176     if (
x == 0) 
return 0;
 
  177     double y = Math.abs(
x);
 
  180     return x < 0 ? -
y : 
y;
 
  193     return x <= -180 ? 
x + 360 : (
x <= 180 ? 
x : 
x - 360);
 
  204     return Math.abs(
x) > 90 ? Double.NaN : 
x;
 
  227     return sum(
d == 180 && 
t > 0 ? -180 : 
d, 
t);
 
  245     q = (
int)Math.floor(r / 90 + 0.5);
 
  248     r = Math.toRadians(r);
 
  250     double s = Math.sin(r), 
c = Math.cos(r);
 
  253     case  0: sinx =  
s; cosx =  
c; 
break;
 
  254     case  1: sinx =  
c; cosx = -
s; 
break;
 
  255     case  2: sinx = -
s; cosx = -
c; 
break;
 
  256     default: sinx = -
c; cosx =  
s; 
break; 
 
  258     if (
x != 0) { sinx += 0.0; cosx += 0.0; }
 
  259     return new Pair(sinx, cosx);
 
  280     if (Math.abs(
y) > Math.abs(
x)) { 
double t; 
t = 
x; 
x = 
y; 
y = 
t; 
q = 2; }
 
  281     if (
x < 0) { 
x = -
x; ++
q; }
 
  283     double ang = Math.toDegrees(Math.atan2(
y, 
x));
 
  291     case 1: ang = (
y >= 0 ? 180 : -180) - ang; 
break;
 
  292     case 2: ang =  90 - ang; 
break;
 
  293     case 3: ang = -90 + ang; 
break;
 
  305     return Math.abs(
x) <= Double.MAX_VALUE;
 
  
static double AngRound(double x)
static const double d[K][N]
static double LatFix(double x)
static Pair sum(double u, double v)
set noclip points set clip one set noclip two set bar set border lt lw set xdata set ydata set zdata set x2data set y2data set boxwidth set dummy x
static double atanh(double x)
static boolean isfinite(double x)
static Pair AngDiff(double x, double y)
static Pair sincosd(double x)
static double hypot(double x, double y)
static double AngNormalize(double x)
static double atan2d(double y, double x)
EIGEN_DEVICE_FUNC const Scalar & q
static double polyval(int N, double p[], int s, double x)
static final double epsilon
static double copysign(double x, double y)
static double log1p(double x)
static Pair norm(double sinx, double cosx)
static double sq(double x)
Array< int, Dynamic, 1 > v
static double cbrt(double x)
gtsam
Author(s): 
autogenerated on Wed May 28 2025 03:01:22