From ecb8a85eb5cf25e0aba4a3d2d7abf94f63f17297 Mon Sep 17 00:00:00 2001 From: Calvin Morrison Date: Mon, 3 Mar 2014 14:59:42 -0500 Subject: update defaults and align variable names with global env variables --- SelectiveGenomeAmplification | 16 ++++++++++++++-- SelectiveGenomeAmplificationUI | 15 ++++++++++++++- src/score_mers.py | 14 +++++++------- 3 files changed, 35 insertions(+), 10 deletions(-) diff --git a/SelectiveGenomeAmplification b/SelectiveGenomeAmplification index 3047511..bb52626 100755 --- a/SelectiveGenomeAmplification +++ b/SelectiveGenomeAmplification @@ -23,24 +23,36 @@ fi # output directory : ${output_directory=`basename $foreground`_`basename $background`} + # temp directory : ${tmp_directory=$output_directory/.tmp} + # directory to store our counts and sorted counts : ${counts_directory=$tmp_directory} + # range of mers, min and max : ${min_mer_range=6} -: ${max_mer_range=10} +: ${max_mer_range=12} + # max mer distance, the distance between two mers in our selected outputs : ${max_mer_distance=5000} + # min/maximum kmer meling point : ${max_melting_temp=30} -: ${min_melting_temp=18} +: ${min_melting_temp=0} + # minimum mer count : ${min_mer_count=0} + # maximum mers to pick : ${max_select=15} + +# maximum mers to check +: ${max_check=35} + # mers to specifically IGNORE, space delimited : ${ignore_mers=''} + # maximum number of mers that are consecutively binding : ${max_consecutive_binding=4} diff --git a/SelectiveGenomeAmplificationUI b/SelectiveGenomeAmplificationUI index d6a6bb5..b6a2fa6 100755 --- a/SelectiveGenomeAmplificationUI +++ b/SelectiveGenomeAmplificationUI @@ -10,30 +10,43 @@ questions = [ { 'question' : "Where would you like your output directory to be?", 'default_str': 'current directory/foreground_background/', 'variable': 'output_directory' }, + {'question': "Where would you like to temporary files to be stored?", 'default_str': '$output_directory/.tmp', 'variable': "temp_directory" }, + {'question': "Where would you like to count files to be stored?", 'default_str': '$output_directory/.tmp', 'variable': "counts_directory" }, + { 'question': 'maximum mer size you would like to pick?', 'default_str': '12', 'variable': 'max_mer_range' }, + { 'question': 'minimum mer size you would like to pick?', 'default_str': '6', 'variable': 'min_mer_range' }, + { 'question': 'minimum mer count you want to have for your selected mer?', 'default_str': 'None', 'variable': 'min_mer_count' }, - { 'question': 'maximum number of mers you want to search and select?', + + { 'question': 'maximum size of mer combinations you want to search and select?', 'default_str': '15', 'variable': 'max_select' }, + + { 'question': 'maximum number of mers you want to use as possible primers?', + 'default_str': '35', + 'variable': 'max_check' }, + {'question': 'Enter mers to ignore? (space seperated)', 'default_str': "None", 'variable': 'ignore_mers'}, + { 'question': 'maximum distance between mers in the final selection?', 'default_str': "5000 bases", 'variable': 'max_mer_distance' }, + { 'question': 'maximum melting temperature for mers?', 'default_str': '30c', 'variable': 'max_melting_temp' }, { 'question': 'minimum melting temperature for mers?', 'default_str': '0c', 'variable': 'min_melting_temp' }, { 'question': 'maximum number of consecutively binding mers in hetero and homodimers?', 'default_str': '4', 'variable': 'max_consecutive_binding' } diff --git a/src/score_mers.py b/src/score_mers.py index 1a54ba1..1c9d4ae 100755 --- a/src/score_mers.py +++ b/src/score_mers.py @@ -35,17 +35,17 @@ class Mer: # import our variables cpus = int(os.environ.get("cpus", cpu_count())); min_mer_range = int(os.environ.get("min_mer_range", 6)); -max_mer_range = int(os.environ.get("max_mer_range", 10)); +max_mer_range = int(os.environ.get("max_mer_range", 12)); min_mer_count = int(os.environ.get("min_mer_count", 0)); max_select = int(os.environ.get("max_select", 15)); -max_check = int(os.environ.get("max_check", 35)); +max_check = int(os.environ.get("max_check", 35)); max_mer_distance = int(os.environ.get("max_mer_distance", 5000)); -nb_max_consecutive_binding = int(os.environ.get("max_consecutive_binding", 4)); +max_consecutive_binding = int(os.environ.get("max_consecutive_binding", 4)); binding = { 'A': 'T', 'T': 'A', 'C': 'G', 'G': 'C', '_': False } -def max_consecutive_binding(mer1, mer2): +def get_max_consecutive_binding(mer1, mer2): if len(mer2) > len(mer1): mer1, mer2 = mer2, mer1 @@ -198,9 +198,9 @@ def pop_bg(mer): def load_heterodimer_dic(selected_mers): for (mer1, mer2) in combinations(selected_mers, 2): - res = max_consecutive_binding(mer1, mer2) - heterodimer_dic[(mer1, mer2)] = res > nb_max_consecutive_binding - heterodimer_dic[(mer2, mer1)] = res > nb_max_consecutive_binding + res = get_max_consecutive_binding(mer1, mer2) + heterodimer_dic[(mer1, mer2)] = res > max_consecutive_binding + heterodimer_dic[(mer2, mer1)] = res > max_consecutive_binding # print res, heterodimer_dic[(mer1, mer2)] def main(): -- cgit v1.2.3