Liking cljdoc? Tell your friends :D

provisdom.math.integrals


change-of-variableclj

(change-of-variable [a b])

Takes the num-interval and returns a map containing: ::multiplicative-fn ::converter-fn -- for within the function to integrate. ::intervals/finite-interval.

Takes the num-interval and returns a map containing:
`::multiplicative-fn`
`::converter-fn` -- for within the function to integrate.
`::intervals/finite-interval`.
sourceraw docstring

integrationclj

(integration number->tensor [a b])
(integration number->tensor
             [a b]
             {:keys [:provisdom.math.integrals/points :provisdom.math.core/accu
                     :provisdom.math.integrals/iter-interval]
              :or {accu m/dbl-close iter-interval [10 1000]}})

Returns the integral of a function number->tensor over the num-interval from a to b using global adaptive integration of the Gauss-Kronrod Quadrature Formula. Options: ::points -- 15, 21, 31, 41, 51, 61; default is 21 or 15 if num-interval is infinite ::m/accu -- default is m/dbl-close (accuracy is also adjusted for Gauss-Konrod quadrature type) ::iter-interval -- default is [10 1000].

Known Limitations: Very large absolute ranges (not infinite) can cause approximation errors due to limited rounded accuracy of the 'double' type. Example Problem: exp(-x^2) from -166 (or more negative) to Inf+ returns zero instead of sqrt of PI with default ::iter-interval and 51 ::points. Solution: use a change of variable, or increase minimum of ::iter-interval, or increase ::points.

