87f551dfb14925f9e7e1d6f23d798fef313fd73c hiram Mon Sep 1 23:25:33 2025 -0700 new chain net construction and update genePred names diff --git src/hg/utils/automation/asmHubChainNetTrackDb.sh src/hg/utils/automation/asmHubChainNetTrackDb.sh index 28f0dbc9de3..db3913da0c3 100755 --- src/hg/utils/automation/asmHubChainNetTrackDb.sh +++ src/hg/utils/automation/asmHubChainNetTrackDb.sh @@ -14,30 +14,31 @@ export buildDir=$2 export hubLinks="/hive/data/genomes/asmHubs/hubLinks" export accessionId="${asmId}" case ${asmId} in GC*) accessionId=`echo "$asmId" | awk -F"_" '{printf "%s_%s", $1, $2}'` ;; esac export scriptDir="$HOME/kent/src/hg/utils/automation" mkdir -p $buildDir/bbi mkdir -p $buildDir/liftOver +mkdir -p $buildDir/quickLift export chainNetPriority=1 printf "# asmHubChainNetTrackDb.pl $asmId $buildDir\n" 1>&2 for D in ${buildDir}/trackData/lastz.* do targetDb=$accessionId lastzDir=`basename "${D}"` otherDb=`echo $lastzDir | sed -e 's/lastz.//;'` OtherDb="${otherDb^}" asmReport=`ls -d $buildDir/download/*assembly_report.txt 2> /dev/null` overChain="${targetDb}.${otherDb}.over.chain.gz" overToChain="${targetDb}To${OtherDb}.over.chain.gz" printf "asmReport: %s\n" "${asmReport}" 1>&2 @@ -54,69 +55,80 @@ rm -f $buildDir/bbi/${asmId}.chainSyn$OtherDb.bb rm -f $buildDir/bbi/${asmId}.chainSyn${OtherDb}Link.bb rm -f $buildDir/bbi/${asmId}.chainRBest$OtherDb.bb rm -f $buildDir/bbi/${asmId}.chainRBest${OtherDb}Link.bb rm -f $buildDir/bbi/${asmId}.chainLiftOver$OtherDb.bb rm -f $buildDir/bbi/${asmId}.chainLiftOver${OtherDb}Link.bb rm -f $buildDir/bbi/${asmId}.$otherDb.net.bb rm -f $buildDir/bbi/${asmId}.$otherDb.net.summary.bb rm -f $buildDir/bbi/${asmId}.$otherDb.synNet.bb rm -f $buildDir/bbi/${asmId}.$otherDb.synNet.summary.bb rm -f $buildDir/bbi/${asmId}.$otherDb.rbestNet.bb rm -f $buildDir/bbi/${asmId}.$otherDb.rbestNet.summary.bb rm -f $buildDir/bbi/${asmId}.$otherDb.liftOverNet.bb rm -f $buildDir/bbi/${asmId}.$otherDb.liftOverNet.summary.bb rm -f $buildDir/liftOver/${overToChain} + rm -f $buildDir/quickLift/${otherDb}.bb + rm -f $buildDir/quickLift/${otherDb}.link.bb if [ -s "$buildDir/trackData/$lastzDir/axtChain/${overChain}" ]; then ln -s ../trackData/$lastzDir/axtChain/${overChain} $buildDir/liftOver/${overToChain} fi if [ -s "$buildDir/trackData/$lastzDir/axtChain/chain${OtherDb}.bb" ]; then ln -s ../trackData/$lastzDir/axtChain/chain${OtherDb}.bb $buildDir/bbi/${asmId}.chain$OtherDb.bb ln -s ../trackData/$lastzDir/axtChain/chain${OtherDb}Link.bb $buildDir/bbi/${asmId}.chain${OtherDb}Link.bb fi if [ -s "$buildDir/trackData/$lastzDir/bigMaf/$accessionId.$otherDb.net.bb" ]; then ln -s ../trackData/$lastzDir/bigMaf/$accessionId.$otherDb.net.bb $buildDir/bbi/${asmId}.$otherDb.net.bb ln -s ../trackData/$lastzDir/bigMaf/$accessionId.$otherDb.net.summary.bb $buildDir/bbi/${asmId}.$otherDb.net.summary.bb fi if [ -s "$buildDir/trackData/$lastzDir/axtChain/chainSyn${OtherDb}.bb" ]; then ln -s ../trackData/$lastzDir/axtChain/chainSyn${OtherDb}.bb $buildDir/bbi/${asmId}.chainSyn$OtherDb.bb ln -s ../trackData/$lastzDir/axtChain/chainSyn${OtherDb}Link.bb $buildDir/bbi/${asmId}.chainSyn${OtherDb}Link.bb fi if [ -s "$buildDir/trackData/$lastzDir/bigMaf/$accessionId.$otherDb.synNet.bb" ]; then ln -s ../trackData/$lastzDir/bigMaf/$accessionId.$otherDb.synNet.bb $buildDir/bbi/${asmId}.$otherDb.synNet.bb ln -s ../trackData/$lastzDir/bigMaf/$accessionId.$otherDb.synNet.summary.bb $buildDir/bbi/${asmId}.$otherDb.synNet.summary.bb fi if [ -s "$buildDir/trackData/$lastzDir/axtChain/chainRBest${OtherDb}.bb" ]; then ln -s ../trackData/$lastzDir/axtChain/chainRBest${OtherDb}.bb $buildDir/bbi/${asmId}.chainRBest$OtherDb.bb ln -s ../trackData/$lastzDir/axtChain/chainRBest${OtherDb}Link.bb $buildDir/bbi/${asmId}.chainRBest${OtherDb}Link.bb fi if [ -s "$buildDir/trackData/$lastzDir/bigMaf/$accessionId.$otherDb.rbestNet.bb" ]; then ln -s ../trackData/$lastzDir/bigMaf/$accessionId.$otherDb.rbestNet.bb $buildDir/bbi/${asmId}.$otherDb.rbestNet.bb ln -s ../trackData/$lastzDir/bigMaf/$accessionId.$otherDb.rbestNet.summary.bb $buildDir/bbi/${asmId}.$otherDb.rbestNet.summary.bb fi + if [ -s "$buildDir/trackData/$lastzDir/axtChain/chainLiftOver${OtherDb}.bb" ]; then printf "# making chainLiftOver${OtherDb}.bb\n" 1>&2 ln -s ../trackData/$lastzDir/axtChain/chainLiftOver${OtherDb}.bb $buildDir/bbi/${asmId}.chainLiftOver$OtherDb.bb ln -s ../trackData/$lastzDir/axtChain/chainLiftOver${OtherDb}Link.bb $buildDir/bbi/${asmId}.chainLiftOver${OtherDb}Link.bb if [ -s "$buildDir/trackData/$lastzDir/bigMaf/${accessionId}.${otherDb}.liftOverNet.bb" ]; then ln -s ../trackData/$lastzDir/bigMaf/$accessionId.$otherDb.liftOverNet.bb $buildDir/bbi/${asmId}.$otherDb.liftOverNet.bb ln -s ../trackData/$lastzDir/bigMaf/$accessionId.$otherDb.liftOverNet.summary.bb $buildDir/bbi/${asmId}.$otherDb.liftOverNet.summary.bb fi else printf "# there is NO chainLiftOver${OtherDb}.bb\n" 1>&2 fi + if [ -s "$buildDir/trackData/$lastzDir/axtChain/${accessionId}.${otherDb}.quick.bb" ]; then + printf "# making quickLift/${otherDb}.bb\n" 1>&2 + ln -s ../trackData/$lastzDir/axtChain/${accessionId}.${otherDb}.quick.bb $buildDir/quickLift/${otherDb}.bb + ln -s ../trackData/$lastzDir/axtChain/${accessionId}.${otherDb}.quickLink.bb $buildDir/quickLift/${otherDb}.link.bb + else + printf "# there is NO chainQuickLift${OtherDb}.bb\n" 1>&2 + fi + otherPrefix=`echo $otherDb | cut -c1-2` if [ "${otherPrefix}" = "GC" ]; then sciName=`grep -i 'organism name:' ${asmReport} | head -1 | tr -d "\r" | sed -e 's/.*organism name: *//i; s/ *(.*//;'` organism=`grep -i 'organism name:' ${asmReport} | head -1 | tr -d "\r" | sed -e 's/.*organism name: *.*(//i; s/).*//;'` taxId=`grep -i 'taxid:' ${asmReport} | head -1 | tr -d "\r" | sed -e 's/.*taxid: *//i;'` o_date=`grep -i 'date:' ${asmReport} | head -1 | tr -d "\r" | sed -e 's/.*date: *//i;'` matrix="" linGap="" minScore="" else organism=`hgsql -N -e "select organism from dbDb where name=\"$otherDb\"" hgcentraltest` sciName=`hgsql -N -e "select scientificName from dbDb where name=\"$otherDb\"" hgcentraltest` taxId=`hgsql -N -e "select taxId from dbDb where name=\"$otherDb\"" hgcentraltest` o_date=`hgsql -N -e "select description from dbDb where name=\"$otherDb\"" hgcentraltest` matrix=`~/kent/src/hg/utils/phyloTrees/findScores.pl $otherDb $targetDb 2>&1 | grep matrix`