Math functions: Difference between revisions

From Master of Neuroscience Wiki
Created page with "== The goal == Matrices alone are useless. We need some math functions to act upon them. Questions to [mailto:davrot@uni-bremen.de David Rotermund] '''I will focus on the important ones. Those will get a link.''' == [https://numpy.org/doc/stable/reference/routines.math.html#trigonometric-functions Trigonometric functions] == {| class="wikitable" |[https://numpy.org/doc/stable/reference/generated/numpy.sin.html#numpy.sin sin](x, /[, out, where, casting, order, …]) |T..."
 
No edit summary
 
Line 1: Line 1:
== The goal ==
Matrices alone are useless. We need some math functions to act upon them.
Matrices alone are useless. We need some math functions to act upon them.



Latest revision as of 16:44, 17 October 2025

Matrices alone are useless. We need some math functions to act upon them.

Questions to David Rotermund

I will focus on the important ones. Those will get a link.

Trigonometric functions

sin(x, /[, out, where, casting, order, …]) Trigonometric sine, element-wise.
cos(x, /[, out, where, casting, order, …]) Cosine element-wise.
tan(x, /[, out, where, casting, order, …]) Compute tangent element-wise.
arcsin(x, /[, out, where, casting, order, …]) Inverse sine, element-wise.
arccos(x, /[, out, where, casting, order, …]) Trigonometric inverse cosine, element-wise.
arctan(x, /[, out, where, casting, order, …]) Trigonometric inverse tangent, element-wise.
hypot(x1, x2, /[, out, where, casting, …]) Given the “legs” of a right triangle, return its hypotenuse.
arctan2(x1, x2, /[, out, where, casting, …]) Element-wise arc tangent of x1/x2 choosing the quadrant correctly.
degrees(x, /[, out, where, casting, order, …]) Convert angles from radians to degrees.
radians(x, /[, out, where, casting, order, …]) Convert angles from degrees to radians.
unwrap(p[, discont, axis, period]) Unwrap by taking the complement of large deltas with respect to the period.
deg2rad(x, /[, out, where, casting, order, …]) Convert angles from degrees to radians.
rad2deg(x, /[, out, where, casting, order, …]) Convert angles from radians to degrees.

Hyperbolic functions

sinh(x, /[, out, where, casting, order, …]) Hyperbolic sine, element-wise.
cosh(x, /[, out, where, casting, order, …]) Hyperbolic cosine, element-wise.
tanh(x, /[, out, where, casting, order, …]) Compute hyperbolic tangent element-wise.
arcsinh(x, /[, out, where, casting, order, …]) Inverse hyperbolic sine element-wise.
arccosh(x, /[, out, where, casting, order, …]) Inverse hyperbolic cosine, element-wise.
arctanh(x, /[, out, where, casting, order, …]) Inverse hyperbolic tangent element-wise.

Rounding

round(a[, decimals, out]) Evenly round to the given number of decimals.
around(a[, decimals, out]) Round an array to the given number of decimals.
rint(x, /[, out, where, casting, order, …]) Round elements of the array to the nearest integer.
fix(x[, out]) Round to nearest integer towards zero.
floor(x, /[, out, where, casting, order, …]) Return the floor of the input, element-wise.
ceil(x, /[, out, where, casting, order, …]) Return the ceiling of the input, element-wise.
trunc(x, /[, out, where, casting, order, …]) Return the truncated value of the input, element-wise.

Sums, products, differences

prod(a[, axis, dtype, out, keepdims, …]) Return the product of array elements over a given axis.
sum(a[, axis, dtype, out, keepdims, …]) Sum of array elements over a given axis.
nanprod(a[, axis, dtype, out, keepdims, …]) Return the product of array elements over a given axis treating Not a Numbers (NaNs) as ones.
nansum(a[, axis, dtype, out, keepdims, …]) Return the sum of array elements over a given axis treating Not a Numbers (NaNs) as zero.
cumprod(a[, axis, dtype, out]) Return the cumulative product of elements along a given axis.
cumsum(a[, axis, dtype, out]) Return the cumulative sum of the elements along a given axis.
nancumprod(a[, axis, dtype, out]) Return the cumulative product of array elements over a given axis treating Not a Numbers (NaNs) as one.
nancumsum(a[, axis, dtype, out]) Return the cumulative sum of array elements over a given axis treating Not a Numbers (NaNs) as zero.
diff(a[, n, axis, prepend, append]) Calculate the n-th discrete difference along the given axis.
ediff1d(ary[, to_end, to_begin]) The differences between consecutive elements of an array.
gradient(f, *varargs[, axis, edge_order]) Return the gradient of an N-dimensional array.
cross(a, b[, axisa, axisb, axisc, axis]) Return the cross product of two (arrays of) vectors.
trapz(y[, x, dx, axis]) Integrate along the given axis using the composite trapezoidal rule.

Exponents and logarithms

exp(x, /[, out, where, casting, order, …]) Calculate the exponential of all elements in the input array.
expm1(x, /[, out, where, casting, order, …]) Calculate exp(x) - 1 for all elements in the array.
exp2(x, /[, out, where, casting, order, …]) Calculate 2**p for all p in the input array.
log(x, /[, out, where, casting, order, …]) Natural logarithm, element-wise.
log10(x, /[, out, where, casting, order, …]) Return the base 10 logarithm of the input array, element-wise.
log2(x, /[, out, where, casting, order, …]) Base-2 logarithm of x.
log1p(x, /[, out, where, casting, order, …]) Return the natural logarithm of one plus the input array, element-wise.
logaddexp(x1, x2, /[, out, where, casting, …]) Logarithm of the sum of exponentiations of the inputs.
logaddexp2(x1, x2, /[, out, where, casting, …]) Logarithm of the sum of exponentiations of the inputs in base-2.