Returns the integral of a function `number->tensor` over the num-interval
from `a` to `b` using global adaptive integration of the Gauss-Kronrod
Quadrature Formula.
Options:
  `::points` -- 15, 21, 31, 41, 51, 61; default is 21 or 15 if num-interval is
    infinite
  `::m/accu` -- default is m/*dbl-close* (accuracy is also adjusted for
    Gauss-Konrod quadrature type)
  `::iter-interval` -- default is [10 1000].

Known Limitations:
  Very large absolute ranges (not infinite) can cause approximation errors due
    to limited rounded accuracy of the 'double' type.
  Example Problem: exp(-x^2) from -166 (or more negative) to Inf+ returns zero
    instead of sqrt of PI with default `::iter-interval` and 51 `::points`.
  Solution: use a change of variable, or increase minimum of
    `::iter-interval`, or increase `::points`.
sourceraw docstring

non-rectangular-2D-integrationclj

(non-rectangular-2D-integration number2->tensor
                                outer-interval
                                outer->inner-interval)
(non-rectangular-2D-integration
  number2->tensor
  outer-interval
  outer->inner-interval
  {:keys [:provisdom.math.integrals/points :provisdom.math.core/accu
          :provisdom.math.integrals/iter-interval]
   :or {points 15 accu m/dbl-close iter-interval [10 1000]}
   :as props})

Returns the integral of a function number2->tensor over the outer and inner intervals using global adaptive integration of the Gauss-Kronrod Quadrature Formula. Use rectangular-integration for rectangular integration with numbers because that function is faster. number2->tensor should be a function of (outer, inner). outer-interval is [a b]. outer->inner-interval takes the outer number and returns an interval [c d]. Options: ::points -- 15, 21, 31, 41, 51, 61; default is 15 ::m/accu -- default is m/dbl-close per dimension (accuracy is adjusted for quadrature type) ::iter-interval -- default per dimension is [10 1000].

Returns the integral of a function `number2->tensor` over the outer and inner
intervals using global adaptive integration of the Gauss-Kronrod Quadrature
Formula. Use [[rectangular-integration]] for rectangular integration with
numbers because that function is faster. `number2->tensor` should be a
function of (outer, inner). `outer-interval` is [a b]. `outer->inner-interval`
takes the outer number and returns an interval [c d].
Options:
  `::points` -- 15, 21, 31, 41, 51, 61; default is 15
  `::m/accu` -- default is m/*dbl-close* per dimension (accuracy is adjusted
    for quadrature type)
  `::iter-interval` -- default per dimension is [10 1000].
sourceraw docstring

non-rectangular-3D-integrationclj

(non-rectangular-3D-integration number3->tensor
                                outer-interval
                                outer->middle-interval
                                outer+middle->inner-interval)
(non-rectangular-3D-integration
  number3->tensor
  outer-interval
  outer->middle-interval
  outer+middle->inner-interval
  {:keys [:provisdom.math.integrals/points :provisdom.math.core/accu
          :provisdom.math.integrals/iter-interval]
   :or {points 15 accu m/sgl-close iter-interval [3 300]}
   :as props})

Returns the integral of a function number3->tensor over the outer, middle, and inner intervals using global adaptive integration of the Gauss-Kronrod Quadrature Formula. Use rectangular-integration for rectangular integration with numbers because that function is faster. number3->tensor should be a function of (outer, middle, inner). outer-interval is [a b]. outer->middle-interval takes the outer number and returns an interval [c d]. outer+middle->inner-interval takes the outer and middle number and returns an interval [e f]. Options: ::points -- 15, 21, 31, 41, 51, 61; default is 15 ::m/accu -- default is m/sgl-close per dimension (accuracy is adjusted for quadrature type) ::iter-interval -- default per dimension is [3 300].

Returns the integral of a function `number3->tensor` over the outer, middle,
and inner intervals using global adaptive integration of the Gauss-Kronrod
Quadrature Formula. Use [[rectangular-integration]] for rectangular
integration with numbers because that function is faster. `number3->tensor`
should be a function of (outer, middle, inner). `outer-interval` is [a b].
`outer->middle-interval` takes the outer number and returns an interval [c d].
`outer+middle->inner-interval` takes the outer and middle number and returns
an interval [e f]. Options:
  `::points` -- 15, 21, 31, 41, 51, 61; default is 15
  `::m/accu` -- default is m/*sgl-close* per dimension (accuracy is adjusted
    for quadrature type)
  `::iter-interval` -- default per dimension is [3 300].
sourceraw docstring

non-rectangular-4D-integrationclj

(non-rectangular-4D-integration number4->tensor
                                outer-interval
                                outer->outer-middle-interval
                                outer+outer-middle->inner-middle-interval
                                outer+outer-middle+inner-middle->inner-interval)
(non-rectangular-4D-integration
  number4->tensor
  outer-interval
  outer->outer-middle-interval
  outer+outer-middle->inner-middle-interval
  outer+outer-middle+inner-middle->inner-interval
  {:keys [:provisdom.math.integrals/points :provisdom.math.core/accu
          :provisdom.math.integrals/iter-interval]
   :or {points 15 accu m/sgl-close iter-interval [2 200]}
   :as props})

Returns the integral of a function number4->tensor over the outer, outer-middle, outer-inner, and inner intervals using global adaptive integration of the Gauss-Kronrod Quadrature Formula. Use rectangular-integration for rectangular integration with numbers because that function is faster. number4->tensor should be a function of (outer, outer-middle, inner-middle, inner). outer-interval is [a b]. outer->outer-middle-interval takes the outer number and returns an interval [c d]. outer+outer-middle->inner-middle-interval takes the outer and outer-middle number and returns an interval [e f]. outer+outer-middle+inner-middle->inner-interval takes the outer, outer-middle, and inner-middle numbers and returns and interval [g h]. Options: ::points -- 15, 21, 31, 41, 51, 61; default is 15 ::m/accu -- default is m/sgl-close per dimension (accuracy is adjusted for quadrature type) ::iter-interval -- default per dimension is [2 200].

Returns the integral of a function `number4->tensor` over the outer,
outer-middle, outer-inner, and inner intervals using global adaptive
integration of the Gauss-Kronrod Quadrature Formula. Use
[[rectangular-integration]] for rectangular integration with numbers because
that function is faster. `number4->tensor` should be a function of (outer,
outer-middle, inner-middle, inner). `outer-interval` is [a b].
`outer->outer-middle-interval` takes the outer number and returns an interval
[c d]. `outer+outer-middle->inner-middle-interval` takes the outer and
outer-middle number and returns an interval [e f].
`outer+outer-middle+inner-middle->inner-interval` takes the outer,
outer-middle, and inner-middle numbers and returns and interval [g h].
Options:
  `::points` -- 15, 21, 31, 41, 51, 61; default is 15
  `::m/accu` -- default is m/*sgl-close* per dimension (accuracy is adjusted
    for quadrature type)
  `::iter-interval` -- default per dimension is [2 200].
sourceraw docstring

rectangular-integrationclj

(rectangular-integration v->tensor num-intervals)
(rectangular-integration v->tensor
                         num-intervals
                         {:keys [:provisdom.math.integrals/points
                                 :provisdom.math.core/accu
                                 :provisdom.math.integrals/iter-interval]
                          :or {points 15 iter-interval [10 1000]}})

Returns the integral of a function v->tensor over the rectangular num-intervals using global adaptive integration of the Gauss-Kronrod Quadrature Formula. v->tensor takes a vector with one element for each num-interval and returns a tensor. Options: ::points -- 15, 21, 31, 41, 51, 61; default is 15 ::m/accu -- default is m/dbl-close and (m/sgl-close for 4+ variables or for 3+ variables if any num-interval is infinite) (accuracy is also adjusted for for Gauss-Konrod quadrature type) ::iter-interval -- default is [10 1000].

Known Limitations: With more than 4 dimensions, use Monte Carlo simulation instead for speed. Very large absolute ranges (not infinite) can cause approximation errors due to limited rounded accuracy of the 'double' type.

Returns the integral of a function `v->tensor` over the rectangular
`num-intervals` using global adaptive integration of the Gauss-Kronrod
Quadrature Formula. `v->tensor` takes a vector with one element for each
num-interval and returns a tensor.
Options:
  `::points` -- 15, 21, 31, 41, 51, 61; default is 15
  `::m/accu` -- default is m/*dbl-close* and (m/*sgl-close* for 4+ variables
    or for 3+ variables if any num-interval is infinite) (accuracy is also
    adjusted for for Gauss-Konrod quadrature type)
  `::iter-interval` -- default is [10 1000].

Known Limitations:
  With more than 4 dimensions, use Monte Carlo simulation instead for speed.
  Very large absolute ranges (not infinite) can cause approximation errors due
    to limited rounded accuracy of the 'double' type.
sourceraw docstring

cljdoc is a website building & hosting documentation for Clojure/Script libraries

× close