SITE_TYPE=
QUERYDIR=target02-query-1210265328-3496
EMAIL=servers@predictioncenter.org
SUBJECTLINE=
ROOTDIR:=/projects/compbio/experiments/protein-predict/SAM_T02${SITE_TYPE}
SCRIPTSDIR:= ${ROOTDIR}/scripts
HTMLDIR := /projects/compbio/.html/SAM_T02${SITE_TYPE}
LOGDIR := ${HTMLDIR}/log
LOGFILE := ${LOGDIR}/logfile
WORKDIR:= ${HTMLDIR}/results/${QUERYDIR}
BASEURL := http://www.soe.ucsc.edu/projects/compbio/SAM_T02${SITE_TYPE}/results/${QUERYDIR}
#home for frozen versions of the programs and scripts we need
#note: these are also set in BIN-SCRIPTS2K/sam-t2k.conf
BIN := ${ROOTDIR}/bin_freeze
BIN-SAM := ${BIN}/sam
PCB := /projects/compbio/bin
PCPR := /projects/compbio/programs
MAKE := /usr/bin/gmake
CONVERSION_DIR := ${ROOTDIR}/casp_convert
#size of the template library (t2k.ids)
LIBSIZE := 17000
A2M2HTML := ${SCRIPTSDIR}/a2m2html
PCEM := /projects/compbio/experiments/models.97
PCEM-INDEXES := /projects/compbio/experiments/models.97/indexes
TARG_AL:= ${TARGET}.t2k
##################
# pseudo targets #
##################
default: \
log_user summary_create summary_inputs clean receipt_ack \
build_t2k_alignment build_pretty_alignment build_mod w0.5_logo \
1.end_section \
summary_2track 2track \
2.end_section \
summary_target_mod_scores \
${TARG_AL}.100-30-dssp-ebghstl.target-scores \
${TARG_AL}.100-30-stride-ebghtl.target-scores \
${TARG_AL}.100-30-str.target-scores \
1track_target_mod_scores \
3.end_section \
summary_template_mod_scores template_mod_scores \
4.end_section \
summary_top_hits top_hits \
5.end_section \
summary_top_alignments simple_seed_mod build_top_alignments final_predictions \
6.end_section \
summary_end
log_user: ${TARGET}.log_user
summary_create: ${TARGET}.summary_create
summary_inputs: ${TARGET}.summary_inputs
clean: ${TARGET}.a2m
receipt_ack: ${TARGET}.receipt_ack
build_t2k_alignment: ${TARG_AL}.a2m.gz
build_pretty_alignment: ${TARG_AL}.pa.html
build_mod: ${TARG_AL}.w0.5.mod \
${TARGET}.mod_report
w0.5_logo: ${TARG_AL}.w0.5-logo.eps \
${TARG_AL}.w0.5-logo.pdf
${SCRIPTSDIR}/add_summary_multiple_formats \
"SAM_T02 multiple alignment---sequence logo" \
${TARG_AL}.w0.5-logo \
eps pdf >> summary.html
dssp_logo: ${TARG_AL}.dssp-ebghstl-logo.eps ${TARG_AL}.dssp-ebghstl-logo.pdf
${SCRIPTSDIR}/add_summary_multiple_formats \
"DSSP EBGHSTL prediction---sequence logo" \
${TARG_AL}.dssp-ebghstl-logo \
eps pdf \
>> summary.html
echo '
' >> summary.html
stride_logo: ${TARG_AL}.stride-ebghtl-logo.eps ${TARG_AL}.stride-ebghtl-logo.pdf
${SCRIPTSDIR}/add_summary_multiple_formats \
"Stride EBGHTL prediction---sequence logo" \
${TARG_AL}.stride-ebghtl-logo \
eps pdf \
>> summary.html
echo '
' >> summary.html
str_logo: ${TARG_AL}.str-logo.eps ${TARG_AL}.str-logo.pdf
${SCRIPTSDIR}/add_summary_multiple_formats \
"Str prediction---sequence logo" \
${TARG_AL}.str-logo \
eps pdf >> summary.html
echo '
' >> summary.html
dssp-ehl2_logo: ${TARG_AL}.dssp-ehl2-logo.eps ${TARG_AL}.dssp-ehl2-logo.pdf
${SCRIPTSDIR}/add_summary_multiple_formats \
"DSSP 3-value prediction---sequence logo" \
${TARG_AL}.dssp-ehl2-logo \
eps pdf \
>> summary.html
summary_2track:
${SCRIPTSDIR}/add_section_head_summary_html \
'\
Secondary Structure Prediction\
\
(Explanation of secondary-structure predictions) \
' \
>> summary.html
2track: ${TARG_AL}-thin90.a2m.gz \
do_str str_logo \
do_dssp dssp_logo \
do_stride stride_logo \
do_dssp-ehl2 dssp-ehl2_logo
do_dssp: ${TARG_AL}.dssp-ebghstl.rdb \
${TARG_AL}.dssp-ebghstl.seq \
${TARG_AL}.dssp-ebghstl.mod \
${TARG_AL}.dssp-color.rasmol
${SCRIPTSDIR}/add_summary_multiple_formats \
"DSSP EBGHSTL structure prediction" \
${TARG_AL}.dssp-ebghstl \
rdb seq \
>> summary.html
do_stride: ${TARG_AL}.stride-ebghtl.rdb \
${TARG_AL}.stride-ebghtl.seq \
${TARG_AL}.stride-ebghtl.mod \
${TARG_AL}.stride-color.rasmol
${SCRIPTSDIR}/add_summary_multiple_formats \
"Stride EBGHTL structure prediction" \
${TARG_AL}.stride-ebghtl \
rdb seq \
>> summary.html
do_str: ${TARG_AL}.str.rdb \
${TARG_AL}.str.seq \
${TARG_AL}.str.mod \
${TARG_AL}.str-color.rasmol
${SCRIPTSDIR}/add_summary_multiple_formats \
"Str structure prediction" \
${TARG_AL}.str \
rdb seq \
>> summary.html
do_dssp-ehl2: ${TARG_AL}.dssp-ehl2.rdb \
${TARG_AL}.dssp-ehl2 \
${TARG_AL}.dssp-ehl2.mod
${SCRIPTSDIR}/add_summary_multiple_formats \
"DSSP 3-value prediction" \
${TARG_AL}.dssp-ehl2 \
rdb seq \
>> summary.html
summary_target_mod_scores: ${TARGET}.summary_target_mod_scores
%.target-scores:
${MAKE} TARGET=${TARGET} $*.mlib \
$*.dist \
$*-target-scores.rdb \
$*-target-scores.html \
$*-target-scores.report
# target with action but dummy file name, to force report to summary.html
${TARG_AL}.%-target-scores.report: ${TARG_AL}.%-target-scores.rdb \
${TARG_AL}.%-target-scores.html
${SCRIPTSDIR}/add_summary_html \
"Annotated amino acid/$* two-track target model scores" \
${TARG_AL}.$*-target-scores.html >> summary.html
1track_target_mod_scores: ${TARG_AL}.w0.5.mlib \
${TARG_AL}.w0.5.dist \
${TARG_AL}.w0.5-target-scores.rdb \
${TARG_AL}.w0.5-target-scores.html
${SCRIPTSDIR}/add_summary_html \
"Annotated amino acid single-track target model scores of PDB" \
${TARG_AL}.w0.5-target-scores.html >> summary.html
summary_template_mod_scores: ${TARGET}.summary_template_mod_scores
template_mod_scores: ${TARGET}.template-lib-scores.rdb \
${TARGET}.template-lib-scores.html \
${TARGET}.template-lib-scores.print
${TARGET}.template-lib-scores.print: ${TARGET}.template-lib-scores.html
${SCRIPTSDIR}/add_summary_html "Annotated template model scores" $^ >> summary.html
summary_top_hits: ${TARGET}.summary_top_hits
top_hits: ${TARGET}.best-scores.rdb \
${TARGET}.best-scores.html
summary_top_alignments: ${TARGET}.summary_top_alignments
simple_seed_mod: ${TARGET}.mod
#top_alignments: ${TARGET}.top_hits_pwise_alignments.rdb
build_top_alignments: ${TARGET}.best-scores.rdb ${TARGET}.mod
${SCRIPTSDIR}/make-alignments ${TARGET} < $<
final_predictions: many-alignments top-alignments
many-alignments: ${TARGET}.predicted_alignments.rdb \
${TARGET}.many_alignments.html
${SCRIPTSDIR}/add_summary_html \
"T02 Many Alignments Summary" \
${TARGET}.many_alignments.html \
>> summary.html
top-alignments: ${TARGET}.top_reported_alignments.rdb \
${TARGET}.top_reported_alignments.html
${SCRIPTSDIR}/add_summary_html \
"T02 Top Models Summary" \
${TARGET}.top_reported_alignments.html \
>> summary.html
summary_end: ${TARGET}.summary_end
#################
# web-interface #
#################
%.log_user:
${SCRIPTSDIR}/log_user ${EMAIL} ${WORKDIR}/$*.a2m ${QUERYDIR} >> ${LOGFILE}
#create html results page
%.summary_create:
${SCRIPTSDIR}/create_summary_html $* ${BASEURL} > summary.html
chgrp protein summary.html
#start the inputs section
%.summary_inputs:
${SCRIPTSDIR}/add_section_head_summary_html "Inputs and Multiple Alignments" >> summary.html
#start the two-track section
%.summary_2track:
${SCRIPTSDIR}/add_section_head_summary_html "Secondary Structure Prediction" >> summary.html
#start the target model scores section
%.summary_target_mod_scores:
${SCRIPTSDIR}/add_section_head_summary_html "Target model scores" >> summary.html
#start the template model scores section
%.summary_template_mod_scores:
${SCRIPTSDIR}/add_section_head_summary_html "Template model scores" >> summary.html
#start the top hits section
%.summary_top_hits:
${SCRIPTSDIR}/add_section_head_summary_html "Top Hits" >> summary.html
#start the top alignments section
%.summary_top_alignments:
${SCRIPTSDIR}/add_section_head_summary_html "Alignments for Top Hits" >> summary.html
#sequence cleaning
%.a2m: %.raw
if !(${SCRIPTSDIR}/clean_a2m $*.raw > $@); \
then echo "
" >> summary.html;\
echo "Error: The submitted sequence was longer than 500 amino acids\
, or else was not an amino acid sequence. We suggest breaking long protein chains into different domains \
with blast or psiblast and submitting the domains separately. Alternatively, you can split long \
proteins into overlapping sections of less than 500 amino acids and submit them separately. Please \
do not submit DNA sequences - our server is not set up to handle them." >> summary.html;\
echo "
" >> summary.html;\
fi
#to come: format checking and conversion if necessary in the clean_a2m script
#acknowledge sequence receipt
#add pointer to sequence file to the html results page
%.receipt_ack: %.a2m
echo Received sequence $*.a2m
${SCRIPTSDIR}/add_summary_html "Submitted sequence(s)" \
$*.a2m >> summary.html
%.end_section:
${SCRIPTSDIR}/end_section_summary_html >> summary.html
#end html results page
%.summary_end:
${SCRIPTSDIR}/end_summary_html >> summary.html
########################################
# Building a T2K alignment from a seed #
########################################
ifndef A2M
A2M := t2k.a2m.gz
endif
TARGET-A2M := ${TARGET}.${A2M}
#frozen versions of these programs
BIN-SCRIPTS2K := ${BIN}/scripts2k
TARGET2K := ${BIN-SCRIPTS2K}/target2k
#build a model (somewhat) quickly for web-page testing
TARGET2KTEST := ${BIN-SCRIPTS2K}/target2k -iter 1
HMMSCORE := ${BIN-SAM}/hmmscore
HMMSCORE_NEW := ${BIN-SAM}/hmmscore
NR:=/scratch/data/nrp/nr
ifeq ($(wildcard ${NR}.*),)
NR:=/var/tmp/nrp/nr
endif
ifeq ($(wildcard ${NR}.*),)
NR:=/projects/compbio/data/nrp/nr
endif
%.t2k.a2m.gz: %.a2m
${TARGET2K} -out $*.t2k \
-seed $^ \
-db ${NR} \
-tmp_dir /tmp \
-keep_temporary -1 \
-blast_max_report 2000
gzip -f $*.t2k.a2m
${SCRIPTSDIR}/add_summary_html "SAM_T02 multiple alignment in a2m format"\
$@ >> summary.html
#thin the alignment to 90% sequence identity for use with the neural nets
#(which were trained on thinned alignments)
%-thin90.a2m.gz: %.a2m.gz
sleep 10 # wait a bit to prevent problems with file-system synchronization
${BIN-SAM}/uniqueseq unique-tmp -alignfile $^ -percent_id 0.90
gzip -9f unique-tmp.a2m
mv unique-tmp.a2m.gz $@
sleep 50 # wait a bit to prevent problems with file-system synchronization
%.mod_report: %.t2k.w0.5.mod
${SCRIPTSDIR}/add_summary_html "SAM_T02 target hidden Markov model" \
$^ >> summary.html
#convert an a2m.gz alignment to a human-readable model
%.w0.5.mod: %.a2m.gz
${BIN-SCRIPTS2K}/w0.5 $^ $@.tmp
${BIN-SAM}/hmmconvert $*.w0.5 -model_file $@.tmp
-rm -f $@.tmp
#compress a file
%.gz: %
gzip -f $^
#make a pretty-aligned alignment from a compressed a2m alignment
%.pa: %.a2m.gz
${BIN-SAM}/prettyalign $^ -m8 -i -n -L3333 > $@
%.pa.html: %.a2m.gz
gunzip -c $^ > tmp.a2m
ifneq "$(findstring kilokluster,${HOST})" ""
ssh moai-10 'cd ${WORKDIR}; ${A2M2HTML} -a2m_in tmp.a2m > $@'
else
${A2M2HTML} -a2m_in tmp.a2m > $@
endif
rm tmp.a2m
${SCRIPTSDIR}/add_summary_html \
"SAM_T02 multiple alignment in pretty html format" \
$@ >> summary.html
##################################
# ANNOTATING A TARGET #
##################################
# secondary structure prediction #
##################################
CASP5-2D-ID := UCSC-SAM_T02-server
CASP6-2D-ID := 'SAM-T02'
CASP8-ID := SAM-T02-server
BIN-PREDICT2ND := ${BIN}/predict_2nd
LIB:= /projects/compbio/lib
PREDICT-2ND := ${BIN-PREDICT2ND}/predict-2nd
EBGHTL-TWOTRACKDBS := ${PCEM-INDEXES}/t2k.x-seqs,${PCEM-INDEXES}/t2k.2ds
EBGHSTL-TWOTRACKDBS := ${PCEM-INDEXES}/t2k.x-seqs,${PCEM-INDEXES}/t2k.dssps
STR-TWOTRACKDBS := ${PCEM-INDEXES}/t2k.x-seqs,${PCEM-INDEXES}/t2k.strs
MIXTURE := ${LIB}/recode3.20comp
TRANS-REG := ${LIB}/fssp-trained.regularizer
EBGHSTL-NET := ${BIN-PREDICT2ND}/networks/t2k-5740-IDaaHr-5-15-7-15-9-15-13-ebghstl-seeded.net
EBGHTL-NET:= ${BIN-PREDICT2ND}/networks/t2k-5651-IDaaHr-5-15-7-15-9-15-13-ebghtl-stride-seeded.net
STR-NET := ${BIN-PREDICT2ND}/networks/t2k-5651-IDaaHr-5-15-7-15-9-15-13-str-seeded.net
T2K-DB-MLIBS := ${PCEM-INDEXES}/t2k-w0.5-db.mlib
%.report_dssp : %.t2k.dssp-ebghstl %.t2k.dssp-ebghstl.rdb %.t2k.dssp-ebghstl.seq %.t2k.dssp-ebghstl.mod
${SCRIPTSDIR}/add_summary_html "DSSP EBGHSTL structure prediction CASP format" \
$*.t2k.dssp-ebghstl >> summary.html
${SCRIPTSDIR}/add_summary_html "DSSP EBGHSTL structure prediction RDB format" \
$*.t2k.dssp-ebghstl.rdb >> summary.html
${SCRIPTSDIR}/add_summary_html "DSSP EBGHSTL structure prediction sequence format" \
$*.t2k.dssp-ebghstl.seq >> summary.html
${SCRIPTSDIR}/add_summary_html "SAM_T02 DSSP EBGHSTL target HMM" \
$*.t2k.dssp-ebghstl.mod >> summary.html
%.dssp-ebghstl %.dssp-ebghstl.rdb %.dssp-ebghstl.seq : %-thin90.a2m.gz ${EBGHSTL-NET}
echo ReadAlphabet /projects/compbio/lib/alphabet/DSSP.alphabet > tmp.script
echo ReadNeuralNet ${EBGHSTL-NET} >> tmp.script
echo ReadA2M $< >> tmp.script
echo PrintPrediction $*.dssp-ebghstl ${CASP8-ID} >> tmp.script
echo PrintPredictionFasta $*.dssp-ebghstl.seq >> tmp.script
echo PrintRDB $*.dssp-ebghstl.rdb >> tmp.script
${PREDICT-2ND} < tmp.script
rm tmp.script
%.dssp-color.rasmol: %.dssp-ebghstl.seq
${SCRIPTSDIR}/rasmol_color_from_burial -pdb ${TARGET}.blank.pdb < $^ > $@
%.report_stride : %.t2k.stride-ebghtl %.t2k.stride-ebghtl.rdb %.t2k.stride-ebghtl.seq %.t2k.stride-ebghtl.mod
${SCRIPTSDIR}/add_summary_html "Stride EBGHTL structure prediction CASP format" \
$*.t2k.stride-ebghtl >> summary.html
${SCRIPTSDIR}/add_summary_html "Stride EBGHTL structure prediction RDB format" \
$*.t2k.stride-ebghtl.rdb >> summary.html
${SCRIPTSDIR}/add_summary_html "Stride EBGHTL structure prediction sequence format" \
$*.t2k.stride-ebghtl.seq >> summary.html
${SCRIPTSDIR}/add_summary_html "SAM_T02 Stride EBGHTL target HMM" \
$*.t2k.stride-ebghtl.mod >> summary.html
%.stride-ebghtl %.stride-ebghtl.rdb %.stride-ebghtl.seq : %-thin90.a2m.gz ${EBGHTL-NET}
echo ReadAlphabet /projects/compbio/lib/alphabet/DSSP.alphabet > tmp.script
echo ReadNeuralNet ${EBGHTL-NET} >> tmp.script
echo ReadA2M $< >> tmp.script
echo PrintPrediction $*.stride-ebghtl >> tmp.script
echo PrintPredictionFasta $*.stride-ebghtl.seq >> tmp.script
echo PrintRDB $*.stride-ebghtl.rdb >> tmp.script
${PREDICT-2ND} < tmp.script
rm tmp.script
%.stride-color.rasmol: %.stride-ebghtl.seq
${SCRIPTSDIR}/rasmol_color_from_burial -pdb ${TARGET}.blank.pdb < $^ > $@
%.report_str : %.t2k.str %.t2k.str.rdb %.t2k.str.seq %.t2k.str.mod
${SCRIPTSDIR}/add_summary_html "STR structure prediction CASP format" \
$*.t2k.str >> summary.html
${SCRIPTSDIR}/add_summary_html "STR structure prediction RDB format" \
$*.t2k.str.rdb >> summary.html
${SCRIPTSDIR}/add_summary_html "STR structure prediction sequence format"\
$*.t2k.str.seq >> summary.html
${SCRIPTSDIR}/add_summary_html "SAM_T02 STR target HMM" \
$*.t2k.str.mod >> summary.html
%.str %.str.rdb %.str.seq : %-thin90.a2m.gz ${STR-NET}
echo ReadAlphabet /projects/compbio/lib/alphabet/str.alphabet > tmp.script
echo ReadNeuralNet ${STR-NET} >> tmp.script
echo ReadA2M $< >> tmp.script
echo PrintPrediction $*.str >> tmp.script
echo PrintPredictionFasta $*.str.seq >> tmp.script
echo PrintRDB $*.str.rdb >> tmp.script
${PREDICT-2ND} < tmp.script
rm tmp.script
%.str-color.rasmol: %.str.seq
${SCRIPTSDIR}/rasmol_color_from_burial -pdb ${TARGET}.blank.pdb < $^ > $@
%.dssp-ebghstl.mod: %.dssp-ebghstl.rdb
${SCRIPTSDIR}/2nd-rdb-to-sam-model -alphabet EBGHSTL $^ $@
%.stride-ebghtl.mod: %.stride-ebghtl.rdb
${SCRIPTSDIR}/2nd-rdb-to-sam-model -alphabet EBGHTL $^ $@
%.str.mod: %.str.rdb
${SCRIPTSDIR}/2nd-rdb-to-sam-model -alphabet STR $^ $@
%.dssp-ehl2.mod: %.dssp-ehl2.rdb
${SCRIPTSDIR}/2nd-rdb-to-sam-model -alphabet EHL2 $^ $@
#reduce our predictions to standard EHL alphabet
%.dssp-ehl2.rdb: %.dssp-ebghstl.rdb %.stride-ebghtl.rdb %.str.rdb
${SCRIPTSDIR}/RDBCombine $^ -a ${CASP8-ID} > $@
%.report_dssp_ehl2: %.t2k.dssp-ehl2
${SCRIPTSDIR}/add_summary_html "DSSP EHL structure prediction CASP format"\
$*.t2k.dssp-ehl2 >> summary.html
${SCRIPTSDIR}/add_summary_html "DSSP EHL structure prediction RDB format"\
$*.t2k.dssp-ehl2.rdb >> summary.html
#also add the predictions to the Secondary Structure Prediction section
#in the same ordering as the other alphabet predictions
%.dssp-ehl2: %.dssp-ehl2.rdb
${SCRIPTSDIR}/rdb2casp $^ ${CASP8-ID}> $@
# BUG: don't have rdb->seq format conversion for dssp-ehl2
# %.dssp-ehl2-color.rasmol: %.dssp-ehl2.seq
# ${SCRIPTSDIR}/rasmol_color_from_burial -pdb ${TARGET}.blank.pdb < $^ > $@
#this target creates the mlib and dist file with no scores
# we then remove the dist file so it will be created when
# %.100-30-dssp-ebghstl.dist is called
%.100-30-dssp-ebghstl.mlib: %.w0.5.mod %.dssp-ebghstl.mod
${HMMSCORE} $*.100-30-dssp-ebghstl \
-calibrate 1 \
-alphabet protein,EBGHSTL \
-trackmod $*.w0.5.mod,$*.dssp-ebghstl.mod \
-db ${EBGHSTL-TWOTRACKDBS} \
-trackcoeff 1.0,0.3 \
-sw 2 -dpstyle 0 -subtract_null 4 \
-select_score 0 \
-trackprior rsdb-comp2.32comp,t99-2d-comp.9comp
-rm -f ${@:.mlib=.dist}
%.100-30-dssp-ebghstl.dist: %.100-30-dssp-ebghstl.mlib
${HMMSCORE} $*.100-30-dssp-ebghstl \
-modellibrary $^ \
-db ${EBGHSTL-TWOTRACKDBS} \
-db_size ${LIBSIZE} \
-select_score 4 -Emax 40.
mv ${@:.dist=.1}.$@ $@
#this target creates the mlib and dist file with no scores
# we then remove the dist file so it will be created when
# %.100-30-stride-ebghtl.dist is called
%.100-30-stride-ebghtl.mlib: %.w0.5.mod %.stride-ebghtl.mod
${HMMSCORE} $*.100-30-stride-ebghtl \
-calibrate 1 \
-alphabet protein,EBGHTL \
-trackmod $*.w0.5.mod,$*.stride-ebghtl.mod \
-db ${EBGHTL-TWOTRACKDBS} \
-trackcoeff 1.0,0.3 \
-sw 2 -dpstyle 0 -subtract_null 4 \
-select_score 0 \
-trackprior rsdb-comp2.32comp,t99-ebghtl-comp.6comp
-rm -f ${@:.mlib=.dist}
# this target creates mlib and distfile in one step but then it's awkward
# to get the distfile printed to the web page in a separate section
#%.100-30-stride-ebghtl.mlib: %.w0.5.mod %.stride-ebghtl.mod
# ${HMMSCORE} $*.100-30-stride-ebghtl \
# -calibrate 1 \
# -alphabet protein,EBGHTL \
# -trackmod $*.w0.5.mod,$*.stride-ebghtl.mod \
# -db ${EBGHTL-TWOTRACKDBS} \
# -trackcoeff 1.0,0.3 \
# -sw 2 -dpstyle 0 -subtract_null 4 \
# -select_score 8 \
# -trackprior rsdb-comp2.32comp,t99-ebghtl-comp.6comp
# ${SCRIPTSDIR}/add_summary_html "Calibration results for amino acid/STRIDE EBGHTL two-track target model" $@ >> summary.html
%.100-30-stride-ebghtl.dist: %.100-30-stride-ebghtl.mlib
${HMMSCORE} $*.100-30-stride-ebghtl \
-modellibrary $^ \
-db ${EBGHTL-TWOTRACKDBS} \
-db_size ${LIBSIZE} \
-select_score 4 -Emax 40.
mv ${@:.dist=.1}.$@ $@
#this target creates the mlib and dist file with no scores
# we then remove the dist file so it will be created when
# %.100-30-str.dist is called
%.100-30-str.mlib: %.w0.5.mod %.str.mod
${HMMSCORE} $*.100-30-str \
-calibrate 1 \
-alphabet protein,STR \
-trackmod $*.w0.5.mod,$*.str.mod \
-db ${STR-TWOTRACKDBS} \
-trackcoeff 1.0,0.3 \
-sw 2 -dpstyle 0 -subtract_null 4 \
-select_score 0 \
-trackprior rsdb-comp2.32comp,t99-2d-comp.9comp
-rm -f ${@:.mlib=.dist}
%.100-30-str.dist: %.100-30-str.mlib
${HMMSCORE} $*.100-30-str \
-modellibrary $^ \
-db ${STR-TWOTRACKDBS} \
-db_size ${LIBSIZE} \
-select_score 4 -Emax 40.
mv ${@:.dist=.1}.$@ $@
%.100-30-dssp-ebghstl-target-scores.rdb: %.100-30-dssp-ebghstl.dist
${SCRIPTSDIR}/annotate_target_scores t2k.100-30-dssp-ebghstl < $^ > $@
%.100-30-stride-ebghtl-target-scores.rdb: %.100-30-stride-ebghtl.dist
${SCRIPTSDIR}/annotate_target_scores t2k.100-30-stride-ebghtl < $^ > $@
%.100-30-str-target-scores.rdb: %.100-30-str.dist
${SCRIPTSDIR}/annotate_target_scores t2k.100-30-str < $^ > $@
%-target-scores.html: %-target-scores.rdb
${SCRIPTSDIR}/oneway_hits_rdb2html ${@:-target-scores.html=} < $^ > $@
#HMMSCORE generates a lot of trash to stderr in scoring a template library
# should I redirect stderr to /dev/null?
%.template-lib-scores.rdb: ${TEMPLATE-LIB-DEPEND} ${TARGET}.a2m
${HMMSCORE_NEW} $*.template-lib \
-modellibrary ${T2K-DB-MLIBS} \
-db_size ${LIBSIZE} \
-db ${TARGET}.a2m -rdb 1 \
-select_score 4 -Emax 40
grep -v '^[#]' < $*.template-lib.dist-rdb \
| ${SCRIPTSDIR}/shorten_mod_names \
| ${PCB}/row SEQID eq ${TARGET} \
| ${PCB}/sorttbl EVALUE \
| ${SCRIPTSDIR}/annotate_template_scores \
> $@
-rm $*.template-lib.dist-rdb
%.template-lib-scores.html: %.template-lib-scores.rdb
head -n 520 < $^ \
| ${SCRIPTSDIR}/oneway_hits_rdb2html $*.template-lib \
> $@
# single-track model pdb scoring
#PDB_DB := /projects/compbio/data/pdb/all-protein
#PDB_DB := /projects/compbio/data/pdb/dunbrack-pdbaa
PDB_DB := ${ROOTDIR}/data/pdbaa
#calibrate the single track model
#this target creates the mlib and dist file with no scores
# we then remove the dist file so it will be created when
# %.w0.5.dist is called
%.w0.5.mlib: %.w0.5.mod
${HMMSCORE} $*.w0.5 \
-calibrate 1 \
-i $*.w0.5.mod \
-db ${PCEM-INDEXES}/t2k.seqs \
-sw 2 -dpstyle 0 -subtract_null 4 \
-select_score 0 \
-trackprior rsdb-comp2.32comp
-rm -f ${@:.mlib=.dist}
%.w0.5.dist: %.w0.5.mlib
${HMMSCORE} $*.w0.5 \
-modellibrary $^ \
-db ${PDB_DB} \
-dbsize ${LIBSIZE} \
-select_score 4 -Emax 40.
mv ${@:.dist=.1}.${@:.dist=.mod}.dist $@
%.w0.5-target-scores.rdb: %.w0.5.dist
${SCRIPTSDIR}/annotate_target_scores t2k.w0.5 < $^ > $@
#############
# LOGOS #
#############
#what is the target.seq if an alignment is submitted ?
%.w0.5-logo.eps: %.w0.5.mod %.dssp-ebghstl.seq
${BIN-SAM}/makelogo $*.w0.5-logo -i $< \
-logo_rel_entropy 1 \
-logo_bars_per_line 50 -logo_title "$* w0.5" \
-logo_caption_f $*.dssp-ebghstl.seq \
-logo_under_file ${TARGET}.a2m
%.stride-ebghtl-logo.eps: %.stride-ebghtl.mod
${BIN-SAM}/makelogo $*.stride-ebghtl-logo -i $^ \
-logo_rel_entropy 1 \
-logo_bars_per_line 50 -logo_title "$* EBGHTL" \
-logo_caption_f $*.stride-ebghtl.seq \
-logo_under_file ${TARGET}.a2m \
-logo_color_file /projects/compbio/lib/stride.colors
%.dssp-ebghstl-logo.eps: %.dssp-ebghstl.mod
${BIN-SAM}/makelogo $*.dssp-ebghstl-logo -i $^ \
-logo_rel_entropy 1 \
-logo_bars_per_line 50 -logo_title "$* EBGHSTL" \
-logo_caption_f $*.dssp-ebghstl.seq \
-logo_under_file ${TARGET}.a2m \
-logo_color_file /projects/compbio/lib/stride.colors
%.str-logo.eps: %.str.mod
${BIN-SAM}/makelogo $*.str-logo -i $^ \
-logo_rel_entropy 1 \
-logo_bars_per_line 50 -logo_title "$* STR" \
-logo_caption_f $*.str.seq \
-logo_under_file ${TARGET}.a2m \
-logo_color_file /projects/compbio/lib/str.colors
# BUG: don't have dssp-ehl2.seq, so using dssp-ebghstl.seq
%.dssp-ehl2-logo.eps: %.dssp-ehl2.mod %.dssp-ebghstl.seq
${BIN-SAM}/makelogo $*.dssp-ehl2-logo -i $< \
-logo_rel_entropy 1 \
-logo_bars_per_line 50 -logo_title "$* DSSP-EHL2" \
-logo_caption_f $*.dssp-ebghstl.seq \
-logo_under_file ${TARGET}.a2m \
-logo_color_file /projects/compbio/lib/dssp.colors
###############
# TOP HITS #
###############
# define the threshold below which you want hits reported.
# If ANY of the methods reports a hit this good, it will be included
# in ${TARGET}.best_scores.rdb
ifndef NUM_BEST
NUM_BEST := 15
endif
ifndef BEST_EVALUE
BEST_EVALUE := 1.e-5
endif
#find the best hits (include dupes)
%.best-scores.rdb: \
%.t2k.w0.5-target-scores.rdb \
%.template-lib-scores.rdb \
%.t2k.100-30-dssp-ebghstl-target-scores.rdb \
%.t2k.100-30-stride-ebghtl-target-scores.rdb \
%.t2k.100-30-str-target-scores.rdb
${SCRIPTSDIR}/best_scores -num ${NUM_BEST} -E ${BEST_EVALUE} $^ > $@
%.best-scores.html: %.best-scores.rdb
${PCB}/column Sequence_ID Length Evalue FSSP-rep SCOP_domain SCOP_suid < $^ > best.tmp
${SCRIPTSDIR}/oneway_hits_rdb2html $*.best_hits < best.tmp > $@
rm -rf best.tmp
${SCRIPTSDIR}/add_summary_html "Best scoring hits from all models" $@ >> summary.html
###########################################
# ALIGNMENTS #
###########################################
#track models to be used in pairwise alignments
EBGHSTL_TRACKMOD := ${TARG_AL}.dssp-ebghstl.mod
EBGHTL_TRACKMOD := ${TARG_AL}.stride-ebghtl.mod
STR_TRACKMOD := ${TARG_AL}.str.mod
T2K_MLIB := ${TARG_AL}.w0.5.mlib
EBGHSTL_MLIB := ${TARG_AL}.100-30-dssp-ebghstl.mlib
EBGHTL_MLIB := ${TARG_AL}.100-30-stride-ebghtl.mlib
STR_MLIB := ${TARG_AL}.100-30-str.mlib
#settings of how many templates to predict vs. number of
#alignments to convert to CASP format must be done carefully
# need to add error checking so these numbers don't conflict
#with each other
# how many alignments to select from best templates
NUM_ALIGNMENTS := 150
#top alignments we report for CASP
NUM_TOP := 10
#make links to the casp alignments?
LINKS := 1
NO_LINKS := 0
#to come: transfer activity from the pairwise_alignments script
#back to this Makefile.
#the script has dependencies on some of Mark D.'s tcl scripts
#which in turn depend on various scripts which are in various
#locations in /projects/compbio.
#to come: transfer the Diekhans scripts and all dependencies
#into the SAM_T02/scripts directory
#build an HMM from target sequence only to produce alignments
#similar to simple Smith-Waterman. We observe that the
#T2K HMMs are so general that they may drift away from the
#original seed sequence
%.mod: %.a2m
${BIN-SAM}/modelfromalign ${TARGET} \
-alignfile $^ \
-insert /projects/compbio/lib/fssp-trained.regularizer \
-aweight_bits 0.8\
-fimtrans -1\
-fimstrength 1\
-ins_jump_conf 1 \
-match_jump_conf 1 \
-del_jump_conf 1 \
-binary_output 1\
-prior_library /projects/compbio/lib/recode3.20comp \
-a2mdots 0 \
-a protein \
-sw 2 -jump_in_prob 0.2 -jump_out_prob 1 \
-aweight_method 1\
-aweight_exponent 10
%.top_hits_t2k: %.best-scores.rdb
${SCRIPTSDIR}/get_t2k_lib_hits < $^ > $@
%.top_hits_non_t2k: %.best-scores.rdb
${SCRIPTSDIR}/get_t2k_lib_hits -negate < $^ > $@
#report sorted list of the pairwise alignments
## BUG: NEEDS TO DEPEND ON SOMETHING PRODUCED BY COMPLETION OF THE
## ALIGNMENT PROCESS
%.predicted_alignments.rdb: %.best-scores.rdb
${SCRIPTSDIR}/gather_best_align_scores ${NUM_ALIGNMENTS} ${WORKDIR} ${TARGET} < $^ > $@
# Get the top ${NUM_TOP} reported alignments
%.top_reported_alignments.rdb: %.predicted_alignments.rdb %.best-scores.rdb
${SCRIPTSDIR}/top_reported_alignments ${NUM_TOP} $^ > $@
#convert this to html and add to the summary page
# create CASP alignments
# pass in number of best alignments to be converted, directory where
# conversion program is located and working directory
%.many_alignments.rdb: %.predicted_alignments.rdb
${SCRIPTSDIR}/format_casp_alignments ${NUM_ALIGNMENTS} ${CONVERSION_DIR} ${WORKDIR} ${TARGET} ${NO_LINKS} ${CASP8-ID} < $^ > $@
#if WARNING=1, print an explanation and warning message about
#top alignment selection
WARNING := 1
NOWARNING := 0
%.many_alignments.html: %.predicted_alignments.rdb %.best-scores.rdb
${SCRIPTSDIR}/casp_summary_report_html \
--align $*.predicted_alignments.rdb \
--best $*.best-scores.rdb \
--target ${TARGET} \
--author ${CASP8-ID} \
> $@
%.top_reported_alignments.html: %.top_reported_alignments.rdb %.best-scores.rdb
${SCRIPTSDIR}/casp_summary_report_html \
--align $*.top_reported_alignments.rdb \
--best $*.best-scores.rdb \
--target ${TARGET} --make_al \
--author ${CASP8-ID} \
> $@
ifdef PRED
ifdef PRED2
PRED-NOSTRUCT := ${PCEM}/pdb/${PRED2}/${PRED}/nostruct-align
PRED-INFO := ${PCEM}/pdb/${PRED2}/${PRED}/info
ifdef ALIGN-TYPE
ifeq (${ALIGN-TYPE},local)
SW:=2
endif
ifeq (${ALIGN-TYPE},global)
SW:=0
endif
ifeq (${ALIGN-TYPE},simplesw)
SW:=2
endif
endif
ifeq (${MASTER},target)
ifeq (${ALIGN-TYPE},local)
ALIGN-MODEL:=${TARG_AL}.w0.5.mod
endif
ifeq (${ALIGN-TYPE},global)
ALIGN-MODEL:=${TARG_AL}.w0.5.mod
endif
ifeq (${ALIGN-TYPE},simplesw)
ALIGN-MODEL:=${TARGET}.mod
endif
ALIGN-NAME := ${PRED}/${TARGET}-${PRED}-${ALIGN-TYPE}-adpstyle${ADP}
endif
ifeq (${MASTER},template)
ALIGN-MODEL := ${PRED-NOSTRUCT}/${PRED}.t2k-w0.5.mod
ALIGN-NAME := ${PRED}/${PRED}-${TARGET}-${ALIGN-TYPE}-adpstyle${ADP}
endif
ifeq (${MASTER},fssp)
FSSP-STRUCT := ${PCEM}/pdb/${FSSP2}/${FSSP}/struct-align
ALIGN-MODEL := ${FSSP-STRUCT}/${FSSP}.fssp-fw0.5.mod
ALIGN-NAME := ${PRED}/${FSSP}-${TARGET}-fssp-${ALIGN-TYPE}-adpstyle${ADP}
endif
ifdef ALIGN-NAME
single-track-alignment: ${ALIGN-NAME}.a2m
echo $^ made.
${ALIGN-NAME}.a2m: ${ALIGN-MODEL} ${PRED}/${PRED}.seq
${HMMSCORE} ${ALIGN-NAME} \
-alphabet protein -i $< -db ${TARGET}.a2m \
-db ${PRED}/${PRED}.seq \
-db_size ${LIBSIZE} \
-simple_threshold 10000 \
-sw ${SW} -dpstyle 0 -subtract_null 4 \
-adpstyle ${ADP} \
-select_align 8
gzip -f ${ALIGN-NAME}.dist
endif
single-track-target-alignments:
-mkdir ${PRED}
-chmod 775 ${PRED}
test -e ${PRED}/${PRED}.seq -o '!' -e ${PRED-INFO}/${PRED}.stride-mixed.seq \
|| cp -p ${PRED-INFO}/${PRED}.stride-mixed.seq ${PRED}/${PRED}.seq
test -e ${PRED}/${PRED}.seq \
|| ${SCRIPTSDIR}/extract-one-seq ${PRED} < ${PDB_DB} > ${PRED}/${PRED}.seq \
|| { echo removing rm ${PRED}/${PRED}.seq; rm ${PRED}/${PRED}.seq ;}
-make -k ALIGN-TYPE=simplesw \
PRED=${PRED} PRED2=${PRED2} \
ADP=1 MASTER=target single-track-alignment
-make -k ALIGN-TYPE=simplesw \
PRED=${PRED} PRED2=${PRED2} \
ADP=5 MASTER=target single-track-alignment
-make -k ALIGN-TYPE=local \
PRED=${PRED} PRED2=${PRED2} \
ADP=1 MASTER=target single-track-alignment
-make -k ALIGN-TYPE=local \
PRED=${PRED} PRED2=${PRED2} \
ADP=5 MASTER=target single-track-alignment
-make -k ALIGN-TYPE=global \
PRED=${PRED} PRED2=${PRED2} \
ADP=1 MASTER=target single-track-alignment
-make -k ALIGN-TYPE=global \
PRED=${PRED} PRED2=${PRED2} \
ADP=5 MASTER=target single-track-alignment
-chmod 664 ${PRED}/*
template-alignments:
-mkdir ${PRED}
-chmod 775 ${PRED}
-make -k ALIGN-TYPE=local \
PRED=${PRED} PRED2=${PRED2} ADP=1 MASTER=template single-track-alignment
-make -k ALIGN-TYPE=local \
PRED=${PRED} PRED2=${PRED2} ADP=5 MASTER=template single-track-alignment
-make -k ALIGN-TYPE=global \
PRED=${PRED} PRED2=${PRED2} ADP=1 MASTER=template single-track-alignment
-make -k ALIGN-TYPE=global \
PRED=${PRED} PRED2=${PRED2} ADP=5 MASTER=template single-track-alignment
-chmod 664 ${PRED}/*
########################################
# FSSP-based alignments
########################################
ifdef FSSP
ifdef FSSP2
fssp-template-alignments:
-mkdir ${PRED}
-chmod 775 ${PRED}
-make -k ALIGN-TYPE=local \
PRED=${PRED} PRED2=${PRED2} ADP=5 \
MASTER=fssp FSSP=${FSSP} FSSP2=${FSSP2} single-track-alignment
-make -k ALIGN-TYPE=global \
PRED=${PRED} PRED2=${PRED2} ADP=5 \
MASTER=fssp FSSP=${FSSP} FSSP2=${FSSP2} single-track-alignment
-chmod 664 ${PRED}/*
endif
endif
########################################
# Two-track target alignments
########################################
ifndef STRUCT-WEIGHT
STRUCT-WEIGHT:=0.3
endif
ifdef STRUCT-ALPH
# copy local structure alphabet name to HMMSCORE-ALPH, renaming as needed to
# match HMMSCORE alphabet names
HMMSCORE-ALPH := ${STRUCT-ALPH}
ifeq (${STRUCT-ALPH},stride-ebghtl)
HMMSCORE-ALPH := EBGHTL
endif
ifeq (${STRUCT-ALPH},dssp-ebghstl)
HMMSCORE-ALPH := EBGHSTL
endif
ifeq (${STRUCT-ALPH},dssp-ehl2)
HMMSCORE-ALPH := EHL2
endif
# copy local structure alphabet name to SEQ-ALPH, renaming as needed to
# match sequence names in info directories
INFO-ALPH := ${STRUCT-ALPH}
ifeq (${STRUCT-ALPH},stride-ebghtl)
INFO-ALPH := 2d
endif
ifeq (${STRUCT-ALPH},dssp-ebghstl)
INFO-ALPH := dssp
endif
ifeq (${STRUCT-ALPH},dssp-ehl2)
INFO-ALPH := dssp
endif
TWO-ALIGN-NAME := ${PRED}/${TARGET}-${PRED}-${ALIGN-TYPE}-${STRUCT-ALPH}-${STRUCT-WEIGHT}-adpstyle${ADP}
two-track-alignment: ${TWO-ALIGN-NAME}.a2m
echo $^ made.
${TWO-ALIGN-NAME}.a2m: ${TARG_AL}.w0.5.mod ${TARG_AL}.${STRUCT-ALPH}.mod
-mkdir ${PRED}
-chmod 775 ${PRED}
${HMMSCORE} ${TWO-ALIGN-NAME} \
-alphabet protein,${HMMSCORE-ALPH} \
-trackmod ${TARG_AL}.w0.5.mod,${TARG_AL}.${STRUCT-ALPH}.mod \
-trackcoeff 1.0,${STRUCT-WEIGHT} \
-db ${TARGET}.a2m,${TARG_AL}.${STRUCT-ALPH}.seq \
-db ${PRED-INFO}/${PRED}.stride-mixed.seq,${PRED-INFO}/${PRED}.stride-mixed.${INFO-ALPH} \
-db_size ${LIBSIZE} \
-simple_threshold 10000 \
-sw ${SW} -dpstyle 0 -subtract_null 4 \
-adpstyle ${ADP} \
-select_align 8
gzip -f ${TWO-ALIGN-NAME}.dist
-chmod 664 ${PRED}/*
endif
# Note: no two-track alignment for dssp-ehl2, since we aren't creating
# a sequence for that alphabet yet.
two-track-alignments:
-mkdir ${PRED}
-chmod 775 ${PRED}
-make -k ALIGN-TYPE=local ADP=5 \
PRED=${PRED} PRED2=${PRED2} \
MASTER=target STRUCT-ALPH=str\
two-track-alignment
-make -k ALIGN-TYPE=global ADP=5 \
PRED=${PRED} PRED2=${PRED2} \
MASTER=target STRUCT-ALPH=str\
two-track-alignment
-make -k ALIGN-TYPE=local ADP=5 \
PRED=${PRED} PRED2=${PRED2} \
MASTER=target STRUCT-ALPH=stride-ebghtl\
two-track-alignment
-make -k ALIGN-TYPE=global ADP=5 \
PRED=${PRED} PRED2=${PRED2} \
MASTER=target STRUCT-ALPH=stride-ebghtl\
two-track-alignment
-make -k ALIGN-TYPE=local ADP=5 \
PRED=${PRED} PRED2=${PRED2} \
MASTER=target STRUCT-ALPH=dssp-ebghstl\
two-track-alignment
-make -k ALIGN-TYPE=global ADP=5 \
PRED=${PRED} PRED2=${PRED2} \
MASTER=target STRUCT-ALPH=dssp-ebghstl\
two-track-alignment
-chmod 664 ${PRED}/*
########################################
# Three-track target alignments
########################################
ifndef BURIAL-WEIGHT
BURIAL-WEIGHT:=0.4
endif
ifndef BURIAL-ALPH
BURIAL-ALPH := CB_burial_14_7
endif
BURIAL-INFO-ALPH := ${BURIAL-ALPH}
ifeq (${BURIAL-ALPH},CB_burial_14_7)
BURIAL-INFO-ALPH := CB-burial-14-7
endif
THREE-ALIGN-NAME := ${PRED}/${TARGET}-${PRED}-${ALIGN-TYPE}-${STRUCT-ALPH}+${BURIAL-ALPH}-${STRUCT-WEIGHT}+${BURIAL-WEIGHT}-adpstyle${ADP}
three-track-alignment: ${THREE-ALIGN-NAME}.a2m
echo $^ made.
${THREE-ALIGN-NAME}.a2m: ${TARG_AL}.w0.5.mod \
${TARG_AL}.${STRUCT-ALPH}.mod \
${TARG_AL}.${BURIAL-ALPH}.mod
-mkdir ${PRED}
${HMMSCORE} ${THREE-ALIGN-NAME} \
-alphabet protein,${HMMSCORE-ALPH},${BURIAL-ALPH} \
-trackmod ${TARG_AL}.w0.5.mod,${TARG_AL}.${STRUCT-ALPH}.mod,${TARG_AL}.${BURIAL-ALPH}.mod \
-trackcoeff 1.0,${STRUCT-WEIGHT},${BURIAL-WEIGHT} \
-db ${TARGET}.a2m,${TARG_AL}.${STRUCT-ALPH}.seq,${TARG_AL}.${BURIAL-ALPH}.seq \
-db ${PRED-INFO}/${PRED}.stride-mixed.seq,${PRED-INFO}/${PRED}.stride-mixed.${INFO-ALPH},${PRED-INFO}/${PRED}.stride-mixed.${BURIAL-INFO-ALPH} \
-db_size ${LIBSIZE} \
-simple_threshold 10000 \
-sw ${SW} -dpstyle 0 -subtract_null 4 \
-adpstyle ${ADP} \
-select_align 8
gzip -f ${THREE-ALIGN-NAME}.dist
ifdef ALIGN_VITERBI
THREE_TRACK_ADP:=1
else
THREE_TRACK_ADP:=5
endif
# SAM-T02 doesn't use 3-track alignments, but SAM-T04 will.
three-track-alignments:
-mkdir ${PRED}
# -make -k ALIGN-TYPE=local ADP=${THREE_TRACK_ADP} \
# PRED=${PRED} PRED2=${PRED2} \
# MASTER=target STRUCT-ALPH=str2 BURIAL-ALPH=CB_burial_14_7\
# STRUCT-WEIGHT=0.4 BURIAL-WEIGHT=0.4 \
# three-track-alignment
endif #if PRED2
endif #if PRED
PSTILL_PATH ?= /usr/local/pstill_dist
ifeq ($(wildcard ${PSTILL_PATH}*),)
PSTILL_PATH:= ${PCPR}/pstill_dist
endif
%.pdf: %.eps
set PSTILL_PATH=${PSTILL_PATH} ; ${PSTILL_PATH}/pstill -gip -o $@ $^
### # WARNING: DISTILL is not installed on most SoE computers,
### # but ps2pdf produces very verbose pdf files.
### # Using the "pdf-logos" in Makefile will make all the PDF files
### # on apache.
### %.pdf: %.eps
### ssh apache 'cd ${WORKDIR}; distill $^'
### sleep 50 # wait to avoid file-system synchronization problems
.PRECIOUS: \
${TARGET}.a2m ${TARG_AL}.a2m.gz \
${TARG_AL}-thin90.a2m.gz \
${TARG_AL}-thin62.a2m.gz \
${TARG_AL}.100-30-dssp-ebghstl-target-scores.rdb \
${TARG_AL}.100-30-dssp-ebghstl-target-scores.html \
${TARG_AL}.100-30-stride-ebghtl-target-scores.rdb \
${TARG_AL}.100-30-stride-ebghtl-target-scores.html \
${TARG_AL}.100-30-str-target-scores.rdb \
${TARG_AL}.100-30-str-target-scores.html \
${TARG_AL}.100-30-dssp-ehl2-target-scores.rdb \
${TARG_AL}.100-30-dssp-ehl2-target-scores.html \
${TARG_AL}.dssp-ebghstl.seq \
${TARG_AL}.stride-ebghtl.seq \
${TARG_AL}.str2.seq \
${TARG_AL}.alpha.seq \
${TARG_AL}.dssp-ebghstl.seq \
${TARG_AL}.dssp-ebghstl.seq \
${TARGET}.mod \
${TARG_AL}.frag.gz