&u7      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmn o p q r s t u v w x y z { | } ~        !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,- . / 0 1 2 3 4 5 6 ! Safe-Inferred 78   78 Safe-Inferred9:;9:;!None<< non-portable  experimental bash@cs.uu.nl, jpm@cs.ox.ac.uk  Safe-Inferred:Similar to group, but in case a group is smaller than s, . the group is filled with the same number of a's: 0groupMinSize 3 0 [1,2,2,3,3,3,4,4,4,4,5,5,5,5,5])[[0],[0,0],[0,0,0],[4,4,4,4],[5,5,5,5,5]]Returns the mean of list. a median filter: see  *http://en.wikipedia.org/wiki/Median_filter. Returns a list with all sliding windows of a particular size. O The left and right edge of the list are filled with the first and last (size  @2) items, respectively and the remainder is filled with the mode median of  the complete list. @The mode: the element that occurs most often in the collection. !Returns the median of a list. "3Returns the index of th maximal element of a list.  !" !" !" !" non-portable  experimental bash@cs.uu.nl, jpm@cs.ox.ac.uk None#Parsing beat time stamps. $Parses = data. % Parses a >. &Chroma parsing. #$%&'()*+,- #$%&'()*+,- #$%&()*+,-' #$%&'()*+,- non-portable  experimental bash@cs.uu.nl, jpm@cs.ox.ac.uk None.Parses a chord annotation. ?4Parses the onset, offset and chordlabel on one line / Parses a @ annotation. .?/ABCDEF././ .?/ABCDEF Safe-Inferred#0123456789:;<=>?@ABCDEFGHIJKLMNOGHI 0123456789:;<=>?@ABCDEFGHIJKLMNO 0123456789:;<=A>B?@CDEFHGKJILMNO0123456789:;<=>?@ABCDEFGHIJKLMNOGHINonePQRSTUVWXYZ[\]JPQRSTUVWXYZ[\]PQRSTUVWXYZ]\[ PQRSTUVWXYZ[\]JNonemFMerges duplicate chords and transforms absolute chord labels into key < relative tokens that can be parsed by the HarmTrace model ^_`abcdefghijklmKLMNOP^_`abcdefghijklmefghijkl^_`dcbam ^_`dcbaefghijklmKLMNOP None;nopqrstuvwxyz{|}~QRSTUVWXYZ[\]^_`abcdefghijklnopqrstuvwxyz{|}~|~}w{zyxrvutspqno#nopqrvutsw{zyx|~}QRSTUVWXYZ[\]^_`abcdefghijkl None None mnopqrs mnopqrs Nonetuvwxyz tuvwxyz None {|}~ {|}~NoneNone NoneNone non-portable experimentalbash@cs.uu.nl, jpm@cs.ox.ac.ukNone     i     i     R      None !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~g !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~g~|}y{zrxwvutsjqponmlk[ihgfedcba`_^]\YZWXTVURSPQNOMLKJCIHGFEDAB?@>=<;:9876543210/.-,+*)('&%#$!" R !"#$%&'()*+,-./0123456789:;<=>?@ABCIHGFEDJKLMNOPQRSTVUWXYZ[ihgfedcba`_^]\jqponmlkrxwvutsy{z|}~ non-portable  experimental bash@cs.uu.nl, jpm@cs.ox.ac.uk None=a type synoniome for a harmonic analysis of a piece of music default generic parser   non-portable  experimental bash@cs.uu.nl, jpm@cs.ox.ac.uk NoneO44NNoneO     55N     None !f !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxy|}~ ! non-portable  experimental bash@cs.uu.nl, jpm@cs.ox.ac.uk None"#h     "# non-portable  experimental bash@cs.uu.nl, jpm@cs.ox.ac.uk None$%$%None&'( &'( non-portable  experimental bash@cs.uu.nl, jpm@cs.ox.ac.uk  Safe-Inferred>An ennumerator of determining the output format of the chords Automatically generated FThe cutOffProbability is the value that determines the length of the O probChord list (a sorted list with normalised distances to the chroma vector) DThe maximum number if chords (the lenght) of a chord candidate list KThe maximum size of a list of chord candidate lists (of which all possible H combinations will be parsed). If, in the segmentation procedure, this  threshold is crossed an 'emergency split' will be made (see 6 Harmtrace.Audio.Annotate.emergencySplit for details)  JChord candidate list segments can contain long and short chord candidate J lists. This strongly influences the number of considered chord sequence M combinations, i.e. the LProductSize. If the number of possible combinations  becomes greater than the   also an 'emergency split' will % be made, similar to maxSegmentSize.  GThe sample rate used in a normal (non-visual) comparison (in seconds).  HThe sample rate used when visually comparing a chord annotation with a L ground-truth annotation. Often a higher sample rate is preferred. Although : one uses precision, the visual result is easier to read.  7Before feature extraction, all audio is downsampled to   M Hz. N.B. If the sample rate is changed the VAMP plugin transforms should be  updated accordingly (see beat, chroma, key).  >Before feature extraction, all audio is converted to contain    bits per sample. LBefore feature extraction, all audio is converted to contain a fixed number / of channels, e.g. 1 for mono or 2 for stereo. DControls whether the downsampled wav file is deleted after feature  extraction. EControls whether SoX is used to downsample the audio or whether the : audio file is passed to the sonic annotator directly. If 'downSample is E set to False, all paramters downsampling parameters will be ignored DControls whether the downsampled wav file is deleted after feature  extraction. 4The strings that build up a audio feature file name 4The strings that build up a audio feature file name 4The strings that build up a audio feature file name Gspecifying the filename of the beat tracker VAMP plugin transform file Fspecifying the filename of the NNLS chroma VAMP plugin transform file Mspecifying the filename of the key-finding chroma VAMP plugin transform file 4The default base directory is the current directory 8By default we assume the sonic-annotator is in the path 8By default we assume the sonic-annotator is in the path GBy default we only display major and minor chords to the user (because G the transcription quality of these chords is better than that of the  chord class). IThe penatly given in the cumulative key strength calculation. For every H beat the correlation between a Krumhansl profile and the current beat K synchronised chroma feature is calculated for all 24 keys at every beat. 8 An optimal path through this table can be defined as:  $M[i,j] = max { M[i-1,j] + K[i,j],  M[i-1,j] + K[i,k] + p, }  where {k mid forall x : K[i,x] leq K[i,k]}$ K where $p$ is the modulationPenalty, i.e. the penalty for changing the key  at that particular beat. -The minimal length in beats of a key segment )               )      non-portable  experimental bash@cs.uu.nl, jpm@cs.ox.ac.uk None Synchronises the * with the list of beats  by grouping the  ChordinoLines of the * in separate lists. !AMerges chord segments, adding a bias toward merging at the first  and the third > +#Calculates the intersection of to [' ProbChord]' N.B. because of the M set-based nature of the function the function is rather expensive, luckily  the length of the [,]- is constant. Also, because the intersection  might change the order of the ,s we sort the list again  descendingly "HHaving a matrix of beat-synchronised bass and treble chromagrams and a O chord dictionary, the probability of a chord sounding at a particular beat is O estimated by calculating the Euclidean distance between the chord structures I and the chroma feature. These distances are calculated for every chord L candidate at every beat. Next, we sort the chord candidates by descending > Euclidean distance. To obtain a relative measure of the fit B between a chord candidate and the chroma vector in the range [0,1], H the distances are normalised by dividing them by distance of the best  matching chord candidate.  !-+"#./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123 !"#" #! !-+"#./012345 non-portable  experimental bash@cs.uu.nl, jpm@cs.ox.ac.uk None$7Calculates the beat synchronised key strenght for all  24 keys (ordered by KeyMap). %:A key chroma map using a circle of fifths based ordering. $456789:%$%$% $456789:% non-portable  experimental bash@cs.uu.nl, jpm@cs.ox.ac.uk None& Returns a @ key assignment, given > and chroma information. H N.B. The beats and chroma do not have to be synchronised, they will be 0 sychronised in the process of finding the key  (see "# and $%) &;<=>?&&&;<=>? non-portable  experimental bash@cs.uu.nl, jpm@cs.ox.ac.uk None(?MPTrEE (Model Propelled Transcription of Euphonic Enitities): < a sophisticated, harmony and beat informed chord annotator )Gpreprocesses the raw audio data before using chord harmony model based I chord selection. First, the beats and chroma are synchronised. Second, M chord candidate lists are created. Third, smart, beat informed grouping of K the chord candidates is performed. Fourth, the chord candidate lists are 0 grouped in segments based on the key (obtained H as provided by the user or as derived from the audio data). Last, the J chord candidate lists are further segmented based on the occurrences of  I and V chords. @.Chord selection based on the harmtrace model AFReturns the reduced chord sequences, where repeated chords are merged  into one ,, wrapped in a B type. *prints Segmetation statistics +ICreates an annotation out of a Chord candidate list by just picking the 2 first chord. This annotator does smart grouping  (see &). ,6The most simple annotator, no grouping, no matching, # just pick the best matching chord '()@CDEFAGHIJKLMN*OP+,'()*+,(+,'*)'()@CDEFAGHIJKLMN*OP+,  non-portable  experimental bash@cs.uu.nl, jpm@cs.ox.ac.uk None -Returns True if both Q's are equal at the chord class level: L A chord is classified as being major, minor, dominant seventh, or dimished  seventh. -3 only returns True if the class of compared chords  is the same.  None Chords( match only with other None Chords and  with nothing else .Returns True if both Q)s are equal at the triad level: they are " either moth major or both minor.  None Chords match only with other  None Chords and with nothing else /Returns True if the R s of the Ss are equal, but the one chord ( is Major and the other chord is Minor. Tenharmonic equality for R Us, N == N, X == X, and G# == Ab 0=Calculates the relative correct overlap, which is the recall J of matching frames, and defined as the nr of matching frames (sampled at 3 an 10 milisecond interval) divided by all frames. 1?Given a chord annotation sample the chord label at every 10 ms 2Hcalculates the maximal achievable score given a ground truth annotation  and a chord candidate list. 4The 33 is optimal if it is one, but it can be larger or M smaller than 1. Therefore, calculating the average blurs the actual result.  4? takes the absolute difference to 1.0 and averages these for a  list of Doubles. 5Adoes the same thing as relCorrectOverlap, but it also prints the A chords and uses a lower sample rate. N.B. the number output by  printRelCorrectOverlap" might differ from the output of  05, because a different sample rate might be used (see   Constants). 6=Calculates the relative correct overlap, which is the recall J of matching frames, and defined as the nr of matching frames (sampled at  an interval set in ' divided by all frames.  This functions difers from 0 in that it uses an " equality function that is in IO. V-./T0W1XY23456 -./0123456 0234.-/561V-./T0W1XY23456Z()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxxyz{|}~                                           !"#$%&'()*+,-./0122345     6789:;< !"#$%&'(),-=0>122345?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvCDEFGHIJKLMNPQRSTUVXYZwxy\]z{|_}`abcdefghijklop~stuv          !                                                    !"#$%&'()*+,--./01234(56789:;<=>?@ABCDEFGHIJKLMNOPQRS:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxy_`abcdefghijklnopqrstuvwxyz{z{|}~&      !"#$%&'&(&)*+*,*-*.*/*0*1*2*3*4*5*6*7*8*9*:*;*<*=*>*?*@*A*BCDCEFGFHFIFJFKFLFMFNFOFPFQFRFSFTFUFVFWXYXZX[X\]^]_]`]a]b]c]d]e]f]g]h]i]j]k]l]m]n]o]p]q]r]s]t]uvwxyz{yzIyz|yz}yz~yzyzyzyzyzyzyzyzyzyzyzyzyzyzyzyzyzyzyzyzyzyzyzyzyzyzyzyzyzyz     HarmTrace-2.2.0HarmTrace.Models.TypeLevelHarmTrace.Matching.StandardHarmTrace.Audio.StatisticalHarmTrace.Audio.DataParser HarmTrace.Audio.AnnotationParserHarmTrace.HAnTree.TreeHarmTrace.IO.ErrorsHarmTrace.Models.ChordTokensHarmTrace.HAnTree.HAnHarmTrace.HAnTree.HAnParserHarmTrace.HAnTree.ToHAnTreeHarmTrace.HAnTree.PostProcessHarmTrace.Matching.SimHarmTrace.Matching.SimpleChordHarmTrace.Matching.HChordHarmTrace.Matching.Alignment!HarmTrace.Matching.GuptaNishimuraHarmTrace.Models.Jazz.ModelHarmTrace.Models.Pop.ModelHarmTrace.Models.ParserHarmTrace.Models.Jazz.InstancesHarmTrace.Models.Pop.InstancesHarmTrace.Models.Pop.MainHarmTrace.Models.Jazz.MainHarmTrace.Models.ModelsHarmTrace.HarmTrace ConstantsHarmTrace.Audio.ChromaChordHarmTrace.Audio.ChromaKeyHarmTrace.Audio.KeyHarmTrace.Audio.AnnotateHarmTrace.Audio.EvaluationHarmTrace.Base.InstancesHarmtrace.Audio ChromaKeyHarmtrace.Audio.ChromaChordBeatSync mergeByBeat HarnTraceToNattoNatT20T19T18T17T16T15T14T13T12T11T10T9T8T7T6T5T4T3T2T1T0ZeSu diffChordsLen diffChords groupMinSizelistMean medianFilter getWindowshasSizemodemedian maxListIndex parseBeatDataparseBarTimeDatapBeatparseChordinoDatashiftparseChromaDatapNumDatapCommapParentheticalString pQuotedStringpLabelparseAnnotationDataparseKeyAnnotationDataTreeNodegetLabelgetChildgetPnstrTree findClose findClose'getPns getChildPns getSubTreeisLf collectLeafssizesizeFavgDepth avgDepthFdepthdepthFdepth'removeremoveBy removeBy'potPretpotpot'pretpret' preToPostsetPostsetPre matchToTreeErrorNrsinsdeldelEndrep showErrors countErrorssimpleErrorMeasure errorRatioinc1inc2inc3inc4 PieceToken ParseStatusInsertedDeletedParsed NotParsed ChordTokenroot classTypechordsstatus chordNumRepsdur toKeyRelTokSetDursetDurGetDurgetDurTransNoTransDimTransDimTritTritPrepNoPrepDiatDomSecMinSecDomSpecParallel MinBorrowBluesHFuncPTPDPSubDomTonHAnHAnChordHAnTransHAnPrepHAnFuncparseHAnpHFuncpModepSpecpAnyStrGTreegTree gTreeDefault gTreeHead emptyHAnTreePPOptionExpandChordDurationsMergeDelChords RemovePDPTRemoveInsertionsexpandChordDurations removePDPTremoveInsertionsmergeDelChordsSimsimmaxSimdiv1SimChord toSimChordsHChord toHChords getAlignDist alignChordLab getHAnDist alignHAnChordpPrintV getLCESsim getLCESsize getLCESdepthgetLCESMinThirdIIbDimTritoneVMinVDomDiatVMDiatVToDegreetoDegreeToClasstoClassImpVIIsVIIbVIIVIsVIbVIVsVbVIVsIVbIVIIIsIIIbIIIIIsIIbIIIsIbIDimClassDomClassMinClassMajClass Surface_ChordDim_Chord_Trns Base_Final Final_Dim_V Final_TritoneBase_SD Cons_Vmin Cons_DiatM' Cons_DiatM Cons_Diat Cons_VdomFinal FinalDimTrans TritMinVSubSD SMajBorrowS_20_bor DMajBorrowD_24_bor TMajBorrowT_23_borT_21_bor SMinBorrow Sm_22_bor Sm_20_bor DMinBorrow Dm_24_bor TMinBorrow Tm_23_bor Tm_21_borSDomSm_6Sm_5_borSm_4Sm_3S_5_borS_4S_3S_2_parS_1_parDm_8_borDm_4D_8_borD_4D_3D_2D_1Tm_6_borTm_3_parTm_2Tm_1T_6_borT_3_parT_2T_1PhrasePieceMinModeMajModeallTypesSm_9_borSm_5_parSm_7S_9_borS_5_parS_7S_3_blsT_4_blsT_0ParseGparseGPMusic parseGdefault GetDegreegetDegpChordtoGTree toGTreeSplit toTransSDValtoSDValRepSMajBorrow_SMajBorrow_S_20_bor_RepDMajBorrow_DMajBorrow_D_24_bor_RepTMajBorrow_TMajBorrow_T_23_bor_TMajBorrow_T_21_bor_RepSMinBorrow_SMinBorrow_Sm_22_bor_SMinBorrow_Sm_20_bor_RepDMinBorrow_DMinBorrow_Dm_24_bor_RepTMinBorrow_TMinBorrow_Tm_23_bor_TMinBorrow_Tm_21_bor_RepSDom_ SDom_Sm_6_SDom_Sm_5_bor_ SDom_Sm_4_ SDom_Sm_3_ SDom_S_5_bor_ SDom_S_4_ SDom_S_3_ SDom_S_2_par_ SDom_S_1_par_RepDom_ Dom_Dm_8_bor_ Dom_Dm_4_ Dom_D_8_bor_Dom_D_4_Dom_D_3_Dom_D_2_Dom_D_1_RepTon_ Ton_Tm_6_bor_ Ton_Tm_3_par_ Ton_Tm_2_ Ton_Tm_1_ Ton_T_6_bor_ Ton_T_3_par_Ton_T_2_Ton_T_1_ RepPhrase_ Phrase_PD_ Phrase_PT_SDom_Sm_9_bor_SDom_Sm_5_par_ SDom_Sm_7_ SDom_S_9_bor_ SDom_S_5_par_ SDom_S_7_ SDom_S_3_bls_ Ton_T_4_bls_Ton_T_0_pPoppJazz GrammarExGrammarPopJazz ParseResult parsedKeyparsedChordLabels parsedPiece pieceTreeHAn nrAmbTreestokenizerErrors pieceErrorspostProcessingpostProc string2Piecegt2PieceChordPrintOptsPrintChordClass PrintMajMinvERSIONcutOffProbabilitymaxProbChordListLengthmaxSegmentSizemaxLProductSizeevaluationSampleRatedisplaySampleRateoutputSampleRateoutputBitsPerSampleoutputNrOfChannelsdeleteDownsampledWav downSample chromaStrkeyStrbeatStr beatVampPathchromaVampPath keyVampPathdefaultVampDir defaultOutDir defaultLogDirdefaultFeatDirsonicAnnotator logFileSuffixdefaultChordPrintingmodulationPenaltyminModulationLengthbeatSyncmergeByOneAndThreecreateChordRanksmeanBeatSyncVectorsbeatSyncKeyStrengthkeyMapgetBeatSyncKeyFromChromamptreeAnnotatorSTGmptreeAnnotatorpreProcessData putSegStatsgroupAnnotatorsimpleAnnotator chordClassEq chordTriadEqmajMinEqrelCorrectOverlapsample achievScorechordChangeRatio avgDistToOne printChordRCOprintRCO $fToNatSu $fToNatZediffdiffLenlen $fNFDataModeHarmTrace-Base-1.0.0.2HarmTrace.Base.MusicTimeBarTimeBeat pChordSegmentHarmTrace.Base.MusicRepKey pKeySegmentpKeypKeyNone timedData' pSpaceTab $fBinaryTree $fNFDataTree $fShowTree$fShowErrorNrs toKeyRelTok' showChords$fBinaryParseStatus$fBinaryChordToken$fShowChordToken$fEqChordToken $fShowSpec $fShowHFunc $fShowHAn $fShowTrans $fShowPrep $fEqTrans$fEqPrep $fEqHFunc$fEqHAn $fSetDurTrans $fSetDurPrep $fSetDurHFunc $fSetDurHAn $fGetDurChord $fGetDurTrans $fGetDurPrep $fGetDurHFunc $fGetDurHAn $fNFDataSpec $fNFDataTrans $fNFDataPrep $fNFDataHFunc $fNFDataHAn $fBinarySpec $fBinaryHFunc $fBinaryPrep $fBinaryTrans $fBinaryHAn $fGTree[] $fGTreeVar $fGTreeRec $fGTree:*: $fGTreeCEq $fGTree:+:$fGTreeUremIns isInsertedmergeDelChords'toDelHAnfilterErrorPosgroupNeighboursget$fSimChordToken $fSimPrep $fSimTrans $fSimMode $fSimHFunc$fSimInt$fSimHAn$fSim[] $fSimTree$fShowSimChord $fSimSimChorddegclssfuncpreptrnsgetHAnupdateundefinedHChord $fShowHChord $fSimHChordalignwbMatchF collectMatchcollectrealMax3 matchToSeq!max3max0max getDownRightLCES nonMatchPenallces findBestMatchwbMatch getWeightdurSim emptyLCESlastcumDurisFreemergemySort $fToDegreeImp$fToDegreeVIIs $fToDegreeVIs $fToDegreeVs $fToDegreeIVs$fToDegreeIIIs $fToDegreeIIs$fToDegreeVIIb $fToDegreeVIb $fToDegreeVb $fToDegreeIVb$fToDegreeIIIb $fToDegreeIIb $fToDegreeIb $fToDegreeVII $fToDegreeVI $fToDegreeV $fToDegreeIV $fToDegreeIII $fToDegreeII $fToDegreeI $fToClassImp$fToClassDimClass$fToClassDomClass$fToClassMinClass$fToClassMajClassParse'parse' $fParseGMaybe $fParseG[] $fParse':*: $fParse':+: $fParse'CEq $fParse'CEq0 $fParse'Var $fParse'Rec $fParse'U$fGetDegreeSurface_Chord$fGetDegreeSurface_Chord0$fGetDegreeBase_Final$fGetDegreeBase_Final0$fGetDegreeBase_SD$fGTreeSurface_Chord$fGTreeSurface_Chord0$fGTreeBase_Final$fGTreeBase_Final0$fGTreeBase_SD$fGTreeBase_SD0 $fGTreePiece$fParseGSurface_Chord$fParseGSurface_Chord0$fParseGSurface_Chord1$fParseGBase_Final$fParseGBase_Final0$fParseGBase_Final1$fParseGBase_SD$fParseGBase_SD0$fParseGBase_SD1$fParseGBase_SD2$fParseGBase_SD3$fConstructorPhrase_PT_$fParseGPhrase"$fIsLocationUpdatedByIntChordToken $fGTreePhrase pPieceMaj pPieceMin $fEqGrammarEx$fShowGrammarEx selectTreegetNrFuncNodes postProcess gitVersion ChordinoData intersectPC ProbChordbeatSyncMatrixtoChromaMatrixmatchCDictionary matchStructchordDictionary transpose12 shortHandToCSmeanbase Data.Complexphase magnitudepolarcismkPolar conjugateimagPartrealPart:+Complexhmatrix-0.14.1.0Numeric.Container<.>linspaceconstant<>Mul<\>LSDivData.Packed.RandommeanCov uniformSamplegaussianSample Numeric.IOfromFile loadMatrixfileDimensions readMatrixdispcf latexFormatvecdispdispfdispsformat Numeric.LinearAlgebra.AlgorithmsgeigSH' relativeErrorsqrtmexpmmatFuncrankrcond unpackHessunpackQR haussholderpinvTolorth nullVector nullspacePrec nullspaceSVDipepsepsranksvpinvinvludetinvlndetcholcholSHmbCholSHschurhessrqqr eigenvaluesSHeigSHeigenvaluesSH'eigSH' eigenvalueseig linearSolveLSlinearSolveSVD cholSolve linearSolveluSolveluPackedleftSVrightSV compactSVDfullSVDsingularValuesthinSVDsvdFieldInfinityPNorm1PNorm2 FrobeniusNormTypepnormNormed Numeric.Chain optimiseMultNumeric.ContainerBootidentdiagctrans kroneckeroutervXmmXvmXmIndexOfaccumassoccondstep prodElements sumElements maxElement minElementmaxIndexminIndexatIndexbuildkonstcmaparctan2equaldividemulsubadd addConstant scaleRecipscaleconjscalar ContainernormInfnorm2norm1absSumdotmultiplyProduct fromComplex toComplexdoublesinglecomplexrealConvertRealOf ComplexOfSingleOfDoubleOfbuild'konst'Data.Packed.Vector unzipVector zipVector buildVectorData.Packed.Matrix mapMatrixmapMatrixWithIndexmapMatrixWithIndexMmapMatrixWithIndexM_ toBlocksEverytoBlocksliftMatrix2Autorepmat extractRows fromArray2D buildMatrixasColumnasRow fromLists dropColumns takeColumnsdropRowstakeRows><takeDiagdiagRectfliprlflipud fromBlocksNumeric.Conversion RealElement ComplexableData.Packed.Internal.Matrix saveMatrix subMatrix liftMatrix2 liftMatrixreshape@@> toColumns fromColumnstoRowsfromRowstoListsflattentranscolsrowsMatrixElementNumeric.GSL.Vector randomVectorUniformGaussianRandDistData.Packed.Internal.Vector fwriteVector freadVector fprintfVector fscanfVectormapVectorWithIndexmapVectorWithIndexM_mapVectorWithIndexM mapVectorM_ mapVectorM foldVectorGfoldLoopfoldVectorWithIndex foldVectorunzipVectorWith zipVectorWith mapVectortakesVjoin@> subVector|>toListfromListdimvector-0.10.0.1Data.Vector.StorableVectorhmatrix-gsl-stats-0.1.3.2Numeric.GSL.Statisticsquantilekurtosis_w_m_sd kurtosis_w skew_w_m_sdskew_w absdev_w_mabsdev_w tot_sumsq_w_m tot_sumsq_w stddev_w_pm stddev_w_mstddev_w variance_w_pm variance_w_m variance_wmean_w correlation covariance_m covariancelag1auto kurtosis_m_sdkurtosis skew_m_sdskewabsdev_mabsdev tot_sumsq_m tot_sumsq stddev_pmstddev_mstddev variance_pm variance_mvariance nanToZeromatchKeyProfilesallKeyProfiles keyToProfile selectProfiletemperleyProfCMajtemperleyProfCMin selectKeymax2getKeyFromTable groupKeys getGlobalKey harmonizereduceTimedPChords TimedDatapickHead snapToGridshiftBwdshiftFwd segmentByKeysegmentByTonicemergencySplit segmentTonic getFstChordisTonicisDomlProduct segmentStat lProdStats ChordLabelRootChordrootEQNoteeqFunc countMatch sampleWithsampleAt