This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
tools:multi-maths [2019/05/20 13:53] – lightwolf | tools:multi-maths [2020/05/15 10:20] (current) – [Vector Computations] lightwolf | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== X-Maths | + | ====== X-Maths ====== |
- | {{ :tools:multi-maths_node_v01.png|}} | + | {{ :tools:x-maths_node_v01.png|}} |
Multi-Maths is a node that attempts to collect all maths functions in a single user interface and node to encourage experimenting with different calculations. | Multi-Maths is a node that attempts to collect all maths functions in a single user interface and node to encourage experimenting with different calculations. | ||
- | The node has two scalar inputs (X and Y) as well as two vector inputs (A and B). | + | The node has two scalar inputs (X and Y) as well as two vector inputs (A and B) and two matrix inputs ( M and N) |
- | The outputs (Scalar | + | The outputs (Scalar, Vector |
The inputs may be swapped around without reconnecting them. This, for example, turns X / Y into Y / X. | The inputs may be swapped around without reconnecting them. This, for example, turns X / Y into Y / X. | ||
- | {{ :tools:multi-maths_gui_v01.png|}} | + | {{ :tools:x-maths_gui_v01.png|}} |
===== Scalar Computations ===== | ===== Scalar Computations ===== | ||
+ | |||
+ | All of these computations results in a scalar value. | ||
+ | |||
^Scalar =^Description^ | ^Scalar =^Description^ | ||
- | |X + Y| | + | |X + Y|Adds two scalar values| |
- | |X - Y| | + | |X - Y|Subtracts two scalar values| |
- | |X * Y| | + | |X * Y|Multiplies two scalar values| |
- | |X / Y| | + | |X / Y|Divides two scalar values| |
- | |pow (X,Y)| | + | |pow (X,Y)|Raises X to the power of Y, X< |
- | |sqrt(X)| | + | |sqrt(X)|Returns the square root of X| |
- | |frac(X)| | + | |frac(X)|Returns the fractional part of X| |
- | |int(X)| | + | |int(X)|Returns the non-fractional (integer) part of X| |
- | |ceil(X)| | + | |ceil(X)|Rounds X up to the next integer| |
- | |floor(X)| | + | |floor(X)|Rounds X down to the previous integer| |
- | |fabs(X)| | + | |fabs(X)|The absolute of X| |
- | |fmod(X, | + | |fmod(X,Y)|The remainder of X/Y| |
- | |sin(X)| | + | |sin(X)|The sine of X, X is expected to be in radians| |
- | |cos(X)| | + | |cos(X)|The cosine of X, X is expected to be in radians| |
- | |tan(X)| | + | |tan(X)|The tangent of X, X is expected to be in radians| |
- | |asin(X)| | + | |asin(X)|The inverse sine of X, returned in radians| |
- | |acos(X)| | + | |acos(X)|The inverse cosine of X, returned in radians| |
- | |atan(X)| | + | |atan(X)|The inverse tangent of X, returned in radians| |
- | |atan(X / Y)| | + | |atan(X / Y)|The inverse sine of X/Y, returned in radians| |
- | |sinh(X)| | + | |sinh(X)|The hyperbolic sine of X, X is expected to be in radians| |
- | |cosh(X)| | + | |cosh(X)|The hyperbolic cosine of X, X is expected to be in radians| |
- | |tanh(X)| | + | |tanh(X)|The hyperbolic tangent of X, X is expected to be in radians| |
- | |exp(X)| | + | |exp(X)|Exponential function, returns e< |
- | |log(X)| | + | |log(X)|returns the logarithm of X| |
- | |log10(X)| | + | |log10(X)|returns the base 10 logarithm of X| |
- | |A . B (dot product)| | + | |A . B (dot product)|Returns the dot product of the vectors A & B| |
- | |length(A)| | + | |length(A)|Returns the length of vector A| |
+ | |-X|Inverts X| | ||
===== Vector Computations ===== | ===== Vector Computations ===== | ||
+ | |||
+ | These compute a vector result. | ||
^Vector =^Description^ | ^Vector =^Description^ | ||
- | |A + B| | + | |A + B|Adds two vectors| |
- | |A - B| | + | |A - B|Subtracts vector B from A| |
- | |A * B| | + | |A * B|Multiplies the components of two vectors| |
- | |A / B| | + | |A / B|Divides the components of A by the components of B| |
- | |A x B (cross product)| | + | |A x B (cross product)|Computes the cross product between two vectors, this results in a vector perpendicular to both of them| |
- | |A * X| | + | |A * X|Multiplies a vector by a scalar| |
- | |A / X| | + | |A / X|Divides a vector by a scalar| |
- | |normalize(A)| | + | |normalize(A)|Normalises vector A| |
+ | |A * M|Multiplies a vector by a matrix| | ||
+ | |||
+ | ===== Matrix Computations ===== | ||
+ | |||
+ | The result of these is a 4x4 matrix. | ||
+ | |||
+ | ^Matrix =^Description^ | ||
+ | |M * N| | ||
+ | |M + N| | ||
+ | |M - N| | ||
+ | |-M|Computes the inverse matrix | ||
+ | |M * X| | ||
---- | ---- |