diff --git a/CHANGELOG.md b/CHANGELOG.md index 4650c097..c913fcde 100755 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,7 +1,7 @@ # Change Log All notable changes to this project will be documented in this file. This change log follows the conventions of [keepachangelog.com](http://keepachangelog.com/). -## [0.1.2-SNAPSHOT] +## [1.0.0] ### Added diff --git a/README.md b/README.md index 562c75ce..5309c170 100644 --- a/README.md +++ b/README.md @@ -7,13 +7,7 @@ Originally it was a part of generative art/glich [Clojure2d](https://github.com/ ## Installation ```clojure -[generateme/fastmath "0.1.1"] -``` - -Dev version - -```clojure -[generateme/fastmath "0.1.2-SNAPSHOT"] +[generateme/fastmath "1.0.0"] ``` ## Documentation @@ -136,7 +130,7 @@ Java classes are compiled for java 1.8 * Change images to plots with axes * More tests -* Move vector fields and signal processing from Clojure2d/extra +* Move vector fields ## How To Help diff --git a/docs/fastmath.complex.html b/docs/fastmath.complex.html index 1d2eadd6..f49833e3 100755 --- a/docs/fastmath.complex.html +++ b/docs/fastmath.complex.html @@ -1,6 +1,6 @@ -fastmath.complex documentation

fastmath.complex

Complex numbers functions.

+fastmath.complex documentation

fastmath.complex

Complex numbers functions.

Complex number is represented as Vec2 type (from clojure2d.math.vector namespace).

To create complex number use complex, vec2 or ->Vec2.

Simplified implementation based on Apache Commons Math. Functions don’t check NaNs or INF values.

diff --git a/docs/fastmath.core.html b/docs/fastmath.core.html index a929cc86..ba7d4812 100755 --- a/docs/fastmath.core.html +++ b/docs/fastmath.core.html @@ -1,6 +1,6 @@ -fastmath.core documentation

fastmath.core

Collection of fast math functions and plethora of constants known from other math libraries.

+fastmath.core documentation

fastmath.core

Collection of fast math functions and plethora of constants known from other math libraries.

Primitive math operators

Based on Primitive Math by Zach Tellman several operators are introduced and replace clojure.core functions. All operators are macros and can’t be used as functions. List includes:

Known from Clojure: * + - / > < >= <= == rem quot mod bit-or bit-and bit-xor bit-not bit-shift-left bit-shift-right unsigned-bit-shift-right inc dec zero? neg? pos? min max even? odd?

@@ -195,13 +195,13 @@

Other functions

(sample sq 1 5 5) ;;=> (1.0 4.0 9.0 16.0 25.0)

sec

(sec v)

Secant

Examples

Plot of sec

sech

(sech v)

Hyperbolic secant

Examples

Plot of sech

seq->double-array

(seq->double-array vs)

Convert sequence to double-array.

If sequence is double-array do not convert.

Examples

Convert

