add PCA whitening parameter (#65)

* add PCA whitening parameter

* FluidPCA: Ensure whiten parameter is sent to kr query UGen

Co-authored-by: Gerard <gerard@bumblebee.lan>
Co-authored-by: weefuzzy <gungwho@gmail.com>
nix
Gerard Roma 4 years ago committed by GitHub
parent e450aef220
commit 333a121524
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -1,13 +1,13 @@
FluidPCA : FluidModelObject{
var <>numDimensions;
var <>numDimensions, <>whiten;
*new {|server, numDimensions = 2|
^super.new(server,[numDimensions]).numDimensions_(numDimensions);
*new {|server, numDimensions = 2, whiten = 0|
^super.new(server,[numDimensions, whiten]).numDimensions_(numDimensions).whiten_(whiten);
}
prGetParams{
^[this.id, numDimensions];
^[this.id, numDimensions, whiten];
}
fitMsg{|dataSet|
@ -55,7 +55,7 @@ FluidPCA : FluidModelObject{
numDimensions = numDimensions ? this.numDimensions;
this.numDimensions_(numDimensions);
^FluidPCAQuery.kr(trig ,this, this.prEncodeBuffer(inputBuffer), this.prEncodeBuffer(outputBuffer), this.numDimensions);
^FluidPCAQuery.kr(trig ,this, this.prEncodeBuffer(inputBuffer), this.prEncodeBuffer(outputBuffer), this.numDimensions, this.whiten);
}
inverseTransformPointMsg{|sourceBuffer, destBuffer|
@ -74,9 +74,9 @@ FluidPCA : FluidModelObject{
}
FluidPCAQuery : FluidRTMultiOutUGen {
*kr{ |trig, model, inputBuffer,outputBuffer,numDimensions|
*kr{ |trig, model, inputBuffer,outputBuffer,numDimensions, whiten|
^this.multiNew('control',trig, model.asUGenInput,
numDimensions,
numDimensions, whiten,
inputBuffer.asUGenInput, outputBuffer.asUGenInput)
}
@ -84,4 +84,4 @@ FluidPCAQuery : FluidRTMultiOutUGen {
inputs = theInputs;
^this.initOutputs(1, rate);
}
}
}

Loading…
Cancel
Save