Proyecto

General

Perfil

Funciones Incluidas » Histórico » Versión 2

Federico Vera, 2018-07-12 16:55

1 1 Federico Vera
# Funciones Incluidas
2
3
{{>toc}}
4
5
Existe un número de funciones incluidas que mapean a los métodos de [`java.util.Math`](https://docs.oracle.com/javase/8/docs/api/java/lang/Math.html) (por lo tanto se aplican las mismas restricciones), estas son:
6
7
## Funciones Trigonométricas:
8 2 Federico Vera
* `sin(x)`: Seno de un ángulo (expresado en radianes)
9
* `cos(x)`: Coseno de un ángulo (expresado en radianes)
10
* `tan(x)`: Tangente de un ángulo (expresado en radianes)
11 1 Federico Vera
12
## Funciones Trigonométricas Inversas:
13 2 Federico Vera
* `asin(x)`: Arcoseno en el rango [-π/2, π/2)
14
* `acos(x)`: Arcocoseno en el rango [0, π)
15
* `atan(x)`: Arcotangente en el rango [-π/2, π/2) 
16 1 Federico Vera
17
## Funciones Hiperbólicas:
18 2 Federico Vera
* `sinh(x)`: Seno hiperbólico `(e^x - e^(-x)) / 2`
19
* `cosh(x)`: Coseno hiperbólico `(e^x + e^(-x)) / 2`
20
* `tanh(x)`: Tangente hiperbólica `(e^x - e^(-x)) / (e^x + e^(-x))`
21 1 Federico Vera
22
## Logaritmos
23 2 Federico Vera
* `log(x)`: Logaritmo en base `e` de `x` 
24
* `log1p(x)`: Logaritmo en base 10 de  `(x + 1)`
25
* `log10(x)`: Logaritmo en base 10 de `x`
26
* `log2(x)`: Logaritmo en base 2 de `x`
27 1 Federico Vera
28
## Misceláneos
29
* `pow(b, e)`: `b` elevado a la `e`
30
* `sqrt(x)`: Raíz cuadrada de`x`
31
* `cbrt(x)`: Raíz cúbica de `x`
32
* `exp(x)`: `e` elevado a la `x`
33
* `expm1(x)`: `e` elevado a la `x` menos 1 (`e^x - 1`)
34
* `signum(x)`:{{collapse(Nota)
35
* Esta es la única función no implementada utilizando `java.util.Math` method.*
36
}} Signo de `x` (`-1, 0, 1` para `< 0`, `= 0` y `> 0` respectivamente)
37 2 Federico Vera
* `abs(x)`: Valor absoluto de `x`
38
* `ceil(x)`: Primer entero mas cercano a -Infinito que sea mayor o igual a `x` 
39
* `floor(x)`: Primer entero mas cercano a +Infinito que sea menor o igual a `x` 
40 1 Federico Vera
41
## Constantes
42
* `pi()`: Cociente entre la circunferencia de un círculo y su diámetro `3.14159265358979323846`
43
* `e()`: Base del logaritmo natural `2.7182818284590452354`
44
45
## Desactivando las funciones incluidas
46
A partir de la versión `0.6-riddler` (commit:28c731ea) se pueden desactivar las funciones incluidas de la siguiente manera:
47
48
~~~Java
49
    Expression e = new ExpressionBuilder("x + 3")
50
                      .disableBuiltInFunctions() //<--
51
                      .variable("x")
52
                      .build();
53
~~~
54
55
Recuerde que como las constantes están implementadas como funciones estas también serán desactivadas.
56
57
## Código
58
El código de las funciones puede encontrarse aquí [aquí](https://redmine.riddler.com.ar/projects/exp4j/repository/revisions/master/entry/src/main/java/net/objecthunter/exp4j/function/Functions.java).
Volver al inicio