#
# 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