factor/library/math/vectors.facts

91 lines
4.7 KiB
Plaintext
Raw Normal View History

2006-01-12 00:34:56 -05:00
USING: help math ;
2006-08-16 21:55:53 -04:00
HELP: vneg
2006-01-12 00:34:56 -05:00
{ $values { "u" "a sequence of numbers" } { "v" "a sequence of numbers" } }
{ $description "Negates each element of " { $snippet "u" } "." } ;
2006-08-16 21:55:53 -04:00
HELP: n*v
2006-01-12 00:34:56 -05:00
{ $values { "n" "a number" } { "u" "a sequence of numbers" } { "v" "a sequence of numbers" } }
{ $description "Multiplies each element of " { $snippet "u" } " by " { $snippet "n" } "." } ;
2006-08-16 21:55:53 -04:00
HELP: v*n
2006-01-12 00:34:56 -05:00
{ $values { "n" "a number" } { "u" "a sequence of numbers" } { "v" "a sequence of numbers" } }
{ $description "Multiplies each element of " { $snippet "u" } " by " { $snippet "n" } "." } ;
2006-08-16 21:55:53 -04:00
HELP: n/v
2006-01-12 00:34:56 -05:00
{ $values { "n" "a number" } { "u" "a sequence of numbers" } { "v" "a sequence of numbers" } }
{ $description "Divides " { $snippet "n" } " by each element of " { $snippet "u" } "." } ;
2006-08-16 21:55:53 -04:00
HELP: v/n
{ $values { "u" "a sequence of numbers" } { "n" "a number" } { "v" "a sequence of numbers" } }
2006-01-12 00:34:56 -05:00
{ $description "Divides each element of " { $snippet "u" } " by " { $snippet "n" } "." } ;
2006-08-16 21:55:53 -04:00
HELP: v+
2006-01-12 00:34:56 -05:00
{ $values { "u" "a sequence of numbers" } { "v" "a sequence of numbers" } { "w" "a sequence of numbers" } }
{ $description "Adds " { $snippet "u" } " and " { $snippet "v" } " component-wise." } ;
2006-08-16 21:55:53 -04:00
HELP: v-
2006-01-12 00:34:56 -05:00
{ $values { "u" "a sequence of numbers" } { "v" "a sequence of numbers" } { "w" "a sequence of numbers" } }
{ $description "Subtracts " { $snippet "v" } " from " { $snippet "u" } " component-wise." } ;
2006-08-16 21:55:53 -04:00
HELP: v*
2006-01-12 00:34:56 -05:00
{ $values { "u" "a sequence of numbers" } { "v" "a sequence of numbers" } { "w" "a sequence of numbers" } }
{ $description "Multiplies " { $snippet "u" } " and " { $snippet "v" } " component-wise." } ;
2006-08-16 21:55:53 -04:00
HELP: v/
2006-01-12 00:34:56 -05:00
{ $values { "u" "a sequence of numbers" } { "v" "a sequence of numbers" } { "w" "a sequence of numbers" } }
{ $description "Divides " { $snippet "u" } " by " { $snippet "v" } " component-wise." }
{ $errors "Throws an error if an integer division by zero occurs." } ;
2006-08-16 21:55:53 -04:00
HELP: vmax
2006-01-12 00:34:56 -05:00
{ $values { "u" "a sequence of real numbers" } { "v" "a sequence of real numbers" } { "w" "a sequence of real numbers" } }
{ $description "Creates a sequence where each element is the maximum of the corresponding elements from " { $snippet "u" } " andd " { $snippet "v" } "." }
{ $examples { $example "{ 1 2 5 } { -7 6 3 } vmax ." "{ 1 6 5 }" } } ;
2006-08-16 21:55:53 -04:00
HELP: vmin
2006-01-12 00:34:56 -05:00
{ $values { "u" "a sequence of real numbers" } { "v" "a sequence of real numbers" } { "w" "a sequence of real numbers" } }
{ $description "Creates a sequence where each element is the minimum of the corresponding elements from " { $snippet "u" } " andd " { $snippet "v" } "." }
{ $examples { $example "{ 1 2 5 } { -7 6 3 } vmin ." "{ -7 2 3 }" } } ;
2006-08-16 21:55:53 -04:00
HELP: v.
{ $values { "u" "a sequence of real numbers" } { "v" "a sequence of real numbers" } { "x" "a real number" } }
2006-01-12 00:34:56 -05:00
{ $description "Computes the real-valued dot product." }
{ $notes
"This word can also take complex number sequences as input, however mathematically it will compute the wrong result. The complex-valued dot product is defined differently:"
{ $snippet "0 [ conjugate * + ] 2reduce" }
} ;
2006-08-16 21:55:53 -04:00
HELP: norm-sq
{ $values { "v" "a sequence of numbers" } { "x" "a non-negative real number" } }
2006-01-12 00:34:56 -05:00
{ $description "Computes the squared length of a mathematical vector." } ;
2006-08-16 21:55:53 -04:00
HELP: norm
{ $values { "v" "a sequence of numbers" } { "x" "a non-negative real number" } }
2006-01-12 00:34:56 -05:00
{ $description "Computes the length of a mathematical vector." } ;
2006-08-17 23:08:04 -04:00
HELP: normalize
2006-01-12 00:34:56 -05:00
{ $values { "u" "a sequence of numbers" } { "v" "a sequence of numbers" } }
{ $description "Computes a mathematical vector with the same direction but length 1." }
{ $errors "Throws an error if " { $snippet "v" } " has zero length." } ;
2006-08-16 21:55:53 -04:00
HELP: set-axis
2006-01-12 00:34:56 -05:00
{ $values { "u" "a sequence of numbers" } { "v" "a sequence of numbers" } { "w" "a sequence of numbers" } }
{ $description "Using " { $snippet "w" } " as a template, creates a new sequence containing corresponding elements from " { $snippet "x" } " in place of 0, and corresponding elements from " { $snippet "y" } " in place of 1." }
{ $examples { $example "{ 1 2 3 } { 4 5 6 } { 0 1 0 } set-axis ." "{ 1 5 3 }" } } ;
2006-08-16 21:55:53 -04:00
HELP: sum
{ $values { "seq" "a sequence of numbers" } { "n" "a number" } }
{ $description "Outputs the sum of all elements of " { $snippet "seq" } ". Outputs zero given an empty sequence." } ;
HELP: product
{ $values { "seq" "a sequence of numbers" } { "n" "a number" } }
{ $description "Outputs the product of all elements of " { $snippet "seq" } ". Outputs one given an empty sequence." } ;
HELP: infimum
{ $values { "seq" "a sequence of real numbers" } { "n" "a number" } }
{ $description "Outputs the least element of " { $snippet "seq" } ". Outputs positive infinity given an empty sequence." } ;
HELP: supremum
{ $values { "seq" "a sequence of real numbers" } { "n" "a number" } }
{ $description "Outputs the greatest element of " { $snippet "seq" } ". Outputs negative infinity given an empty sequence." } ;