Other special functions

i0(x) Modified Bessel function of the first kind, order 0.
sinc(x) Return the normalized sinc function.

Floating point routines

signbit(x, /[, out, where, casting, order, …]) Returns element-wise True where signbit is set (less than zero).
copysign(x1, x2, /[, out, where, casting, …]) Change the sign of x1 to that of x2, element-wise.
frexp(x[, out1, out2], / [[, out, where, …]) Decompose the elements of x into mantissa and twos exponent.
ldexp(x1, x2, /[, out, where, casting, …]) Returns x1 * 2**x2, element-wise.
nextafter(x1, x2, /[, out, where, casting, …]) Return the next floating-point value after x1 towards x2, element-wise.
spacing(x, /[, out, where, casting, order, …]) Return the distance between x and the nearest adjacent number.

Rational routines

lcm(x1, x2, /[, out, where, casting, order, …]) x1| and |x2|
gcd(x1, x2, /[, out, where, casting, order, …]) x1| and |x2|

Arithmetic operations

add(x1, x2, /[, out, where, casting, order, …]) Add arguments element-wise.
reciprocal(x, /[, out, where, casting, …]) Return the reciprocal of the argument, element-wise.
positive(x, /[, out, where, casting, order, …]) Numerical positive, element-wise.
negative(x, /[, out, where, casting, order, …]) Numerical negative, element-wise.
multiply(x1, x2, /[, out, where, casting, …]) Multiply arguments element-wise.
divide(x1, x2, /[, out, where, casting, …]) Divide arguments element-wise.
power(x1, x2, /[, out, where, casting, …]) First array elements raised to powers from second array, element-wise.
subtract(x1, x2, /[, out, where, casting, …]) Subtract arguments, element-wise.
true_divide(x1, x2, /[, out, where, …]) Divide arguments element-wise.
floor_divide(x1, x2, /[, out, where, …]) Return the largest integer smaller or equal to the division of the inputs.
float_power(x1, x2, /[, out, where, …]) First array elements raised to powers from second array, element-wise.
fmod(x1, x2, /[, out, where, casting, …]) Returns the element-wise remainder of division.
mod(x1, x2, /[, out, where, casting, order, …]) Returns the element-wise remainder of division.
modf(x[, out1, out2], / [[, out, where, …]) Return the fractional and integral parts of an array, element-wise.
remainder(x1, x2, /[, out, where, casting, …]) Returns the element-wise remainder of division.
divmod(x1, x2[, out1, out2], / [[, out, …]) Return element-wise quotient and remainder simultaneously.

Handling complex numbers

angle(z[, deg]) Return the angle of the complex argument.
real(val) Return the real part of the complex argument.
imag(val) Return the imaginary part of the complex argument.
conj(x, /[, out, where, casting, order, …]) Return the complex conjugate, element-wise.
conjugate(x, /[, out, where, casting, …]) Return the complex conjugate, element-wise.

Extrema Finding

maximum(x1, x2, /[, out, where, casting, …]) Element-wise maximum of array elements.
max(a[, axis, out, keepdims, initial, where]) Return the maximum of an array or maximum along an axis.
amax(a[, axis, out, keepdims, initial, where]) Return the maximum of an array or maximum along an axis.
fmax(x1, x2, /[, out, where, casting, …]) Element-wise maximum of array elements.
nanmax(a[, axis, out, keepdims, initial, where]) Return the maximum of an array or maximum along an axis, ignoring any NaNs.
minimum(x1, x2, /[, out, where, casting, …]) Element-wise minimum of array elements.
min(a[, axis, out, keepdims, initial, where]) Return the minimum of an array or minimum along an axis.
amin(a[, axis, out, keepdims, initial, where]) Return the minimum of an array or minimum along an axis.
fmin(x1, x2, /[, out, where, casting, …]) Element-wise minimum of array elements.
nanmin(a[, axis, out, keepdims, initial, where]) Return minimum of an array or minimum along an axis, ignoring any NaNs.

Miscellaneous

convolve(a, v[, mode]) Returns the discrete, linear convolution of two one-dimensional sequences.
clip(a, a_min, a_max[, out]) Clip (limit) the values in an array.
sqrt(x, /[, out, where, casting, order, …]) Return the non-negative square-root of an array, element-wise.
cbrt(x, /[, out, where, casting, order, …]) Return the cube-root of an array, element-wise.
square(x, /[, out, where, casting, order, …]) Return the element-wise square of the input.
absolute(x, /[, out, where, casting, order, …]) Calculate the absolute value element-wise.
fabs(x, /[, out, where, casting, order, …]) Compute the absolute values element-wise.
sign(x, /[, out, where, casting, order, …]) Returns an element-wise indication of the sign of a number.
heaviside(x1, x2, /[, out, where, casting, …]) Compute the Heaviside step function.
nan_to_num(x[, copy, nan, posinf, neginf]) Replace NaN with zero and infinity with large finite numbers (default behaviour) or with the numbers defined by the user using the nan, posinf and/or neginf keywords.
real_if_close(a[, tol]) If input is complex with all imaginary parts close to zero, return real parts.
interp(x, xp, fp[, left, right, period]) One-dimensional linear interpolation for monotonically increasing sample points.