[Find release](https://github.com/ballandt/avmath/releases/tag/v3.0.0)
API Changes
* `__init__`
* redesigned function `avmath.pi()` to constant `avmath.pi`
* redesigned function `avmath.e()` to constant `avmath.e`
* `_FLOAT_EQ`
* __Deletion__
* `_Point`
* __Deletion__
* `DimensionError`
* moved from `algebra`
* `algebra`
* `Angle`
* __Deletion__
* `Vector`
* `avmath.algebra.Vector.angle()` returns float
* changed location of vector product from `__pow__` to `cross`
* `pow` returns vector multiplied n times by itself
* `Straight`
* __Deletion__
* `Point` -> `Tuple`
* renamed `Point` to `Tuple`
* `AmountOfDimensionsError`
* __Deletion__
* `DimensionError`gets called instead.
* `MatrixMultiplicationError`
* __Deletion__
* `MatrixError` gets called instead
* `Matrix`
* `row`
* returns `Vector` type
* `column`
* returns `Vector` type
* `Structure`
* `circ` -> `circumference`
* renamed `circ` to `circumference`
* `analysis`
* `f` -> `Function`
* renamed `f` to `Function`
Minor changes
* `__all__` for `__init__.py`, `algebra.py` and `analysis.py`
* `__init__`
* imports time module
* new constant `_TAYLOR_DIFFERENCE` as minimal difference between results for taylor-loops with value `1e-16`
* new constant `_MAX_CALCULATION_TIME` for maximum calculation time in taylor-loops with value 5 seconds
* `fac`
* parameter `opt` for double faculty
* new function `_check_types`
* checks if all members of tuple are of specified types
* new constant `phi`
* for golden ratio
* new constant `gamma`
* for Euler-Mascheroni constant
* new function `sgn`
* for signum function
* new function `is_prime`
* checks whether integer is a prime
* new constant `two_digit_primes`
* contains all two digit primes
* new function `gcd`
* returns the greatest common divisor of two integers
* new function `lcm`
* returns the least common multiply of two integers
* new class `Fraction`
* handling of fractions, particularly in linear algebra
* see [Documentation](https://github.com/ballandt/avmath/wiki/Avmath-root#fraction) for all methods
* `analysis`
* `Function`
* new function `newton_method`
* for Newton's method from given x_n
* new function `root`
* returns all roots of the function in given domain
* new function `replace`
* allows `^` as power and coefficients
* new method `second_num_dif`
* numerical second differentiation
* `algebra`
* `Tuple`
* new method `truediv`
* returns tuple divided by scalar for less float inaccuracies
* new method `no_fractions`
* returns copy of `Tuple` with no fractions
* `Vector`
* new method `truediv`
* see `Tuple`
* new method `no_fractions`
* see `Tuple`
* `Matrix`
* new method `truediv`
* see `Tuple`
* new method `no_fractions`
* see `Tuple`
* new method `ref`
* returns row echelon form
* new method `rank`
* returns rank of the matrix
* new method `rref`
* returns reduced row echelon form of the matrix
Bug fixes
* `__init__`
* `fac`
* checks if input _can be interpreted_ as integer
* `ln` works properly and much faster
* trigonometric functions use `while`-loops and `_TAYLOR_DIFFERENCE` to calculate to the best return value possible
* `cos` works properly with negative values
* `algebra`
* `Matrix`
* `inverse`
* works more accurately due to fractions
* `arsinh`
* works in negative domain due to correct spelling of formula
* `artanh`
* does not allow value 1 only to crash afterwards
* `tanh`
* surpassing a value of 20 simply returns 1 instead of calculating (and crashing)
* `arcsin`
* new structure for formula
* does not crash at 710, but is stopped by the maximal time control
---