-
Notifications
You must be signed in to change notification settings - Fork 9
Open
Description
See: ambisonictoolkit/atk-sc3#132
Let's relax the constraint in the Matrix class (MathLib) that values must be numbers. Since sclang automatically lifts math operations to UGens, it seems overly narrow.
EDIT: I've made a ticklist for methods that work with UGens, Arrays, and Functions as matrix entries, from inspecting the code.
class methods
- *newClear (rows, cols)
- *with (array)
- *withFlatArray (rows, cols, array)
- *newIdentity (n)
- *fill (rows, cols, func)
- *newDiagonal (diagonal)
- *newDFT (n)
- *newIDFT (n)
- *mul (m1, m2)
instance methods
- rows ()
- cols ()
- shape ()
- printOn (stream)
- printItemsOn (stream)
- postmln ()
- at (row, col)
- get (row, col)
- put (row, col, val)
- putRow (row, vals)
- putCol (col, vals)
- fillRow (row, func)
- fillCol (col, func)
- exchangeRow (posA, posB)
- exchangeCol (posA, posB)
- collect (func)
- addRow (rowVals)
- insertRow (col, rowVals)
- addCol (colVals)
- insertCol (row, colVals)
- getRow (row)
- getCol (col)
- getDiagonal ()
- fromRow (row)
- fromCol (col)
- removeRow (row)
- removeAt (row)
- removeCol (col)
- doRow (row, func)
- doCol (col, func)
- doMatrix (function)
- rowsDo (func)
- colsDo (func)
- sub (row, col)
- getSub (rowStart, colStart, rowLength, colHeight)
- postSub (rowStart, colStart, rowLength, colHeight, round)
- asArray ()
- flat ()
- flatten ()
- flop ()
- mul (multplier2)
- * (that)
- mulMatrix (aMatrix)
- mulNumber (aNumber)
- + (summand2)
- addNumber (aNumber)
- - (summand2)
- subNumber (aNumber)
- == (matrix2)
- det ()
- cofactor (row, col)
- adjoint ()
- inverse ()
- gram ()
- grammian ()
- pseudoInverse ()
- trace ()
- norm ()
- sum ()
- sumRow (row)
- sumCol (col)
- isSquare ()
- isSingular ()
- isRegular ()
- isSymmetric ()
- isAntiSymmetric ()
- isPositive ()
- isNonNegative ()
- isNormal ()
- isZero ()
- isIntegral ()
- isIdentity ()
- isDiagonal ()
- isOrthogonal ()
- isIdempotent ()
- sumCols (function)
- sumRows (function)
- mean ()
- center (mean)
- cov (mean)
- covML (mean)
Extensions
- solve (b, method)
- lowerTriangularSolve (b)
- unitLowerTriangularSolve (b)
- lowerTriangularInverse ()
- unitLowerTriangularInverse ()
- upperTriangularSolve (b)
- unitUpperTriangularSolve (b)
- upperTriangularInverse ()
- unitUpperTriangularInverse ()
- gauss (b)
- choleski ()
- choleskiSolve (b)
- crout ()
- croutSolve (b)
- croutPivot ()
- croutPivotSolve (b, pivot)
- doolittle ()
- doolittleSolve (b)
- doolittlePivot ()
- doolittlePivotSolve (b, pivot)
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels