massiv-0.5.9.0: Massiv (Массив) is an Array Library.
Copyright(c) Alexey Kuleshevich 2018-2019
LicenseBSD3
MaintainerAlexey Kuleshevich <lehins@yandex.ru>
Stabilityexperimental
Portabilitynon-portable
Safe HaskellNone
LanguageHaskell2010

Data.Massiv.Core.Operations

Description

 

Documentation

class Num e => Numeric r e where Source #

Minimal complete definition

foldArray, unsafeLiftArray, unsafeLiftArray2

Methods

sumArray :: Index ix => Array r ix e -> e Source #

Compute sum of all elements in the array

Since: 0.5.6

productArray :: Index ix => Array r ix e -> e Source #

Compute product of all elements in the array

Since: 0.5.6

powerSumArray :: Index ix => Array r ix e -> Int -> e Source #

Raise each element in the array to some non-negative power and sum the results

Since: 0.5.7

unsafeDotProduct :: Index ix => Array r ix e -> Array r ix e -> e Source #

Compute dot product without any extraneous checks

Since: 0.5.6

plusScalar :: Index ix => Array r ix e -> e -> Array r ix e Source #

minusScalar :: Index ix => Array r ix e -> e -> Array r ix e Source #

scalarMinus :: Index ix => e -> Array r ix e -> Array r ix e Source #

multiplyScalar :: Index ix => Array r ix e -> e -> Array r ix e Source #

absPointwise :: Index ix => Array r ix e -> Array r ix e Source #

additionPointwise :: Index ix => Array r ix e -> Array r ix e -> Array r ix e Source #

subtractionPointwise :: Index ix => Array r ix e -> Array r ix e -> Array r ix e Source #

multiplicationPointwise :: Index ix => Array r ix e -> Array r ix e -> Array r ix e Source #

powerPointwise :: Index ix => Array r ix e -> Int -> Array r ix e Source #

Raise each element of the array to the power

foldArray :: Index ix => (e -> e -> e) -> e -> Array r ix e -> e Source #

Fold over an array

Since: 0.5.6

unsafeLiftArray :: Index ix => (e -> e) -> Array r ix e -> Array r ix e Source #

unsafeLiftArray2 :: Index ix => (e -> e -> e) -> Array r ix e -> Array r ix e -> Array r ix e Source #

Instances

Instances details
Num e => Numeric D e Source # 
Instance details

Defined in Data.Massiv.Array.Delayed.Pull

Methods

sumArray :: Index ix => Array D ix e -> e Source #

productArray :: Index ix => Array D ix e -> e Source #

powerSumArray :: Index ix => Array D ix e -> Int -> e Source #

unsafeDotProduct :: Index ix => Array D ix e -> Array D ix e -> e Source #

plusScalar :: Index ix => Array D ix e -> e -> Array D ix e Source #

minusScalar :: Index ix => Array D ix e -> e -> Array D ix e Source #

scalarMinus :: Index ix => e -> Array D ix e -> Array D ix e Source #

multiplyScalar :: Index ix => Array D ix e -> e -> Array D ix e Source #

absPointwise :: Index ix => Array D ix e -> Array D ix e Source #

additionPointwise :: Index ix => Array D ix e -> Array D ix e -> Array D ix e Source #

subtractionPointwise :: Index ix => Array D ix e -> Array D ix e -> Array D ix e Source #

multiplicationPointwise :: Index ix => Array D ix e -> Array D ix e -> Array D ix e Source #

powerPointwise :: Index ix => Array D ix e -> Int -> Array D ix e Source #

foldArray :: Index ix => (e -> e -> e) -> e -> Array D ix e -> e Source #

unsafeLiftArray :: Index ix => (e -> e) -> Array D ix e -> Array D ix e Source #

unsafeLiftArray2 :: Index ix => (e -> e -> e) -> Array D ix e -> Array D ix e -> Array D ix e Source #

(Prim e, Num e) => Numeric P e Source # 
Instance details

Defined in Data.Massiv.Array.Manifest.Primitive

Methods

sumArray :: Index ix => Array P ix e -> e Source #

productArray :: Index ix => Array P ix e -> e Source #

powerSumArray :: Index ix => Array P ix e -> Int -> e Source #

unsafeDotProduct :: Index ix => Array P ix e -> Array P ix e -> e Source #

plusScalar :: Index ix => Array P ix e -> e -> Array P ix e Source #

minusScalar :: Index ix => Array P ix e -> e -> Array P ix e Source #

scalarMinus :: Index ix => e -> Array P ix e -> Array P ix e Source #

multiplyScalar :: Index ix => Array P ix e -> e -> Array P ix e Source #

