# # this VDL file will be run through the a preprocessor # which converts certain keywords into replacements # # Configuration vars sampleSize=$${sampleSize}, proteinGroups=$${proteinGroups}, # permsPerSet=$${permsPerSet}, numPerms=$${numPerms}, numMeasures=$${numMeasures}, # workDir=$${workDir}, # sourceData=$${sourceData}, # destDir=$${destDir} TR tester::collateSample:1.0( output b ) { argument = " $${sampleSize}"; argument = " "${output:b}; } TR tester::gcode:1.0( input a, output b ) { argument = " $${proteinGroups}"; argument = " "${input:a}; argument = " "${output:b}; } TR tester::shuffle:1.0( input a, input count, output c ) { argument = " "${input:a}; argument = " "${input:count}; argument = " "${output:c}; } TR tester::measureWorkflow:1.0( input a, output b ) { argument = " "${input:a}; argument = " "${output:b}; } TR tester::nMeasuresWorkflow:1.0( input a, input start, input count, output c ) { argument = " "${input:a}; argument = " "${input:start}; argument = " "${input:count}; argument = " "${output:c}; } TR tester::compareSizes:1.0( input a[], output j ) { argument = " "${output:j}; argument = " "${input:a}; } TR tester::average:1.0( input a, output b ) { argument = " $${permsPerSet}"; argument = " "${input:a}; argument = " "${output:b}; } DV tester::collateSample:1.0->tester::collateSample:1.0,1.0( b=@{output:"sample.data"} ); DV tester::gcode:1.0->tester::gcode:1.0,1.0( a=@{input:"sample.data"}, b=@{output:"recoded.data"} ); MAP sample.data $${workDir}/sample.data MAP recoded.data $${workDir}/recoded.data DV tester::measureWorkflow:1.0->tester::measureWorkflow:1.0,1.0( a=@{input:"recoded.data"}, b=@{output:"sizes.data"} ); MAP sizes.data $${workDir}/sizes.data DV tester::shuffle:1.0->tester::shuffle:1.0,1.0( a=@{input:"recoded.data"}, count="$${numPerms}" c=@{output:"permutationList.data"} ); MAP permutationList.data $${workDir}/permutationList.data FOR permutation FROM 1 TO $${numPerms} STEP $${numMeasures} DV tester::nMeasuresWorkflow%permutation%:1.0->tester::nMeasuresWorkflow:1.0,1.0( a=@{input:"permutationList.data"}, start="%permutation%", count="$${numMeasures}", c=@{output:"nSizes%permutation%.data"} ); MAP permutation%permutation%.data $${workDir}/permutation%permutation%.data MAP nSizes%permutation%.data $${workDir}/nSizes%permutation%.data END DV tester::compareSizes:1.0->tester::compareSizes:1.0,1.0( a=[@{input:"sizes.data"}, LIST @{input:"nSizes%item%.data"} 1 $${numPerms} $${numMeasures} ], j=@{output:"ComparativeSizes.data"} ); MAP ComparativeSizes.data $${workDir}/ComparativeSizes.data DV tester::average:1.0->tester::average:1.0,1.0( a=@{input:"ComparativeSizes.data"}, b=@{output:"AveragedSizes.data"} ); MAP AveragedSizes.data $${destDir}/AveragedSizes.data