(seq->double-array [1 2 3])
-;;=> [D@5d58beef
+;;=> [D@72143dfe
 (seq (seq->double-array [1 2 3]))
 ;;=> (1.0 2.0 3.0)
 (double-array->seq (seq->double-array [1 2 3]))
 ;;=> (1.0 2.0 3.0)

seq->double-double-array

(seq->double-double-array vss)

Convert sequence to double-array of double-arrays.

If sequence is double-array of double-arrays do not convert

Examples

Convert

(seq->double-double-array [[1 2] [3 4]])
-;;=> [[D@51394772
+;;=> [[D@6a57e01d
 (double-double-array->seq (seq->double-double-array [[1 2] [3 4]]))
 ;;=> ((1.0 2.0) (3.0 4.0))

sfrac

(sfrac v)

Fractional part, always returns values from -1.0 to 1.0 (exclusive). See frac for unsigned version.

Examples

Examples

(sfrac 0.555)
 ;;=> 0.555
diff --git a/docs/fastmath.easings.html b/docs/fastmath.easings.html
index 64050c4e..6211e870 100755
--- a/docs/fastmath.easings.html
+++ b/docs/fastmath.easings.html
@@ -1,6 +1,6 @@
 
-fastmath.easings documentation

fastmath.easings

Easing functions.

+fastmath.easings documentation

fastmath.easings

Easing functions.

List of all are in easings-list.

Code snippets

Save incanter graph

(defn save-graph
   [f params & opts]
   (let [fname (str "images/e/" (first opts) ".png")]
diff --git a/docs/fastmath.fields.html b/docs/fastmath.fields.html
index e6132a9e..2699f50f 100755
--- a/docs/fastmath.fields.html
+++ b/docs/fastmath.fields.html
@@ -1,6 +1,6 @@
 
-fastmath.fields documentation

fastmath.fields

Vector field functions.

+fastmath.fields documentation

fastmath.fields

Vector field functions.

Vector fields are functions R^2->R^2.

Names are taken from fractal flames world where such fields are call variations. Most implementations are taken from JWildfire software.

Creation

@@ -70,7 +70,7 @@

Combinations

  • :angles - vector field from angles
  • See random-configuration for example.

    Examples

    Create random combination

    (let [f (combine)] (f (v/vec2 -0.5 0.5)))
    -;;=> #vec2 [0.6741473813480021, 0.38662762303139153]

    Create combination for given configuration

    (let [conf {:type :operation,
    +;;=> #vec2 [0.900191726808197, 2.356194490192345]

    Create combination for given configuration

    (let [conf {:type :operation,
                 :name :comp,
                 :var1 {:type :variation,
                        :name :blocky,
    @@ -96,22 +96,22 @@ 

    Combinations

    ;;=> 1.5302948024685854

    field

    multimethod

    Return vector field for given name and options: amount (scaling factor) and parametrization.

    Default scaling factor is 1.0, default parametrization is random.

    Resulting function operates on Vec2 type.

    Examples

    Get vector field by name

    (field :sinusoidal)
    -;;=> fastmath.fields$make_sinusoidal$fn__10985@5c15e5f7
    +;;=> fastmath.fields$make_sinusoidal$fn__10985@20459a8c
     ((field :sinusoidal) (v/vec2 m/HALF_PI m/HALF_PI))
     ;;=> #vec2 [1.0, 1.0]

    Get vector field by name and scale

    (field :sinusoidal 0.5)
    -;;=> fastmath.fields$make_sinusoidal$fn__10985@59bbc16
    +;;=> fastmath.fields$make_sinusoidal$fn__10985@5adaa8a5
     ((field :sinusoidal 0.5) (v/vec2 m/HALF_PI m/HALF_PI))
     ;;=> #vec2 [0.5, 0.5]

    Apply parametrization

    (let [params (parametrization :cpow3)
           f (field :cpow3 1.0 params)]
       {:parametrization params, :value (f (v/vec2 -1.0 1.0))})
    -;;=> {:parametrization {:a 0.9284980493941015,
    -;;=>                    :discrete-spread 0.7523397310488038,
    -;;=>                    :divisor 0.1479716654236646,
    -;;=>                    :offset2 0.7856762036698974,
    -;;=>                    :r 0.15972930163930155,
    -;;=>                    :spread 1.8544955909741334,
    -;;=>                    :spread2 0.2044971898236998},
    -;;=>  :value #vec2 [0.01646361352909438, -0.02537121473871867]}

    fields-list

    Examples

    List of all vector field names.

    (sort fields-list)
    +;;=> {:parametrization {:a -1.4801792495439008,
    +;;=>                    :discrete-spread -0.5523513144642497,
    +;;=>                    :divisor 1.8108045401312511,
    +;;=>                    :offset2 -0.24116594833311034,
    +;;=>                    :r 1.2777466468571959,
    +;;=>                    :spread 0.5298508465749648,
    +;;=>                    :spread2 -0.1063172474833527},
    +;;=>  :value #vec2 [0.892583823438129, -0.006980184890476318]}

    fields-list

    Examples

    List of all vector field names.

    (sort fields-list)
     ;;=> (:arch
     ;;=>  :asteria
     ;;=>  :atan :auger
    @@ -274,72 +274,55 @@ 

    Combinations

    Optinally you can pass part of the parametrization. In this case function will add remaining keys with randomly generated values.

    If field doesn’t have parametrization, empty map will be returned.

    See field.

    Examples

    Get random parametrization for given field

    (parametrization :auger)
    -;;=> {:freq -2.834029212823601,
    -;;=>  :scale 1.4475951323678728,
    -;;=>  :sym -1.0778231366575053,
    -;;=>  :weight 0.30027579102591284}

    Add lacking fields

    (parametrization :auger {:scale 1.0, :freq 1.0})
    +;;=> {:freq -3.3090272736543502,
    +;;=>  :scale 0.6846782051128593,
    +;;=>  :sym 0.759167177404489,
    +;;=>  :weight -0.3217995869971766}

    Add lacking fields

    (parametrization :auger {:scale 1.0, :freq 1.0})
     ;;=> {:freq 1.0,
     ;;=>  :scale 1.0,
    -;;=>  :sym -1.9056211915442827,
    -;;=>  :weight 0.5913584484730507}

    Returns empty map when field doesn’t have parametrization

    (parametrization :sinusoidal)
    +;;=>  :sym -0.1438553364483921,
    +;;=>  :weight -0.8027908463897253}

    Returns empty map when field doesn’t have parametrization

    (parametrization :sinusoidal)
     ;;=> {}

    random-configuration

    (random-configuration)(random-configuration depth)(random-configuration depth f)

    Create random configuration for combine function. Optionally with depth (0 = only root is created).

    See combine for structure.

    Bind *skip-random-fields* to true to exclude fields which are random.

    Examples

    Generate random configuration

    (random-configuration)
     ;;=> {:amount 1.0,
    +;;=>  :config {:a -1.1178466389051778,
    +;;=>           :b -0.9085878300203412,
    +;;=>           :c 0.3013813589183245,
    +;;=>           :d -0.012929664932459062,
    +;;=>           :inside true,
    +;;=>           :shape 7},
    +;;=>  :name :hole2,
    +;;=>  :type :variation}

    One node configuration

    (random-configuration 0)
    +;;=> {:amount 1.0, :config {}, :name :invtree, :type :variation}

    Configuration with depth 2

    (random-configuration 2)
    +;;=> {:amount 1.0,
     ;;=>  :name :comp,
     ;;=>  :type :operation,
     ;;=>  :var1 {:amount 1.0,
    -;;=>         :name :add,
    +;;=>         :name :comp,
     ;;=>         :type :operation,
    -;;=>         :var1 {:amount 0.317993143873732,
    -;;=>                :config {:x 1.3280065957904936, :y 1.262174786282526},
    -;;=>                :name :splits,
    +;;=>         :var1 {:amount 1.0,
    +;;=>                :config {:i -0.4619830659037598,
    +;;=>                         :power 4.27443162027975,
    +;;=>                         :r -1.4767543755603034},
    +;;=>                :name :cpow,
     ;;=>                :type :variation},
    -;;=>         :var2 {:amount 0.7027146844737944,
    -;;=>                :config {:scale 0.6551997725905991,
    -;;=>                         :size -0.3814087476735846},
    -;;=>                :name :blurpixelize,
    -;;=>                :type :variation}},
    -;;=>  :var2 {:amount 1.0,
    -;;=>         :config {:area-x -0.5710602925276899,
    -;;=>                  :area-y -1.6745101297270022,
    -;;=>                  :center-x -0.29515423539565866,
    -;;=>                  :center-y 0.9228000818712152,
    -;;=>                  :delta-x 3.454060563697908,
    -;;=>                  :delta-y 3.200412668245601,
    -;;=>                  :gamma 2.7134455070767194,
    -;;=>                  :square #},
    -;;=>         :name :gdoffs,
    -;;=>         :type :variation}}

    One node configuration

    (random-configuration 0)
    -;;=> {:amount 1.0,
    -;;=>  :config {:stretch 1.9498420307717055},
    -;;=>  :name :csin,
    -;;=>  :type :variation}

    Configuration with depth 2

    (random-configuration 2)
    -;;=> {:amount 0.5249492506976801,
    -;;=>  :name :add,
    -;;=>  :type :operation,
    -;;=>  :var1 {:amount -1.282564871968808,
    -;;=>         :config {:angle -4.139983434974827},
    -;;=>         :name :radialblur,
    -;;=>         :type :variation},
    -;;=>  :var2 {:amount -0.6223811750461312,
    -;;=>         :config {:stretch -1.1534356586589611},
    -;;=>         :name :csin,
    -;;=>         :type :variation}}

    randomize-configuration

    (randomize-configuration f)

    Randomize values for given configuration. Keeps structure untouched.

    Examples

    Usage

    (let [conf {:type :variation,
    +;;=>         :var2
    +;;=>         {:amount 1.0, :config {}, :name :heart, :type :variation}},
    +;;=>  :var2 {:amount 1.0, :config {}, :name :fisheye, :type :variation}}

    randomize-configuration

    (randomize-configuration f)

    Randomize values for given configuration. Keeps structure untouched.

    Examples

    Usage

    (let [conf {:type :variation,
                 :name :blocky,
                 :amount 1.0,
                 :config {:x -1.4, :y 0.9, :mp 2.6}}]
       [(randomize-configuration conf) (randomize-configuration conf)])
     ;;=> [{:amount 1.0,
    -;;=>   :config {:mp -3.0261871247794443,
    -;;=>            :x 0.8948143297301634,
    -;;=>            :y 1.4982241799022784},
    +;;=>   :config
    +;;=>   {:mp 4.364146710177446, :x -1.497364993663199, :y 0.87113176452678},
     ;;=>   :name :blocky,
     ;;=>   :type :variation}
     ;;=>  {:amount 1.0,
    -;;=>   :config {:mp -4.320957736019763,
    -;;=>            :x 0.5113965543053611,
    -;;=>            :y -0.7869372078038088},
    +;;=>   :config {:mp -3.3912091459058704,
    +;;=>            :x -1.2238026763956256,
    +;;=>            :y -1.4674849694976613},
     ;;=>   :name :blocky,
     ;;=>   :type :variation}]

    scalar->vector-field

    (scalar->vector-field scalar f)(scalar->vector-field scalar f1 f2)

    Returns vector field build from scalar fields of the input vector and result of the vector field.

    Examples

    Usage

    (let [f (scalar->vector-field v/heading (field :sinusoidal))]
       (v/applyf (f (v/vec2 m/HALF_PI m/HALF_PI)) m/degrees))
    diff --git a/docs/fastmath.interpolation.html b/docs/fastmath.interpolation.html
    index ca8060ad..a65d8693 100755
    --- a/docs/fastmath.interpolation.html
    +++ b/docs/fastmath.interpolation.html
    @@ -1,6 +1,6 @@
     
    -fastmath.interpolation documentation

    fastmath.interpolation

    akima-spline

    (akima-spline xs ys)

    Create cubic spline interpolator using Akima algorithm. Minimum number of points: 5

    xs[n] < xs[n+1] for all n.

    -

    Source: Apache Commons Math.

    Examples

    Akima plot

    (save-interpolation akima-spline ...)

    bicubic

    (bicubic xs ys vs)

    Bicubic 2d.

    +

    Source: Apache Commons Math.

    Examples

    Akima plot

    (save-interpolation akima-spline 0.69 6.22 ...)

    bicubic

    (bicubic xs ys vs)

    Bicubic 2d.

    Grid based.

    Source: Apache Commons Math.

    bicubic-smile

    (bicubic-smile xs ys vs)

    Bicubic 2d.

    Grid based.

    @@ -63,8 +63,8 @@

    2d interpolation

    Array layout

    (let [intrp (cubic-2d [2 5] [1 6] [[-1 -2] [3 4]])]
       [(intrp 2 1) (intrp 2 6) (intrp 5 1) (intrp 5 6)])
     ;;=> [-1.0 -2.0 3.0 4.0]

    cubic-spline

    (cubic-spline xs ys)

    Cubic spline interpolation.

    -

    Source: Smile.

    Examples

    Cubic spline plot

    (save-interpolation cubic-spline ...)

    divided-difference

    (divided-difference xs ys)

    Create Divided Difference Algorithm for interpolation.

    -

    Source: Apache Commons Math.

    Examples

    Divided Difference plot

    (save-interpolation divided-difference ...)

    interpolators-1d-list

    Map of 1d interpolation functions

    Examples

    List of names

    (keys interpolators-1d-list)
    +

    Source: Smile.

    Examples

    Cubic spline plot

    (save-interpolation cubic-spline 0 7 ...)

    divided-difference

    (divided-difference xs ys)

    Create Divided Difference Algorithm for interpolation.

    +

    Source: Apache Commons Math.

    Examples

    Divided Difference plot

    (save-interpolation divided-difference 0.65 6.5 ...)

    interpolators-1d-list

    Map of 1d interpolation functions

    Examples

    List of names

    (keys interpolators-1d-list)
     ;;=> (:linear-smile :divided-difference
     ;;=>                :rbf :neville
     ;;=>                :step-after :kriging-spline
    @@ -80,31 +80,52 @@ 

    2d interpolation

    -;; Test: ok.

    Kriging spline plot

    (save-interpolation kriging-spline ...)

    linear

    (linear xs ys)

    Create Divided Difference Algorithm for inqterpolation.

    -

    Source: Apache Commons Math.

    Examples

    Linear (Apache Commons version) plot

    (save-interpolation linear ...)

    linear-smile

    (linear-smile xs ys)

    Linear interpolation from Smile library.

    -

    Source: Smile.

    Examples

    Linear (SMILE version) plot

    (save-interpolation linear-smile ...)

    loess

    (loess xs ys)(loess bandwidth robustness-iters xs ys)(loess bandwidth robustness-iters accuracy xs ys)

    Local Regression Algorithm

    +;; Test: ok.

    Kriging spline plot

    (save-interpolation kriging-spline 0 7 ...)

    linear

    (linear xs ys)

    Create Divided Difference Algorithm for inqterpolation.

    +

    Source: Apache Commons Math.

    Examples

    Linear (Apache Commons version) plot

    (save-interpolation linear 0.69 6.22 ...)

    linear-smile

    (linear-smile xs ys)

    Linear interpolation from Smile library.

    +

    Source: Smile.

    Examples

    Linear (SMILE version) plot

    (save-interpolation linear-smile 0 7 ...)

    loess

    (loess xs ys)(loess bandwidth robustness-iters xs ys)(loess bandwidth robustness-iters accuracy xs ys)

    Local Regression Algorithm

    • bandwidth: 0.2-1.0 (optimal: 0.25-0.5, default: 0.4)
    • robustness-iters: 0-4 (optimal: 0, default: 2)
    • accuracy: double (default: 1e-12)
    -

    Source: Apache Commons Math.

    Examples

    Loess plot

    (save-interpolation loess ...)

    Loess plot, bandwidth=0.7, robustness-iters=4

    (save-interpolation (fn [xs ys] (loess 0.7 4 xs ys)) ...)

    Loess plot, bandwidth=0.2, robustness-iters=1

    (save-interpolation (fn [xs ys] (loess 0.2 1 xs ys)) ...)

    microsphere-2d-projection

    (microsphere-2d-projection elements max-dark-friction dark-threshold background exponent shared-sphere? no-interpolation-tolerance xs ys vs)

    Microsphere projection interpolator - 2d version

    +

    Source: Apache Commons Math.

    Examples

    Loess plot

    (save-interpolation loess 0.69 6.22 ...)

    Loess plot, bandwidth=0.7, robustness-iters=4

    (save-interpolation (fn [xs ys] (loess 0.7 4 xs ys)) 0.69 6.22 ...)

    Loess plot, bandwidth=0.2, robustness-iters=1

    (save-interpolation (fn [xs ys] (loess 0.2 1 xs ys)) 0.69 6.22 ...)

    microsphere-2d-projection

    (microsphere-2d-projection elements max-dark-friction dark-threshold background exponent shared-sphere? no-interpolation-tolerance xs ys vs)

    Microsphere projection interpolator - 2d version

    Grid based.

    Source: Apache Commons Math.

    microsphere-projection

    (microsphere-projection elements max-dark-friction dark-threshold background exponent shared-sphere? no-interpolation-tolerance xs ys)

    Microsphere projection interpolator - 1d version

    Source: Apache Commons Math.

    Examples

    Microsphere projection plot

    (save-interpolation
      (fn [xs ys]
        (microsphere-projection 4 0.5 1.0E-7 0.1 2.5 false 0.1 xs ys))
    - ...)

    neville

    (neville xs ys)

    Neville algorithm

    -

    Source: Apache Commons Math.

    Examples

    Neville plot

    (save-interpolation neville ...)

    piecewise-bicubic

    (piecewise-bicubic xs ys vs)

    Piecewise bicubic 2d.

    + 0 + 7 + ...)

    neville

    (neville xs ys)

    Neville algorithm

    +

    Source: Apache Commons Math.

    Examples

    Neville plot

    (save-interpolation neville 0.65 6.5 ...)

    piecewise-bicubic

    (piecewise-bicubic xs ys vs)

    Piecewise bicubic 2d.

    Grid based.

    Source: Apache Commons Math.

    rbf

    (rbf rbf-fn normalize? xs ys)(rbf rbf-fn xs ys)

    RBF (Radial Basis Function) interpolation.

    -

    Source: Smile

    Examples

    RBF - Linear

    (save-interpolation (fn [xs ys] (rbf (rbf/rbf :linear) xs ys)) ...)

    RBF - Gaussian

    (save-interpolation (fn [xs ys] (rbf (rbf/rbf :gaussian) xs ys)) ...)

    RBF - Multiquadratic

    (save-interpolation (fn [xs ys] (rbf (rbf/rbf :multiquadratic) xs ys))
    -                    ...)

    RBF - Inverse ultiquadratic

    (save-interpolation (fn [xs ys]
    +

    Source: Smile

    Examples

    RBF - Linear

    (save-interpolation (fn [xs ys] (rbf (rbf/rbf :linear) xs ys)) 0 7 ...)

    RBF - Gaussian

    (save-interpolation (fn [xs ys] (rbf (rbf/rbf :gaussian) xs ys))
    +                    0
    +                    7
    +                    ...)

    RBF - Multiquadratic

    (save-interpolation (fn [xs ys] (rbf (rbf/rbf :multiquadratic) xs ys))
    +                    0
    +                    7
    +                    ...)

    RBF - Inverse ultiquadratic

    (save-interpolation (fn [xs ys]
                           (rbf (rbf/rbf :inverse-multiquadratic) xs ys))
    -                    ...)

    RBF - Inverse quadratic

    (save-interpolation (fn [xs ys]
    +                    0
    +                    7
    +                    ...)

    RBF - Inverse quadratic

    (save-interpolation (fn [xs ys]
                           (rbf (rbf/rbf :inverse-quadratic) xs ys))
    -                    ...)

    RBF - Thinplate

    (save-interpolation (fn [xs ys] (rbf (rbf/rbf :thinplate) xs ys)) ...)

    RBF - Polyharmonic 3

    (save-interpolation (fn [xs ys] (rbf (rbf/rbf :polyharmonic 3) xs ys))
    -                    ...)

    RBF - Polyharmonic 4

    (save-interpolation (fn [xs ys] (rbf (rbf/rbf :polyharmonic 4) xs ys))
    -                    ...)

    RBF - Wendland

    (save-interpolation (fn [xs ys] (rbf (rbf/rbf :wendland) xs ys)) ...)

    RBF - Wu

    (save-interpolation (fn [xs ys] (rbf (rbf/rbf :wu) xs ys)) ...)

    shepard

    (shepard xs ys)(shepard p xs ys)

    Shepard interpolation.

    -

    Source: Smile.

    Examples

    Shepard plot

    (save-interpolation shepard ...)

    Shepard plot, p=5

    (save-interpolation (fn [xs ys] (shepard 5 xs ys)) ...)

    Shepard plot, p=0.9

    (save-interpolation (fn [xs ys] (shepard 0.9 xs ys)) ...)

    spline

    (spline xs ys)

    Cubic spline interpolation

    -

    Source: Apache Commons Math.

    Examples

    Spline plot

    (save-interpolation spline ...)

    step-after

    (step-after xs ys)

    Step function.

    Examples

    Step function plot

    (save-interpolation step-after ...)

    step-before

    (step-before xs ys)

    Step function.

    Examples

    Step function plot

    (save-interpolation step-before ...)
    \ No newline at end of file + 0 + 7 + ...)

    RBF - Thinplate

    (save-interpolation (fn [xs ys] (rbf (rbf/rbf :thinplate) xs ys))
    +                    0
    +                    7
    +                    ...)

    RBF - Polyharmonic 3

    (save-interpolation (fn [xs ys] (rbf (rbf/rbf :polyharmonic 3) xs ys))
    +                    0
    +                    7
    +                    ...)

    RBF - Polyharmonic 4

    (save-interpolation (fn [xs ys] (rbf (rbf/rbf :polyharmonic 4) xs ys))
    +                    0
    +                    7
    +                    ...)

    RBF - Wendland

    (save-interpolation (fn [xs ys] (rbf (rbf/rbf :wendland) xs ys))
    +                    0
    +                    7
    +                    ...)

    RBF - Wu

    (save-interpolation (fn [xs ys] (rbf (rbf/rbf :wu) xs ys)) 0 7 ...)

    shepard

    (shepard xs ys)(shepard p xs ys)

    Shepard interpolation.

    +

    Source: Smile.

    Examples

    Shepard plot

    (save-interpolation shepard 0 7 ...)

    Shepard plot, p=5

    (save-interpolation (fn [xs ys] (shepard 5 xs ys)) 0 7 ...)

    Shepard plot, p=0.9

    (save-interpolation (fn [xs ys] (shepard 0.9 xs ys)) 0 7 ...)

    spline

    (spline xs ys)

    Cubic spline interpolation

    +

    Source: Apache Commons Math.

    Examples

    Spline plot

    (save-interpolation spline 0.69 6.22 ...)

    step-after

    (step-after xs ys)

    Step function.

    Examples

    Step function plot

    (save-interpolation step-after 0 7 ...)

    step-before

    (step-before xs ys)

    Step function.

    Examples

    Step function plot

    (save-interpolation step-before 0 7 ...)
    \ No newline at end of file diff --git a/docs/fastmath.random.html b/docs/fastmath.random.html index 2cdbd350..339cbf0e 100755 --- a/docs/fastmath.random.html +++ b/docs/fastmath.random.html @@ -1,6 +1,6 @@ -fastmath.random documentation

    fastmath.random

    Various random and noise functions.

    +fastmath.random documentation

    fastmath.random

    Various random and noise functions.

    Namespace defines various random number generators (RNGs), different types of random functions, sequence generators and noise functions.

    RNGs

    You can use a selection of various RNGs defined in Apache Commons Math library.

    @@ -75,19 +75,19 @@

    Distribution

    To create distribution call distribution multimethod with name as a keyword and map as parameters.

    billow-noise

    Examples

    Usage

    (let [n (billow-noise {:seed 12345, :interpolation :none})]
       (n 0.5 1.1 -1.3))
     ;;=> 0.16031746031746036

    2d noise

    brand

    Random boolean with Mersenne Twister RNG.

    Examples

    Usage

    (brand)
    -;;=> false
    +;;=> true
     (brand 0.1)
    -;;=> false

    Count number of true values with probability 0.15

    (count (filter true? (repeatedly 100000 (fn* [] (brand 0.15)))))
    -;;=> 15032

    default-rng

    Default RNG - Mersenne Twister

    Examples

    Usage

    (set-seed! default-rng 111)
    -;;=> org.apache.commons.math3.random.MersenneTwister@e98004e
    +;;=> true

    Count number of true values with probability 0.15

    (count (filter true? (repeatedly 100000 (fn* [] (brand 0.15)))))
    +;;=> 15009

    default-rng

    Default RNG - Mersenne Twister

    Examples

    Usage

    (set-seed! default-rng 111)
    +;;=> org.apache.commons.math3.random.MersenneTwister@33293b34
     (irandom default-rng)
     ;;=> 1470976170
     (set-seed! default-rng 999)
    -;;=> org.apache.commons.math3.random.MersenneTwister@e98004e
    +;;=> org.apache.commons.math3.random.MersenneTwister@33293b34
     (irandom default-rng)
     ;;=> -1716016164
     (set-seed! default-rng 111)
    -;;=> org.apache.commons.math3.random.MersenneTwister@e98004e
    +;;=> org.apache.commons.math3.random.MersenneTwister@33293b34
     (irandom default-rng)
     ;;=> 1470976170

    discrete-noise

    macro

    (discrete-noise X Y)(discrete-noise X)

    Discrete noise. Parameters:

      @@ -139,9 +139,9 @@

      Integer di
    • :uniform-int - :lower (default: 0) and :upper (default: Integer/MAX_VALUE)
    • :zipf - :number-of-elements (default: 100) and :exponent (default: 3.0)

    Examples

    Usage

    (distribution :beta)
    -;;=> org.apache.commons.math3.distribution.BetaDistribution@5ba6659d
    +;;=> org.apache.commons.math3.distribution.BetaDistribution@2841dcb6
     (distribution :beta {:alpha 1.0, :beta 1.0})
    -;;=> org.apache.commons.math3.distribution.BetaDistribution@40f7ae65

    PDFs of beta

    PDFs of binomial

    PDFs of cauchy

    PDFs of chi-squared

    PDFs of empirical

    PDFs of enumerated-int

    PDFs of enumerated-real

    PDFs of exponential

    PDFs of f

    PDFs of gamma

    PDFs of geometric

    PDFs of gumbel

    PDFs of hypergeometric

    PDFs of laplace

    PDFs of levy

    PDFs of log-normal

    PDFs of logistic

    PDFs of nakagami

    PDFs of normal

    PDFs of pareto

    PDFs of pascal

    PDFs of poisson

    PDFs of t

    PDFs of triangular

    PDFs of uniform-int

    PDFs of uniform-real

    PDFs of weibull

    PDFs of zipf

    DistributionProto

    protocol

    Get information from distributions.

    members

    cdf

    (cdf d v)(cdf d v1 v2)

    Cumulative probability.

    Examples

    Usage

    (cdf (distribution :gamma) 1)
    +;;=> org.apache.commons.math3.distribution.BetaDistribution@7145c88

    PDFs of beta

    PDFs of binomial

    PDFs of cauchy

    PDFs of chi-squared

    PDFs of empirical

    PDFs of enumerated-int

    PDFs of enumerated-real

    PDFs of exponential

    PDFs of f

    PDFs of gamma

    PDFs of geometric

    PDFs of gumbel

    PDFs of hypergeometric

    PDFs of laplace

    PDFs of levy

    PDFs of log-normal

    PDFs of logistic

    PDFs of nakagami

    PDFs of normal

    PDFs of pareto

    PDFs of pascal

    PDFs of poisson

    PDFs of t

    PDFs of triangular

    PDFs of uniform-int

    PDFs of uniform-real

    PDFs of weibull

    PDFs of zipf

    DistributionProto

    protocol

    Get information from distributions.

    members

    cdf

    (cdf d v)(cdf d v1 v2)

    Cumulative probability.

    Examples

    Usage

    (cdf (distribution :gamma) 1)
     ;;=> 0.09020401043104985
     (cdf (distribution :gamma) 1 4)
     ;;=> 0.5037901398591113

    icdf

    (icdf d p)

    Inversed cumulative probability

    Examples

    Usage

    (icdf (distribution :gamma) 0.5)
    @@ -191,22 +191,22 @@ 

    Integer di (lrand 10 20) ;;=> 16

    noise

    (noise x)(noise x y)(noise x y z)

    Create improved Perlin Noise.

    6 octaves, quintic interpolation.

    Examples

    Usage

    (noise 3.3)
    -;;=> 0.4517074285714284
    +;;=> 0.45384482539682564
     (noise 3.3 1.1)
    -;;=> 0.3854944434793651
    +;;=> 0.5155615818768254
     (noise 3.3 0.0 -0.1)
    -;;=> 0.44945232359619036

    2d noise

    noise-types

    List of possible noise types as a map of names and values.

    Examples

    List of names (keys)

    (keys noise-types)
    +;;=> 0.5615359622095238

    2d noise

    noise-types

    List of possible noise types as a map of names and values.

    Examples

    List of names (keys)

    (keys noise-types)
     ;;=> (:value :gradient :simplex)

    random-noise-cfg

    (random-noise-cfg)

    Create random noise configuration.

    Examples

    Random configuration

    (random-noise-cfg)
     ;;=> {:gain 0.7775713724640989,
     ;;=>  :interpolation :linear,
     ;;=>  :lacunarity 1.7314283620797077,
    -;;=>  :noise-type :value,
    +;;=>  :noise-type :gradient,
     ;;=>  :normalize? true,
     ;;=>  :octaves 6,
     ;;=>  :seed -1208843915}

    Create function

    (random-noise-fn)
    -;;=> fastmath.random$billow_noise$fn__8943@35f045d
    +;;=> fastmath.random$fbm_noise$fn__8939@1e5ba462
     (random-noise-fn (random-noise-cfg))
    -;;=> fastmath.random$fbm_noise$fn__8939@5b4b2bfa

    One

    Two

    Three

    random-noise-fn

    (random-noise-fn cfg)(random-noise-fn)

    Create random noise function from all possible options.

    +;;=> fastmath.random$billow_noise$fn__8943@1d694d9a

    One

    Two

    Three

    random-noise-fn

    (random-noise-fn cfg)(random-noise-fn)

    Create random noise function from all possible options.

    Optionally provide own configuration cfg. In this case one of 4 different blending methods will be selected.

    randval

    macro

    (randval v1 v2)(randval prob v1 v2)

    Retrun value with given probability (default 0.5)

    Examples

    Usage

    (randval :val-one :val-two)
     ;;=> :val-one
     (randval 0.001 :low-probability :high-probability)
    @@ -217,9 +217,9 @@ 

    Integer di {:octaves 3, :lacunarity 2.1, :gain 0.7, :noise-type :simplex})] (n 0.5 1.1 -1.3)) ;;=> 0.36057474100953535

    2d noise

    rng

    multimethod

    Create RNG for given name (as keyword) and optional seed. Return object enhanced with RNGProto. See: rngs-list for names.

    Examples

    Creating

    (rng :mersenne)
    -;;=> org.apache.commons.math3.random.MersenneTwister@90d007a
    +;;=> org.apache.commons.math3.random.MersenneTwister@43f79aa0
     (rng :isaac 1234)
    -;;=> org.apache.commons.math3.random.ISAACRandom@315d19f1

    Using

    (irandom (rng :mersenne 999) 15 25)
    +;;=> org.apache.commons.math3.random.ISAACRandom@3fa57a5a

    Using

    (irandom (rng :mersenne 999) 15 25)
     ;;=> 17

    RNGProto

    protocol

    Defines set of random functions for different RNGs or distributions returning primitive values.

    members

    ->seq

    (->seq t)(->seq t n)

    Returns sequence of random samples limited to optional n values.

    Examples

    Sequence of random values from distribution

    (->seq (distribution :gamma) 5)
     ;;=> (4.23142209664185
     ;;=>  7.418770750567213
    @@ -227,28 +227,28 @@ 

    Integer di ;;=> 4.206790231662002 ;;=> 11.661274911933793)

    brandom

    (brandom t)(brandom t thr)

    Boolean random. Returns true or false with equal probability. You can set probability for true setting thr (from [0-1] range).

    See brand.

    Examples

    boolean

    (rngproto-snippet brandom ...)
    -;;=> false

    drandom

    (drandom t)(drandom t mx)(drandom t mn mx)

    Random double.

    +;;=> true

    drandom

    (drandom t)(drandom t mx)(drandom t mn mx)

    Random double.

    For RNGs: As default returns random double from [0,1) range. When mx is passed, range is set to [0, mx). When mn is passed, range is set to [mn, mx).

    See drand.

    For distributions, just returns random double (call without parameters).

    Examples

    double

    (rngproto-snippet drandom ...)
    -;;=> 0.038337527867269294

    Double random value from distribution

    (drandom (distribution :gamma))
    +;;=> 0.5685805469972727

    Double random value from distribution

    (drandom (distribution :gamma))
     ;;=> 2.5462703911794446

    frandom

    (frandom t)(frandom t mx)(frandom t mn mx)

    Random float.

    For RNGs: As default returns random float from [0,1) range. When mx is passed, range is set to [0, mx). When mn is passed, range is set to [mn, mx).

    See frand.

    For distributions, just returns random float (call without parameters).

    Examples

    float

    (rngproto-snippet frandom ...)
    -;;=> 0.9157808

    Float random value from distribution (sample cast to float)

    (frandom (distribution :gamma))
    +;;=> 0.4603822

    Float random value from distribution (sample cast to float)

    (frandom (distribution :gamma))
     ;;=> 2.3635364

    grandom

    (grandom t)(grandom t std)(grandom t mean std)

    Random double from gaussian distribution. As default returns random double from N(0,1). When std is passed, N(0,std) is used. When mean is passed, distribution is set to N(mean, std).

    See grand.

    Examples

    gaussian double

    (rngproto-snippet grandom ...)
    -;;=> -0.750989538652659

    irandom

    (irandom t)(irandom t mx)(irandom t mn mx)

    Random integer.

    +;;=> 1.2539258998485059

    irandom

    (irandom t)(irandom t mx)(irandom t mn mx)

    Random integer.

    For RNGs: As default returns random integer from full integer range. When mx is passed, range is set to [0, mx). When mn is passed, range is set to [mn, mx).

    See irand.

    For distributions, just returns random integer (call without parameters).

    Examples

    integer

    (rngproto-snippet irandom ...)
    -;;=> -1424653085

    Integer random value from distribution (sample cast to int)

    (irandom (distribution :gamma))
    +;;=> -424877262

    Integer random value from distribution (sample cast to int)

    (irandom (distribution :gamma))
     ;;=> 1

    lrandom

    (lrandom t)(lrandom t mx)(lrandom t mn mx)

    Random long.

    For RNGs: As default returns random long from full long range. When mx is passed, range is set to [0, mx). When mn is passed, range is set to [mn, mx).

    See lrand.

    For distributions, just returns random long (call without parameters).

    Examples

    long

    (rngproto-snippet lrandom ...)
    -;;=> -642072816814758594

    Long random value from distribution (sample cast to long)

    (lrandom (distribution :gamma))
    +;;=> -1312719526820938797

    Long random value from distribution (sample cast to long)

    (lrandom (distribution :gamma))
     ;;=> 2

    set-seed!

    (set-seed! t v)

    Sets seed. Returns RNG or distribution itself.

    Examples

    Set seed for the RNG object

    (let [rng (rng :isaac)]
       (set-seed! rng 1234)
       (irandom rng 10 15))
    @@ -272,15 +272,15 @@ 

    Integer di ;;=> #vec2 [0.125, 0.8888888888888888])

    Usage (1d)

    (let [gen (sequence-generator :sobol 1)] (take 5 (gen)))
     ;;=> (0.0 0.5 0.75 0.25 0.375)

    Halton plot (1000 samples)

    Sobol plot (1000 samples)

    Sphere plot (1000 samples)

    Gaussian plot (1000 samples)

    Default plot (1000 samples)

    sequence-generators-list

    List of random sequence generator. See sequence-generator.

    Examples

    Generator names.

    (sort sequence-generators-list)
     ;;=> (:default :gaussian :halton :sobol :sphere)

    simplex

    (simplex x)(simplex x y)(simplex x y z)

    Create Simplex noise. 6 octaves.

    Examples

    Usage

    (simplex 3.3)
    -;;=> 0.6518222195619048
    +;;=> 0.6709703704761902
     (simplex 3.3 1.1)
    -;;=> 0.6116429442141537
    +;;=> 0.6447862629219117
     (simplex 3.3 0.0 -0.1)
    -;;=> 0.2745496230975243

    2d noise

    single-noise

    Examples

    Usage

    (let [n (single-noise {:interpolation :linear})] (n 0.5 1.1 -1.3))
    +;;=> 0.6277449408844472

    2d noise

    single-noise

    Examples

    Usage

    (let [n (single-noise {:interpolation :linear})] (n 0.5 1.1 -1.3))
     ;;=> 0.4065

    2d noise

    vnoise

    (vnoise x)(vnoise x y)(vnoise x y z)

    Value Noise.

    6 octaves, Hermite interpolation (cubic, h01).

    Examples

    Usage

    (vnoise 3.3)
    -;;=> 0.665599770847052
    +;;=> 0.5842235196433692
     (vnoise 3.3 1.1)
    -;;=> 0.4403501571382373
    +;;=> 0.7372213484363309
     (vnoise 3.3 0.0 -0.1)
    -;;=> 0.4886291945718484

    2d noise

    \ No newline at end of file +;;=> 0.3669129890749361

    2d noise

    \ No newline at end of file diff --git a/docs/fastmath.rbf.html b/docs/fastmath.rbf.html index 96b2424b..d61f88d3 100755 --- a/docs/fastmath.rbf.html +++ b/docs/fastmath.rbf.html @@ -1,6 +1,6 @@ -fastmath.rbf documentation

    fastmath.rbf

    Radial Basis Function

    +fastmath.rbf documentation

    fastmath.rbf

    Radial Basis Function

    Create with multifunction rbf.

    All of them accept scaling factor scale. Only polyharmonic is defined with integer exponent k. See rbfs-list for all names.

    rbf-obj returns SMILE library object for defined function.

    Categories

    Code snippets

    Save graph

    (defn save-graph
    @@ -13,7 +13,7 @@
                             :height 250)
         fname))

    rbf

    multimethod

    Create Radial Basis Function

    Optional parameter scale.

    -

    :polyharmonic has also exponent k parameter.

    Examples

    Linear

    (save-graph (rbf :linear) ...)

    Gaussian

    (save-graph (rbf :gaussian) ...)

    Multiquadratic

    (save-graph (rbf :multiquadratic) ...)

    Inverse multiquadratic

    (save-graph (rbf :inverse-multiquadratic) ...)

    Inverse quadratic

    (save-graph (rbf :inverse-quadratic) ...)

    Thinplate

    (save-graph (rbf :thinplate) ...)

    Polyharmonic 3

    (save-graph (rbf :polyharmonic 3) ...)

    Polyharmonic 4

    (save-graph (rbf :polyharmonic 4) ...)

    Wendland

    (save-graph (rbf :wendland) ...)

    Wu

    (save-graph (rbf :wu) ...)

    rbf-obj

    (rbf-obj rbf-fn)

    Create RBF Smile object.

    +

    :polyharmonic has also exponent k parameter.

    Examples

    Linear

    (save-graph (rbf :linear) -2.0 2.0 ...)

    Gaussian

    (save-graph (rbf :gaussian) -2.0 2.0 ...)

    Multiquadratic

    (save-graph (rbf :multiquadratic) -3.0 3.0 ...)

    Inverse multiquadratic

    (save-graph (rbf :inverse-multiquadratic) -3.0 3.0 ...)

    Inverse quadratic

    (save-graph (rbf :inverse-quadratic) -3.0 3.0 ...)

    Thinplate

    (save-graph (rbf :thinplate) -1.0 3.0 ...)

    Polyharmonic 3

    (save-graph (rbf :polyharmonic 3) -3.0 3.0 ...)

    Polyharmonic 4

    (save-graph (rbf :polyharmonic 4) -3.0 3.0 ...)

    Wendland

    (save-graph (rbf :wendland) -3.0 3.0 ...)

    Wu

    (save-graph (rbf :wu) -3.0 3.0 ...)

    rbf-obj

    (rbf-obj rbf-fn)

    Create RBF Smile object.

    Used to pass to Smile constructors/functions.

    rbfs-list

    Radial Basis function names

    Examples

    List of names

    (sort rbfs-list)
     ;;=> (:gaussian :inverse-multiquadratic :inverse-quadratic
     ;;=>            :linear :multiquadratic
    diff --git a/docs/fastmath.stats.html b/docs/fastmath.stats.html
    index 04d78737..457a3fc8 100755
    --- a/docs/fastmath.stats.html
    +++ b/docs/fastmath.stats.html
    @@ -1,6 +1,6 @@
     
    -fastmath.stats documentation

    fastmath.stats

    Statistics functions.

    +fastmath.stats documentation

    fastmath.stats

    Statistics functions.

    • Descriptive statistics for sequence.
    • Correlation / covariance of two sequences.
    • @@ -68,13 +68,13 @@

      Other

    • :step - distance between bins
    • :bins - list of pairs of range lower value and number of hits

    Examples

    3 bins from uniform distribution.

    (histogram (repeatedly 1000 rand) 3)
    -;;=> {:bins ([0.0022484030992574455 337]
    -;;=>         [0.334680819937947 317]
    -;;=>         [0.6671132367766366 346]),
    +;;=> {:bins ([0.0017608710974496011 358]
    +;;=>         [0.33441364055651407 302]
    +;;=>         [0.6670664100155785 340]),
     ;;=>  :size 3,
    -;;=>  :step 0.33243241683868957}

    3 bins from uniform distribution for given range.

    (histogram (repeatedly 10000 rand) 3 [0.1 0.5])
    +;;=>  :step 0.33265276945906447}

    3 bins from uniform distribution for given range.

    (histogram (repeatedly 10000 rand) 3 [0.1 0.5])
     ;;=> {:bins
    -;;=>  ([0.1 1346] [0.23333333333333334 1323] [0.3666666666666667 1340]),
    +;;=>  ([0.1 1339] [0.23333333333333334 1320] [0.3666666666666667 1310]),
     ;;=>  :size 3,
     ;;=>  :step 0.13333333333333333}

    5 bins from normal distribution.

    (histogram (repeatedly 10000 r/grand) 5)
     ;;=> {:bins ([-3.9488932738004707 81]
    diff --git a/docs/fastmath.transform.html b/docs/fastmath.transform.html
    index bcd80ba2..ed272d0f 100755
    --- a/docs/fastmath.transform.html
    +++ b/docs/fastmath.transform.html
    @@ -1,6 +1,6 @@
     
    -fastmath.transform documentation

    fastmath.transform

    Transforms.

    +fastmath.transform documentation

    fastmath.transform

    Transforms.

    See transformer and TransformProto for details.

    Wavelet

    Based on JWave library.

    @@ -47,7 +47,7 @@

    Fourier

    • :standard :dft - 1d Discrete Fourier Transform - returns double-array where even elements are real part, odd elements are imaginary part.

    Examples

    Usage

    (transformer :packet :discrete-mayer)
    -;;=> jwave.transforms.WaveletPacketTransform@358720a0

    TransformProto

    protocol

    Transformer functions.

    members

    forward-1d

    (forward-1d t xs)

    Forward transform of sequence or array. Returns double array.

    Examples

    Usage

    (seq (forward-1d (transformer :packet :haar-orthogonal) [-1 8 7 6]))
    +;;=> jwave.transforms.WaveletPacketTransform@70f15b

    TransformProto

    protocol

    Transformer functions.

    members

    forward-1d

    (forward-1d t xs)

    Forward transform of sequence or array. Returns double array.

    Examples

    Usage

    (seq (forward-1d (transformer :packet :haar-orthogonal) [-1 8 7 6]))
     ;;=> (20.0 -6.0 -8.0 -10.0)
     (seq (forward-1d (transformer :fast :haar-orthogonal) [-1 8 7 6]))
     ;;=> (20.0 -6.0 -9.0 1.0)
    diff --git a/docs/fastmath.vector.html b/docs/fastmath.vector.html
    index dde79748..29a3a9fb 100755
    --- a/docs/fastmath.vector.html
    +++ b/docs/fastmath.vector.html
    @@ -1,6 +1,6 @@
     
    -fastmath.vector documentation

    array->vec2

    (array->vec2 a)

    Doubles array to Vec2

    Examples

    Usage

    (array->vec2 (double-array [11 22 33 44 55]))
    +;;=> 46.25272535004715

    array->vec2

    (array->vec2 a)

    Doubles array to Vec2

    Examples

    Usage

    (array->vec2 (double-array [11 22 33 44 55]))
     ;;=> #vec2 [11.0, 22.0]

    array->vec3

    (array->vec3 a)

    Doubles array to Vec3

    Examples

    Usage

    (array->vec3 (double-array [11 22 33 44 55]))
     ;;=> #vec3 [11.0, 22.0, 33.0]

    array->vec4

    (array->vec4 a)

    Doubles array to Vec4

    Examples

    Usage

    (array->vec4 (double-array [11 22 33 44 55]))
     ;;=> #vec4 [11.0, 22.0, 33.0, 44.0]

    array-vec

    (array-vec xs)

    Make ArrayVec type based on provided sequence xs.

    Examples

    Usage

    (array-vec [1 2 3 4 5 6 7])
    @@ -80,13 +80,13 @@ 

    Types

    ;;=> #vec2 [1.0, 1.0]

    generate-vec2

    (generate-vec2 f1 f2)(generate-vec2 f)

    Generate Vec2 with fn(s)

    Examples

    Usage

    (generate-vec2 (constantly 2))
     ;;=> #vec2 [2.0, 2.0]
     (generate-vec2 rand (constantly 1))
    -;;=> #vec2 [0.5302930846414526, 1.0]

    generate-vec3

    (generate-vec3 f1 f2 f3)(generate-vec3 f)

    Generate Vec3 with fn(s)

    Examples

    Usage

    (generate-vec3 rand)
    -;;=> #vec3 [0.25638509955713584, 0.5166151187131103, 0.24388241645863107]
    +;;=> #vec2 [0.5483162026864916, 1.0]

    generate-vec3

    (generate-vec3 f1 f2 f3)(generate-vec3 f)

    Generate Vec3 with fn(s)

    Examples

    Usage

    (generate-vec3 rand)
    +;;=> #vec3 [0.41101574911093164, 0.185473471211277, 0.6301936665927065]
     (generate-vec3 rand (constantly 1) (constantly 2))
    -;;=> #vec3 [0.1760653355321553, 1.0, 2.0]

    generate-vec4

    (generate-vec4 f1 f2 f3 f4)(generate-vec4 f)

    Generate Vec4 with fn(s)

    Examples

    Usage

    (generate-vec4 rand)
    -;;=> #vec4 [0.7792681543720726, 0.25196273021617865, 0.18401138504016257, 0.5552858980127775]
    +;;=> #vec3 [0.28379256112998774, 1.0, 2.0]

    generate-vec4

    (generate-vec4 f1 f2 f3 f4)(generate-vec4 f)

    Generate Vec4 with fn(s)

    Examples

    Usage

    (generate-vec4 rand)
    +;;=> #vec4 [0.3592070085427427, 0.6160604340888605, 0.1475581211588579, 0.4175589607879455]
     (generate-vec4 rand rand (constantly 1) (constantly 2))
    -;;=> #vec4 [0.06995759698620418, 0.5662049056229967, 1.0, 2.0]

    limit

    (limit v len)

    Limit length of the vector by given value

    Examples

    Usage

    (limit (vec3 1.0 1.0 1.0) 1.0)
    +;;=> #vec4 [0.7924475133768876, 0.8306449490126698, 1.0, 2.0]

    limit

    (limit v len)

    Limit length of the vector by given value

    Examples

    Usage

    (limit (vec3 1.0 1.0 1.0) 1.0)
     ;;=> #vec3 [0.5773502691896258, 0.5773502691896258, 0.5773502691896258]
     (limit (vec3 1.0 1.0 1.0) 2.0)
     ;;=> #vec3 [1.0, 1.0, 1.0]

    normalize

    (normalize v)

    Normalize vector (set length = 1.0)

    Examples

    Usage

    (normalize (vec2 1.0 -1.0))
    @@ -96,7 +96,7 @@ 

    Types

    ;;=> 90.0 (m/degrees (relative-angle-between (vec (repeatedly 50 rand)) (vec (repeatedly 50 rand)))) -;;=> 9.763095488646849

    set-mag

    (set-mag v len)

    Set length of the vector

    Examples

    Usage

    (set-mag (vec2 0.22 0.22) (m/sqrt 2.0))
    +;;=> 1.415520536588972

    set-mag

    (set-mag v len)

    Set length of the vector

    Examples

    Usage

    (set-mag (vec2 0.22 0.22) (m/sqrt 2.0))
     ;;=> #vec2 [1.0000000000000002, 1.0000000000000002]
     (set-mag (vec2 1.0 1.0) 0.0)
     ;;=> #vec2 [0.0, 0.0]

    TOLERANCE

    const

    ;;=> 1.0E-6

    Tolerance used in is-near-zero?. Values less than this value are treated as zero.

    vec2

    (vec2 x y)

    Make 2d vector

    Examples

    Usage

    (vec2 0.5 -0.5)
    @@ -191,12 +191,12 @@ 

    Types

    ;; Test: ok.

    maxdim

    (maxdim v)

    Index of maximum value.

    Examples

    Usage

    (let [v (vec (repeatedly 100 (fn [] (- (int (rand-int 200)) 100))))
           mdim (maxdim v)]
       [mdim (v mdim)])
    -;;=> [7 99]
    +;;=> [20 99]
     (maxdim (vec3 1 2 3))
     ;;=> 2

    mindim

    (mindim v)

    Index of minimum value.

    Examples

    Usage

    (let [v (vec (repeatedly 100 (fn [] (- (int (rand-int 200)) 100))))
           mdim (mindim v)]
       [mdim (v mdim)])
    -;;=> [51 -98]
    +;;=> [48 -100]
     (mindim (vec3 1 2 3))
     ;;=> 0

    mn

    (mn v1)

    Minimum value of vector elements

    Examples

    Usage

    (mn (vec4 -1 -2 3 4))
     ;;=> -2.0

    mult

    (mult v1 v)

    Multiply vector by number v.

    Examples

    Usage

    (mult (vec4 5 4 3 5) 4.0)
    diff --git a/docs/images/i/38fcaf6f3d8e417f663f497b99c5fb8a.png b/docs/images/i/000ad86d2d1aeae84542c05f047adc0c.png
    similarity index 100%
    rename from docs/images/i/38fcaf6f3d8e417f663f497b99c5fb8a.png
    rename to docs/images/i/000ad86d2d1aeae84542c05f047adc0c.png
    diff --git a/docs/images/i/1f61f6271c0c7b444e484b36114f9d6c.png b/docs/images/i/0af7c9b7aa78c16609a04389c0edd03e.png
    similarity index 100%
    rename from docs/images/i/1f61f6271c0c7b444e484b36114f9d6c.png
    rename to docs/images/i/0af7c9b7aa78c16609a04389c0edd03e.png
    diff --git a/docs/images/i/a3066da14ac57d84b2b0aacafa503732.png b/docs/images/i/1119d1f84adaf2c3d1c6ff27eb453fd1.png
    similarity index 100%
    rename from docs/images/i/a3066da14ac57d84b2b0aacafa503732.png
    rename to docs/images/i/1119d1f84adaf2c3d1c6ff27eb453fd1.png
    diff --git a/docs/images/i/bb88c19480ac45f0cb8ca3268a37e54f.png b/docs/images/i/17a18544b361bc4aa993e5665bc32b21.png
    similarity index 100%
    rename from docs/images/i/bb88c19480ac45f0cb8ca3268a37e54f.png
    rename to docs/images/i/17a18544b361bc4aa993e5665bc32b21.png
    diff --git a/docs/images/i/1f8ee3a5402be0b14ee9916aecd6074b.png b/docs/images/i/1f8ee3a5402be0b14ee9916aecd6074b.png
    new file mode 100755
    index 00000000..7fd54b17
    Binary files /dev/null and b/docs/images/i/1f8ee3a5402be0b14ee9916aecd6074b.png differ
    diff --git a/docs/images/i/ab117de92507889acde4760b0835990b.png b/docs/images/i/2118422870475c01ac1ef6b794388c96.png
    similarity index 100%
    rename from docs/images/i/ab117de92507889acde4760b0835990b.png
    rename to docs/images/i/2118422870475c01ac1ef6b794388c96.png
    diff --git a/docs/images/i/28661c310fc1b6ae53a1ff57066a7adc.png b/docs/images/i/28661c310fc1b6ae53a1ff57066a7adc.png
    deleted file mode 100755
    index 938410ed..00000000
    Binary files a/docs/images/i/28661c310fc1b6ae53a1ff57066a7adc.png and /dev/null differ
    diff --git a/docs/images/i/40eedb69dd190b8f9cdec3c520fd6488.png b/docs/images/i/2f1ad1a818a15aed9825add6e337a2c8.png
    similarity index 100%
    rename from docs/images/i/40eedb69dd190b8f9cdec3c520fd6488.png
    rename to docs/images/i/2f1ad1a818a15aed9825add6e337a2c8.png
    diff --git a/docs/images/i/31648a02798927f2ca2716dd8e37187c.png b/docs/images/i/31648a02798927f2ca2716dd8e37187c.png
    deleted file mode 100755
    index 09be15e8..00000000
    Binary files a/docs/images/i/31648a02798927f2ca2716dd8e37187c.png and /dev/null differ
    diff --git a/docs/images/i/3497941ebd5d74844d67d62490053c98.png b/docs/images/i/3497941ebd5d74844d67d62490053c98.png
    deleted file mode 100755
    index 6435a507..00000000
    Binary files a/docs/images/i/3497941ebd5d74844d67d62490053c98.png and /dev/null differ
    diff --git a/docs/images/i/6a0bfe0cc2ead8576552af069ec152c0.png b/docs/images/i/37f112067dfdaf202830f9450b210612.png
    similarity index 100%
    rename from docs/images/i/6a0bfe0cc2ead8576552af069ec152c0.png
    rename to docs/images/i/37f112067dfdaf202830f9450b210612.png
    diff --git a/docs/images/i/48c1676b9d0215085335a063b7797621.png b/docs/images/i/4cc74dd93898f1636ab70fe148f2cf4a.png
    similarity index 100%
    rename from docs/images/i/48c1676b9d0215085335a063b7797621.png
    rename to docs/images/i/4cc74dd93898f1636ab70fe148f2cf4a.png
    diff --git a/docs/images/i/51433377cb5eebc3b6c02ab56698db09.png b/docs/images/i/51433377cb5eebc3b6c02ab56698db09.png
    deleted file mode 100755
    index 40ac0f0a..00000000
    Binary files a/docs/images/i/51433377cb5eebc3b6c02ab56698db09.png and /dev/null differ
    diff --git a/docs/images/i/9864ac2288f8e83d8237670d29e144da.png b/docs/images/i/628d06beb41984e1d1cae670345e27ea.png
    similarity index 100%
    rename from docs/images/i/9864ac2288f8e83d8237670d29e144da.png
    rename to docs/images/i/628d06beb41984e1d1cae670345e27ea.png
    diff --git a/docs/images/i/66a99b80f953ba69639d1006eda701d5.png b/docs/images/i/66a99b80f953ba69639d1006eda701d5.png
    deleted file mode 100755
    index 938410ed..00000000
    Binary files a/docs/images/i/66a99b80f953ba69639d1006eda701d5.png and /dev/null differ
    diff --git a/docs/images/i/7a63baee57ec808aa70f88f4c934ab6c.png b/docs/images/i/6fa4340634550c440bf60cb185b9ad63.png
    similarity index 100%
    rename from docs/images/i/7a63baee57ec808aa70f88f4c934ab6c.png
    rename to docs/images/i/6fa4340634550c440bf60cb185b9ad63.png
    diff --git a/docs/images/i/803a877b1f1ca50530b09b237ca3eec8.png b/docs/images/i/803a877b1f1ca50530b09b237ca3eec8.png
    deleted file mode 100755
    index 4fc8b06e..00000000
    Binary files a/docs/images/i/803a877b1f1ca50530b09b237ca3eec8.png and /dev/null differ
    diff --git a/docs/images/i/53624409cb3da7f3b0a6e4657ba60920.png b/docs/images/i/83cf9ced754fcc25ffbee6a853aa026b.png
    similarity index 100%
    rename from docs/images/i/53624409cb3da7f3b0a6e4657ba60920.png
    rename to docs/images/i/83cf9ced754fcc25ffbee6a853aa026b.png
    diff --git a/docs/images/i/00fce33fccbbf36b71640653ad3b023b.png b/docs/images/i/8750294c460783fccd92c25a1cfa66ca.png
    similarity index 100%
    rename from docs/images/i/00fce33fccbbf36b71640653ad3b023b.png
    rename to docs/images/i/8750294c460783fccd92c25a1cfa66ca.png
    diff --git a/docs/images/i/c698d40409b95206badc001db354d8cb.png b/docs/images/i/88e4563e662a88e8c760c294512c44e3.png
    similarity index 100%
    rename from docs/images/i/c698d40409b95206badc001db354d8cb.png
    rename to docs/images/i/88e4563e662a88e8c760c294512c44e3.png
    diff --git a/docs/images/i/0baa73286a98ed80626a1efd2cf13502.png b/docs/images/i/8dae364e86d277a027147dff4fe54a29.png
    similarity index 100%
    rename from docs/images/i/0baa73286a98ed80626a1efd2cf13502.png
    rename to docs/images/i/8dae364e86d277a027147dff4fe54a29.png
    diff --git a/docs/images/i/91f1dfe3f639106c79c1df15a8777e0f.png b/docs/images/i/91f1dfe3f639106c79c1df15a8777e0f.png
    deleted file mode 100755
    index 36073039..00000000
    Binary files a/docs/images/i/91f1dfe3f639106c79c1df15a8777e0f.png and /dev/null differ
    diff --git a/docs/images/i/93279c6aac5ca54ff337f5cee48ceb4a.png b/docs/images/i/93279c6aac5ca54ff337f5cee48ceb4a.png
    deleted file mode 100755
    index d4a1b8ff..00000000
    Binary files a/docs/images/i/93279c6aac5ca54ff337f5cee48ceb4a.png and /dev/null differ
    diff --git a/docs/images/i/51898d18c56e9fc83d0aa25f109ae074.png b/docs/images/i/94ec9a99a1ba5027dd8890fe9550fabd.png
    similarity index 100%
    rename from docs/images/i/51898d18c56e9fc83d0aa25f109ae074.png
    rename to docs/images/i/94ec9a99a1ba5027dd8890fe9550fabd.png
    diff --git a/docs/images/i/996f72b749139f93ce209c4cc78fb0d4.png b/docs/images/i/996f72b749139f93ce209c4cc78fb0d4.png
    deleted file mode 100755
    index 2546ec5d..00000000
    Binary files a/docs/images/i/996f72b749139f93ce209c4cc78fb0d4.png and /dev/null differ
    diff --git a/docs/images/i/68910cad009219ad96055684553403ee.png b/docs/images/i/9f0acf570c10099a69e5ed5f67033805.png
    similarity index 100%
    rename from docs/images/i/68910cad009219ad96055684553403ee.png
    rename to docs/images/i/9f0acf570c10099a69e5ed5f67033805.png
    diff --git a/docs/images/i/9fed7518e7d277c53a0bb7eb2627a750.png b/docs/images/i/9fed7518e7d277c53a0bb7eb2627a750.png
    deleted file mode 100755
    index e4c4e6bb..00000000
    Binary files a/docs/images/i/9fed7518e7d277c53a0bb7eb2627a750.png and /dev/null differ
    diff --git a/docs/images/i/534c6bbd7f84e2bbf7c4dd1e84199564.png b/docs/images/i/a1aa27954181563c60f8ea4abced3d55.png
    similarity index 100%
    rename from docs/images/i/534c6bbd7f84e2bbf7c4dd1e84199564.png
    rename to docs/images/i/a1aa27954181563c60f8ea4abced3d55.png
    diff --git a/docs/images/i/a53b8f60b30dc30119a359c665fbb206.png b/docs/images/i/a53b8f60b30dc30119a359c665fbb206.png
    deleted file mode 100755
    index 6a3d99fb..00000000
    Binary files a/docs/images/i/a53b8f60b30dc30119a359c665fbb206.png and /dev/null differ
    diff --git a/docs/images/i/a6945db0cb7ce955cd6420328028e4a5.png b/docs/images/i/a6945db0cb7ce955cd6420328028e4a5.png
    deleted file mode 100755
    index 08718b8e..00000000
    Binary files a/docs/images/i/a6945db0cb7ce955cd6420328028e4a5.png and /dev/null differ
    diff --git a/docs/images/i/aba4053c6b7d573b3022e1f0a9a98548.png b/docs/images/i/aba4053c6b7d573b3022e1f0a9a98548.png
    deleted file mode 100755
    index 4c5d33da..00000000
    Binary files a/docs/images/i/aba4053c6b7d573b3022e1f0a9a98548.png and /dev/null differ
    diff --git a/docs/images/i/ae35ec316acffe0dcd78e688932f5f2f.png b/docs/images/i/ae35ec316acffe0dcd78e688932f5f2f.png
    deleted file mode 100755
    index b9008687..00000000
    Binary files a/docs/images/i/ae35ec316acffe0dcd78e688932f5f2f.png and /dev/null differ
    diff --git a/docs/images/i/5db58747eddc4103fb4b2e133697c72d.png b/docs/images/i/aeab75a431252e63536788d9b4132721.png
    similarity index 100%
    rename from docs/images/i/5db58747eddc4103fb4b2e133697c72d.png
    rename to docs/images/i/aeab75a431252e63536788d9b4132721.png
    diff --git a/docs/images/i/akima.jpg b/docs/images/i/akima.jpg
    deleted file mode 100755
    index b49d5b58..00000000
    Binary files a/docs/images/i/akima.jpg and /dev/null differ
    diff --git a/docs/images/i/53dea400857d62336584b42bb537c055.png b/docs/images/i/b22eaa62b91c60771198ec1b673478cb.png
    similarity index 100%
    rename from docs/images/i/53dea400857d62336584b42bb537c055.png
    rename to docs/images/i/b22eaa62b91c60771198ec1b673478cb.png
    diff --git a/docs/images/i/b40c3e398c594e19910d20d0d407c54d.png b/docs/images/i/b40c3e398c594e19910d20d0d407c54d.png
    deleted file mode 100755
    index d4a1b8ff..00000000
    Binary files a/docs/images/i/b40c3e398c594e19910d20d0d407c54d.png and /dev/null differ
    diff --git a/docs/images/i/b84b5ed9dcfaec3855b6e9961e7e2255.png b/docs/images/i/b84b5ed9dcfaec3855b6e9961e7e2255.png
    deleted file mode 100755
    index 40ac0f0a..00000000
    Binary files a/docs/images/i/b84b5ed9dcfaec3855b6e9961e7e2255.png and /dev/null differ
    diff --git a/docs/images/i/bda289277c8902baf1dbd4e4c982d612.png b/docs/images/i/bda289277c8902baf1dbd4e4c982d612.png
    deleted file mode 100755
    index 2546ec5d..00000000
    Binary files a/docs/images/i/bda289277c8902baf1dbd4e4c982d612.png and /dev/null differ
    diff --git a/docs/images/i/bicubic-smile.jpg b/docs/images/i/bicubic-smile.jpg
    deleted file mode 100755
    index f8c73c02..00000000
    Binary files a/docs/images/i/bicubic-smile.jpg and /dev/null differ
    diff --git a/docs/images/i/bicubic.jpg b/docs/images/i/bicubic.jpg
    deleted file mode 100755
    index 3832cc58..00000000
    Binary files a/docs/images/i/bicubic.jpg and /dev/null differ
    diff --git a/docs/images/i/bilinear.jpg b/docs/images/i/bilinear.jpg
    deleted file mode 100755
    index 7e8a70f3..00000000
    Binary files a/docs/images/i/bilinear.jpg and /dev/null differ
    diff --git a/docs/images/i/201222188faf0b8c6e1668b6f8fce020.png b/docs/images/i/c006b2f16735a9f0337d5d8ddd2db9b1.png
    similarity index 100%
    rename from docs/images/i/201222188faf0b8c6e1668b6f8fce020.png
    rename to docs/images/i/c006b2f16735a9f0337d5d8ddd2db9b1.png
    diff --git a/docs/images/i/d5a1b5fa9681c600f13c1bca3f2af2b1.png b/docs/images/i/c833c9f624be6038e3daea11e4e38dff.png
    similarity index 100%
    rename from docs/images/i/d5a1b5fa9681c600f13c1bca3f2af2b1.png
    rename to docs/images/i/c833c9f624be6038e3daea11e4e38dff.png
    diff --git a/docs/images/i/83706a77565030ed3ba8d361acf3f3ee.png b/docs/images/i/cb080ac2d32c52ded2beb1afad8479de.png
    similarity index 100%
    rename from docs/images/i/83706a77565030ed3ba8d361acf3f3ee.png
    rename to docs/images/i/cb080ac2d32c52ded2beb1afad8479de.png
    diff --git a/docs/images/i/cb5845ae21736e7fbd615349e65ca22e.png b/docs/images/i/cb5845ae21736e7fbd615349e65ca22e.png
    deleted file mode 100755
    index 2dd17b79..00000000
    Binary files a/docs/images/i/cb5845ae21736e7fbd615349e65ca22e.png and /dev/null differ
    diff --git a/docs/images/i/1089cbc7f52165856526c1229fdf7a6e.png b/docs/images/i/ce4150ec3b352ceb6efd8489e7689f6d.png
    similarity index 100%
    rename from docs/images/i/1089cbc7f52165856526c1229fdf7a6e.png
    rename to docs/images/i/ce4150ec3b352ceb6efd8489e7689f6d.png
    diff --git a/docs/images/i/cubic-2d.jpg b/docs/images/i/cubic-2d.jpg
    deleted file mode 100755
    index 0f279efd..00000000
    Binary files a/docs/images/i/cubic-2d.jpg and /dev/null differ
    diff --git a/docs/images/i/cubic-spline.jpg b/docs/images/i/cubic-spline.jpg
    deleted file mode 100755
    index b27f8814..00000000
    Binary files a/docs/images/i/cubic-spline.jpg and /dev/null differ
    diff --git a/docs/images/i/d56de42016f5c5296c78a801b37c2b06.png b/docs/images/i/d56de42016f5c5296c78a801b37c2b06.png
    deleted file mode 100755
    index b9008687..00000000
    Binary files a/docs/images/i/d56de42016f5c5296c78a801b37c2b06.png and /dev/null differ
    diff --git a/docs/images/i/d84138fc488238b0a58b61bc4ec8d016.png b/docs/images/i/d84138fc488238b0a58b61bc4ec8d016.png
    deleted file mode 100755
    index 4fc8b06e..00000000
    Binary files a/docs/images/i/d84138fc488238b0a58b61bc4ec8d016.png and /dev/null differ
    diff --git a/docs/images/i/db2221e3034a1eeae1b3289d55f4acc1.png b/docs/images/i/db2221e3034a1eeae1b3289d55f4acc1.png
    deleted file mode 100755
    index 08718b8e..00000000
    Binary files a/docs/images/i/db2221e3034a1eeae1b3289d55f4acc1.png and /dev/null differ
    diff --git a/docs/images/i/divided-diff.jpg b/docs/images/i/divided-diff.jpg
    deleted file mode 100755
    index 938397b1..00000000
    Binary files a/docs/images/i/divided-diff.jpg and /dev/null differ
    diff --git a/docs/images/i/e21487ddeac4a56e95aef4cb0c4f060c.png b/docs/images/i/e21487ddeac4a56e95aef4cb0c4f060c.png
    deleted file mode 100755
    index 6435a507..00000000
    Binary files a/docs/images/i/e21487ddeac4a56e95aef4cb0c4f060c.png and /dev/null differ
    diff --git a/docs/images/i/9d668c1f3089ddbe244ca64da92cba71.png b/docs/images/i/e5f14ac15c9af466f21d8da52c6c6773.png
    similarity index 100%
    rename from docs/images/i/9d668c1f3089ddbe244ca64da92cba71.png
    rename to docs/images/i/e5f14ac15c9af466f21d8da52c6c6773.png
    diff --git a/docs/images/i/eb1fb849056bbb53e10f21a1ae98b4f6.png b/docs/images/i/eb1fb849056bbb53e10f21a1ae98b4f6.png
    deleted file mode 100755
    index fdd9419e..00000000
    Binary files a/docs/images/i/eb1fb849056bbb53e10f21a1ae98b4f6.png and /dev/null differ
    diff --git a/docs/images/i/effe7868c6099e688f82a7e4694b3057.png b/docs/images/i/effe7868c6099e688f82a7e4694b3057.png
    deleted file mode 100755
    index 1b26ae42..00000000
    Binary files a/docs/images/i/effe7868c6099e688f82a7e4694b3057.png and /dev/null differ
    diff --git a/docs/images/i/f057777f22836f28a8b6020a49c39cb0.png b/docs/images/i/f057777f22836f28a8b6020a49c39cb0.png
    deleted file mode 100755
    index 36073039..00000000
    Binary files a/docs/images/i/f057777f22836f28a8b6020a49c39cb0.png and /dev/null differ
    diff --git a/docs/images/i/1a92171def3515c90d471a5204d6ca5f.png b/docs/images/i/f1e1cd19f15bb2749f13f01b3c271ec9.png
    similarity index 100%
    rename from docs/images/i/1a92171def3515c90d471a5204d6ca5f.png
    rename to docs/images/i/f1e1cd19f15bb2749f13f01b3c271ec9.png
    diff --git a/docs/images/i/04a706749f4d4d2e79f12d904ca72bac.png b/docs/images/i/f62fb7dd679ed0366a3979eb6d73f4bd.png
    similarity index 100%
    rename from docs/images/i/04a706749f4d4d2e79f12d904ca72bac.png
    rename to docs/images/i/f62fb7dd679ed0366a3979eb6d73f4bd.png
    diff --git a/docs/images/i/f9ceb78a74e3fd2de2ac665d19295dcc.png b/docs/images/i/f9ceb78a74e3fd2de2ac665d19295dcc.png
    deleted file mode 100755
    index 2e98743f..00000000
    Binary files a/docs/images/i/f9ceb78a74e3fd2de2ac665d19295dcc.png and /dev/null differ
    diff --git a/docs/images/i/ff9d20a0ecb042870e1921c29591ff9c.png b/docs/images/i/ff9d20a0ecb042870e1921c29591ff9c.png
    deleted file mode 100755
    index e4c4e6bb..00000000
    Binary files a/docs/images/i/ff9d20a0ecb042870e1921c29591ff9c.png and /dev/null differ
    diff --git a/docs/images/i/kriging.jpg b/docs/images/i/kriging.jpg
    deleted file mode 100755
    index d4136821..00000000
    Binary files a/docs/images/i/kriging.jpg and /dev/null differ
    diff --git a/docs/images/i/linear-smile.jpg b/docs/images/i/linear-smile.jpg
    deleted file mode 100755
    index fc15467b..00000000
    Binary files a/docs/images/i/linear-smile.jpg and /dev/null differ
    diff --git a/docs/images/i/linear.jpg b/docs/images/i/linear.jpg
    deleted file mode 100755
    index a2129139..00000000
    Binary files a/docs/images/i/linear.jpg and /dev/null differ
    diff --git a/docs/images/i/loess-02-1.jpg b/docs/images/i/loess-02-1.jpg
    deleted file mode 100755
    index 7b39f915..00000000
    Binary files a/docs/images/i/loess-02-1.jpg and /dev/null differ
    diff --git a/docs/images/i/loess-07-4.jpg b/docs/images/i/loess-07-4.jpg
    deleted file mode 100755
    index 4c2e01c7..00000000
    Binary files a/docs/images/i/loess-07-4.jpg and /dev/null differ
    diff --git a/docs/images/i/loess.jpg b/docs/images/i/loess.jpg
    deleted file mode 100755
    index 7b39f915..00000000
    Binary files a/docs/images/i/loess.jpg and /dev/null differ
    diff --git a/docs/images/i/microsphere-2d.jpg b/docs/images/i/microsphere-2d.jpg
    deleted file mode 100755
    index d9d4cedb..00000000
    Binary files a/docs/images/i/microsphere-2d.jpg and /dev/null differ
    diff --git a/docs/images/i/microsphere.jpg b/docs/images/i/microsphere.jpg
    deleted file mode 100755
    index 471ff248..00000000
    Binary files a/docs/images/i/microsphere.jpg and /dev/null differ
    diff --git a/docs/images/i/neville.jpg b/docs/images/i/neville.jpg
    deleted file mode 100755
    index 938397b1..00000000
    Binary files a/docs/images/i/neville.jpg and /dev/null differ
    diff --git a/docs/images/i/piecewise-bicubic.jpg b/docs/images/i/piecewise-bicubic.jpg
    deleted file mode 100755
    index 96e5a57a..00000000
    Binary files a/docs/images/i/piecewise-bicubic.jpg and /dev/null differ
    diff --git a/docs/images/i/rbf-gaussian.jpg b/docs/images/i/rbf-gaussian.jpg
    deleted file mode 100755
    index f669a5a9..00000000
    Binary files a/docs/images/i/rbf-gaussian.jpg and /dev/null differ
    diff --git a/docs/images/i/rbf-imultiquadratic.jpg b/docs/images/i/rbf-imultiquadratic.jpg
    deleted file mode 100755
    index e676f726..00000000
    Binary files a/docs/images/i/rbf-imultiquadratic.jpg and /dev/null differ
    diff --git a/docs/images/i/rbf-multiquadratic.jpg b/docs/images/i/rbf-multiquadratic.jpg
    deleted file mode 100755
    index 3c2e03ae..00000000
    Binary files a/docs/images/i/rbf-multiquadratic.jpg and /dev/null differ
    diff --git a/docs/images/i/rbf-thinplate.jpg b/docs/images/i/rbf-thinplate.jpg
    deleted file mode 100755
    index dd99ed4e..00000000
    Binary files a/docs/images/i/rbf-thinplate.jpg and /dev/null differ
    diff --git a/docs/images/i/shepard-09.jpg b/docs/images/i/shepard-09.jpg
    deleted file mode 100755
    index db1b9cd5..00000000
    Binary files a/docs/images/i/shepard-09.jpg and /dev/null differ
    diff --git a/docs/images/i/shepard-5.jpg b/docs/images/i/shepard-5.jpg
    deleted file mode 100755
    index 7cb81783..00000000
    Binary files a/docs/images/i/shepard-5.jpg and /dev/null differ
    diff --git a/docs/images/i/shepard.jpg b/docs/images/i/shepard.jpg
    deleted file mode 100755
    index d604bb27..00000000
    Binary files a/docs/images/i/shepard.jpg and /dev/null differ
    diff --git a/docs/images/i/spline.jpg b/docs/images/i/spline.jpg
    deleted file mode 100755
    index 7b39f915..00000000
    Binary files a/docs/images/i/spline.jpg and /dev/null differ
    diff --git a/docs/images/i/1b5a455d76fd9742e1468a410cbabafa.png b/docs/images/rbf/01f70a02a10e91271278a3d50cc6f2c8.png
    similarity index 100%
    rename from docs/images/i/1b5a455d76fd9742e1468a410cbabafa.png
    rename to docs/images/rbf/01f70a02a10e91271278a3d50cc6f2c8.png
    diff --git a/docs/images/rbf/0ef4729eef09d453c4b1c9aabf9c4bf6.png b/docs/images/rbf/0ef4729eef09d453c4b1c9aabf9c4bf6.png
    deleted file mode 100755
    index 44d5296e..00000000
    Binary files a/docs/images/rbf/0ef4729eef09d453c4b1c9aabf9c4bf6.png and /dev/null differ
    diff --git a/docs/images/rbf/15a0fed2dcbe120b1fe4131dd36a2722.png b/docs/images/rbf/15a0fed2dcbe120b1fe4131dd36a2722.png
    deleted file mode 100755
    index 2448842e..00000000
    Binary files a/docs/images/rbf/15a0fed2dcbe120b1fe4131dd36a2722.png and /dev/null differ
    diff --git a/docs/images/rbf/1b5a455d76fd9742e1468a410cbabafa.png b/docs/images/rbf/1b5a455d76fd9742e1468a410cbabafa.png
    deleted file mode 100755
    index ca2f59e5..00000000
    Binary files a/docs/images/rbf/1b5a455d76fd9742e1468a410cbabafa.png and /dev/null differ
    diff --git a/docs/images/i/0ef4729eef09d453c4b1c9aabf9c4bf6.png b/docs/images/rbf/1b9f603a400c2e66250593792685668d.png
    similarity index 100%
    rename from docs/images/i/0ef4729eef09d453c4b1c9aabf9c4bf6.png
    rename to docs/images/rbf/1b9f603a400c2e66250593792685668d.png
    diff --git a/docs/images/i/50c6bcfc371ef4f9152d4881ab509dc5.png b/docs/images/rbf/35a921f2592121daca5c857e7dcc457c.png
    similarity index 100%
    rename from docs/images/i/50c6bcfc371ef4f9152d4881ab509dc5.png
    rename to docs/images/rbf/35a921f2592121daca5c857e7dcc457c.png
    diff --git a/docs/images/rbf/372b58c9f74390bb017a3da2fd89579b.png b/docs/images/rbf/372b58c9f74390bb017a3da2fd89579b.png
    deleted file mode 100755
    index ba90d88e..00000000
    Binary files a/docs/images/rbf/372b58c9f74390bb017a3da2fd89579b.png and /dev/null differ
    diff --git a/docs/images/i/372b58c9f74390bb017a3da2fd89579b.png b/docs/images/rbf/37e5c84e21025c968bf3c66f2d2b1732.png
    similarity index 100%
    rename from docs/images/i/372b58c9f74390bb017a3da2fd89579b.png
    rename to docs/images/rbf/37e5c84e21025c968bf3c66f2d2b1732.png
    diff --git a/docs/images/i/cfdcb4f35f52d53cc650c05b0cfb4bba.png b/docs/images/rbf/3c7c26889985c9ce9da36e0b36893ed8.png
    similarity index 100%
    rename from docs/images/i/cfdcb4f35f52d53cc650c05b0cfb4bba.png
    rename to docs/images/rbf/3c7c26889985c9ce9da36e0b36893ed8.png
    diff --git a/docs/images/i/b90c1c3309b42051594428a81aa36624.png b/docs/images/rbf/3d60555942a2d0115d6c743611bd8e31.png
    similarity index 100%
    rename from docs/images/i/b90c1c3309b42051594428a81aa36624.png
    rename to docs/images/rbf/3d60555942a2d0115d6c743611bd8e31.png
    diff --git a/docs/images/rbf/50c6bcfc371ef4f9152d4881ab509dc5.png b/docs/images/rbf/50c6bcfc371ef4f9152d4881ab509dc5.png
    deleted file mode 100755
    index 3795416a..00000000
    Binary files a/docs/images/rbf/50c6bcfc371ef4f9152d4881ab509dc5.png and /dev/null differ
    diff --git a/docs/images/i/ace600e719c5125804e36c4495e8d3c6.png b/docs/images/rbf/99ab38dd67bda3c939652d6917c20698.png
    similarity index 100%
    rename from docs/images/i/ace600e719c5125804e36c4495e8d3c6.png
    rename to docs/images/rbf/99ab38dd67bda3c939652d6917c20698.png
    diff --git a/docs/images/rbf/aa3d7161efed7eb001c8f639f2ea7ebc.png b/docs/images/rbf/aa3d7161efed7eb001c8f639f2ea7ebc.png
    deleted file mode 100755
    index fb5d9742..00000000
    Binary files a/docs/images/rbf/aa3d7161efed7eb001c8f639f2ea7ebc.png and /dev/null differ
    diff --git a/docs/images/rbf/ace600e719c5125804e36c4495e8d3c6.png b/docs/images/rbf/ace600e719c5125804e36c4495e8d3c6.png
    deleted file mode 100755
    index d9cda670..00000000
    Binary files a/docs/images/rbf/ace600e719c5125804e36c4495e8d3c6.png and /dev/null differ
    diff --git a/docs/images/i/aa3d7161efed7eb001c8f639f2ea7ebc.png b/docs/images/rbf/aeceedc935c7fae4e3744055eaa65d56.png
    similarity index 100%
    rename from docs/images/i/aa3d7161efed7eb001c8f639f2ea7ebc.png
    rename to docs/images/rbf/aeceedc935c7fae4e3744055eaa65d56.png
    diff --git a/docs/images/rbf/b90c1c3309b42051594428a81aa36624.png b/docs/images/rbf/b90c1c3309b42051594428a81aa36624.png
    deleted file mode 100755
    index 14ab0ecd..00000000
    Binary files a/docs/images/rbf/b90c1c3309b42051594428a81aa36624.png and /dev/null differ
    diff --git a/docs/images/i/15a0fed2dcbe120b1fe4131dd36a2722.png b/docs/images/rbf/c5155ac981064c0d8f9890930fb5261e.png
    similarity index 100%
    rename from docs/images/i/15a0fed2dcbe120b1fe4131dd36a2722.png
    rename to docs/images/rbf/c5155ac981064c0d8f9890930fb5261e.png
    diff --git a/docs/images/rbf/cfdcb4f35f52d53cc650c05b0cfb4bba.png b/docs/images/rbf/cfdcb4f35f52d53cc650c05b0cfb4bba.png
    deleted file mode 100755
    index 7f824811..00000000
    Binary files a/docs/images/rbf/cfdcb4f35f52d53cc650c05b0cfb4bba.png and /dev/null differ
    diff --git a/docs/images/rbf/da40c667f633f1e9a6f3da6b3444b021.png b/docs/images/rbf/da40c667f633f1e9a6f3da6b3444b021.png
    deleted file mode 100755
    index 2709b7c9..00000000
    Binary files a/docs/images/rbf/da40c667f633f1e9a6f3da6b3444b021.png and /dev/null differ
    diff --git a/docs/images/i/da40c667f633f1e9a6f3da6b3444b021.png b/docs/images/rbf/dd3a3ec6c35bd3b76188c515fc20d859.png
    similarity index 100%
    rename from docs/images/i/da40c667f633f1e9a6f3da6b3444b021.png
    rename to docs/images/rbf/dd3a3ec6c35bd3b76188c515fc20d859.png
    diff --git a/docs/index.html b/docs/index.html
    index 2d9f7fd9..bc524eb7 100755
    --- a/docs/index.html
    +++ b/docs/index.html
    @@ -1,3 +1,3 @@
     
    -Fastmath 0.1.2-SNAPSHOT

    Fastmath 0.1.2-SNAPSHOT

    Released under the Unlicence

    Fast and primitive math library.

    Installation

    To install, add the following dependency to your project or build file:

    [generateme/fastmath "0.1.2-SNAPSHOT"]

    Namespaces

    fastmath.complex

    Complex numbers functions.

    Categories

    Other vars: abs add arg complex conjugate div mult neg reciprocal sq sqrt sqrt1z sub

    fastmath.rbf

    Radial Basis Function

    Categories

    \ No newline at end of file +Fastmath 1.0.0

    Fastmath 1.0.0

    Released under the Unlicence

    Fast and primitive math library.

    Installation

    To install, add the following dependency to your project or build file:

    [generateme/fastmath "1.0.0"]

    Namespaces

    fastmath.complex

    Complex numbers functions.

    Categories

    Other vars: abs add arg complex conjugate div mult neg reciprocal sq sqrt sqrt1z sub

    fastmath.rbf

    Radial Basis Function

    Categories

    \ No newline at end of file diff --git a/project.clj b/project.clj index 0e767563..a33611c8 100755 --- a/project.clj +++ b/project.clj @@ -1,4 +1,4 @@ -(defproject generateme/fastmath "0.1.2-SNAPSHOT" +(defproject generateme/fastmath "1.0.0" :description "Fast and primitive math library" :url "https://github.com/generateme/fastmath" :license {:name "The Unlicence" @@ -26,7 +26,7 @@ [criterium "0.4.4"] [incanter/incanter-charts "1.9.2"] [incanter/incanter-core "1.9.2"] - [metadoc "0.2.2"]] + [metadoc "0.2.3"]] :codox {:themes [:rdash] :metadata {:doc/format :markdown} :output-path "docs/"