absPointwise :: Index ix => Array P ix e -> Array P ix e Source #

additionPointwise :: Index ix => Array P ix e -> Array P ix e -> Array P ix e Source #

subtractionPointwise :: Index ix => Array P ix e -> Array P ix e -> Array P ix e Source #

multiplicationPointwise :: Index ix => Array P ix e -> Array P ix e -> Array P ix e Source #

powerPointwise :: Index ix => Array P ix e -> Int -> Array P ix e Source #

foldArray :: Index ix => (e -> e -> e) -> e -> Array P ix e -> e Source #

unsafeLiftArray :: Index ix => (e -> e) -> Array P ix e -> Array P ix e Source #

unsafeLiftArray2 :: Index ix => (e -> e -> e) -> Array P ix e -> Array P ix e -> Array P ix e Source #

(Storable e, Num e) => Numeric S e Source # 
Instance details

Defined in Data.Massiv.Array.Manifest.Storable

Methods

sumArray :: Index ix => Array S ix e -> e Source #

productArray :: Index ix => Array S ix e -> e Source #

powerSumArray :: Index ix => Array S ix e -> Int -> e Source #

unsafeDotProduct :: Index ix => Array S ix e -> Array S ix e -> e Source #

plusScalar :: Index ix => Array S ix e -> e -> Array S ix e Source #

minusScalar :: Index ix => Array S ix e -> e -> Array S ix e Source #

scalarMinus :: Index ix => e -> Array S ix e -> Array S ix e Source #

multiplyScalar :: Index ix => Array S ix e -> e -> Array S ix e Source #

absPointwise :: Index ix => Array S ix e -> Array S ix e Source #

additionPointwise :: Index ix => Array S ix e -> Array S ix e -> Array S ix e Source #

subtractionPointwise :: Index ix => Array S ix e -> Array S ix e -> Array S ix e Source #

multiplicationPointwise :: Index ix => Array S ix e -> Array S ix e -> Array S ix e Source #

powerPointwise :: Index ix => Array S ix e -> Int -> Array S ix e Source #

foldArray :: Index ix => (e -> e -> e) -> e -> Array S ix e -> e Source #

unsafeLiftArray :: Index ix => (e -> e) -> Array S ix e -> Array S ix e Source #

unsafeLiftArray2 :: Index ix => (e -> e -> e) -> Array S ix e -> Array S ix e -> Array S ix e Source #

class (Numeric r e, Floating e) => NumericFloat r e where Source #

Minimal complete definition

Nothing

Methods

divideScalar :: Index ix => Array r ix e -> e -> Array r ix e Source #

scalarDivide :: Index ix => e -> Array r ix e -> Array r ix e Source #

divisionPointwise :: Index ix => Array r ix e -> Array r ix e -> Array r ix e Source #

recipPointwise :: Index ix => Array r ix e -> Array r ix e Source #

sqrtPointwise :: Index ix => Array r ix e -> Array r ix e Source #

Instances

Instances details
Floating e => NumericFloat D e Source # 
Instance details

Defined in Data.Massiv.Array.Delayed.Pull

Methods

divideScalar :: Index ix => Array D ix e -> e -> Array D ix e Source #

scalarDivide :: Index ix => e -> Array D ix e -> Array D ix e Source #

divisionPointwise :: Index ix => Array D ix e -> Array D ix e -> Array D ix e Source #

recipPointwise :: Index ix => Array D ix e -> Array D ix e Source #

sqrtPointwise :: Index ix => Array D ix e -> Array D ix e Source #

(Prim e, Floating e) => NumericFloat P e Source # 
Instance details

Defined in Data.Massiv.Array.Manifest.Primitive

Methods

divideScalar :: Index ix => Array P ix e -> e -> Array P ix e Source #

scalarDivide :: Index ix => e -> Array P ix e -> Array P ix e Source #

divisionPointwise :: Index ix => Array P ix e -> Array P ix e -> Array P ix e Source #

recipPointwise :: Index ix => Array P ix e -> Array P ix e Source #

sqrtPointwise :: Index ix => Array P ix e -> Array P ix e Source #

(Storable e, Floating e) => NumericFloat S e Source # 
Instance details

Defined in Data.Massiv.Array.Manifest.Storable

Methods

divideScalar :: Index ix => Array S ix e -> e -> Array S ix e Source #

scalarDivide :: Index ix => e -> Array S ix e -> Array S ix e Source #

divisionPointwise :: Index ix => Array S ix e -> Array S ix e -> Array S ix e Source #

recipPointwise :: Index ix => Array S ix e -> Array S ix e Source #

sqrtPointwise :: Index ix => Array S ix e -> Array S ix e Source #