org.britastro.grelf

## Class Maths

• java.lang.Object
• org.britastro.grelf.Maths

• ```public class Maths
extends java.lang.Object```
Static methods to do common mathematical calculations. The trigonometrical methods are for ease of working in degrees rather than radians. java.lang.StrictMath methods are always used.
• ### Nested Class Summary

Nested Classes
Modifier and Type Class and Description
`static class ` `Maths.Statistics`
Just a record to hold public values.
• ### Method Summary

Methods
Modifier and Type Method and Description
`static double` `acosDegs(double cos)`
Get arccos in degrees.
`static double` `acosh(double x)`
Hyperbolic inverse cosine.
`static double` ```angleDifference(double a1degrees, double a2degrees)```
Find the difference (a1 - a2) between 2 angles in degrees, taking into account periodicity.
`static double` `angleMean(double... anglesInDegrees)`
Find the mean of a set of angles, taking into account periodicity.
`static Maths.Statistics` `angleStatistics(java.util.Collection<java.lang.Double> anglesInDegrees)`
Calculate the min, max, mean and stdDev (all in degrees) of a list or set of angles, taking into account periodicity.
`static Maths.Statistics` `angleStatistics(double... anglesInDegrees)`
Calculate the min, max, mean and stdDev of a set of angles, taking into account periodicity.
`static double` `asinDegs(double sin)`
Get arcsin in degrees.
`static double` `asinh(double x)`
Hyperbolic inverse sine.
`static double` ```atan2Degs(double sin, double cos)```
Get atan2 in degrees.
`static double` `atanh(double x)`
Hyperbolic inverse tangent.
`static double` `cosDegs(double xDegs)`
Get cosine of an angle given in degrees.
`static double` `in360(double xDegs)`
Convert angle x (degrees) to lie in range 0..360
`static double` `sinDegs(double xDegs)`
Get sine of an angle given in degrees.
`static double` `tanDegs(double xDegs)`
Get tangent of an angle in degrees.
• ### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`
• ### Method Detail

• #### angleMean

`public static double angleMean(double... anglesInDegrees)`
Find the mean of a set of angles, taking into account periodicity. Uses angleStatistics ().
• #### angleDifference

```public static double angleDifference(double a1degrees,
double a2degrees)```
Find the difference (a1 - a2) between 2 angles in degrees, taking into account periodicity. The result is in the range -180..+180.
• #### angleStatistics

`public static Maths.Statistics angleStatistics(double... anglesInDegrees)`
Calculate the min, max, mean and stdDev of a set of angles, taking into account periodicity. Uses angleDifference () from a working mean of the first angle. Does NOT use the erroneous method you can find on the web that averages sin and cos and then takes atan2.
• #### angleStatistics

`public static Maths.Statistics angleStatistics(java.util.Collection<java.lang.Double> anglesInDegrees)`
Calculate the min, max, mean and stdDev (all in degrees) of a list or set of angles, taking into account periodicity. Uses angleDifference () from a working mean of the first angle. Does NOT use the erroneous method you can find on the web that averages sin and cos and then takes atan2.
• #### in360

`public static double in360(double xDegs)`
Convert angle x (degrees) to lie in range 0..360
• #### acosDegs

`public static double acosDegs(double cos)`
Get arccos in degrees.
• #### asinDegs

`public static double asinDegs(double sin)`
Get arcsin in degrees.
• #### atan2Degs

```public static double atan2Degs(double sin,
double cos)```
Get atan2 in degrees.
• #### sinDegs

`public static double sinDegs(double xDegs)`
Get sine of an angle given in degrees.
• #### cosDegs

`public static double cosDegs(double xDegs)`
Get cosine of an angle given in degrees.
• #### tanDegs

`public static double tanDegs(double xDegs)`
Get tangent of an angle in degrees.
• #### asinh

`public static double asinh(double x)`
Hyperbolic inverse sine.
• #### acosh

`public static double acosh(double x)`
Hyperbolic inverse cosine. Returns NaN if the argument is less than 1.
• #### atanh

`public static double atanh(double x)`
Hyperbolic inverse tangent. Returns NaN if the absolute value of the argument is less than 1.