| Previous changeset 5:b7652b7c97bd (2017-10-20) Next changeset 7:466c62f481d3 (2017-11-01) |
|
Commit message:
Uploaded |
|
modified:
Hammock/dist/Hammock.jar Hammock/settings/settings.prop hammock.xml tool_dependencies.xml |
|
added:
Hammock/dist/lib/commons-lang3-3.5.jar Hammock/dist/lib/commons-math3-3.6.1.jar external_tools/darwin/clustal-omega-1.2.0-macosx external_tools/darwin/hhmake external_tools/darwin/hhsearch external_tools/darwin/hmmbuild external_tools/darwin/hmmsearch external_tools/darwin/lib/._hh external_tools/darwin/lib/._libffindex.so.0.1 external_tools/darwin/lib/hh/._bin external_tools/darwin/lib/hh/._data external_tools/darwin/lib/hh/._scripts external_tools/darwin/lib/hh/bin/._cstranslate external_tools/darwin/lib/hh/bin/cstranslate external_tools/darwin/lib/hh/data/._context_data.lib external_tools/darwin/lib/hh/data/._cs219.lib external_tools/darwin/lib/hh/data/._do_not_delete external_tools/darwin/lib/hh/data/._do_not_delete.phr external_tools/darwin/lib/hh/data/._do_not_delete.pin external_tools/darwin/lib/hh/data/._do_not_delete.psq external_tools/darwin/lib/hh/data/context_data.lib external_tools/darwin/lib/hh/data/cs219.lib external_tools/darwin/lib/hh/data/do_not_delete external_tools/darwin/lib/hh/data/do_not_delete.phr external_tools/darwin/lib/hh/data/do_not_delete.pin external_tools/darwin/lib/hh/data/do_not_delete.psq external_tools/darwin/lib/hh/scripts/._Align.pm external_tools/darwin/lib/hh/scripts/._HHPaths.pm external_tools/darwin/lib/hh/scripts/._addss.pl external_tools/darwin/lib/hh/scripts/._create_profile_from_hhm.pl external_tools/darwin/lib/hh/scripts/._create_profile_from_hmmer.pl external_tools/darwin/lib/hh/scripts/._hhblitsdb.pl external_tools/darwin/lib/hh/scripts/._hhmakemodel.pl external_tools/darwin/lib/hh/scripts/._multithread.pl external_tools/darwin/lib/hh/scripts/._reformat.pl external_tools/darwin/lib/hh/scripts/._splitfasta.pl external_tools/darwin/lib/hh/scripts/Align.pm external_tools/darwin/lib/hh/scripts/HHPaths.pm external_tools/darwin/lib/hh/scripts/addss.pl external_tools/darwin/lib/hh/scripts/create_profile_from_hhm.pl external_tools/darwin/lib/hh/scripts/create_profile_from_hmmer.pl external_tools/darwin/lib/hh/scripts/hhblitsdb.pl external_tools/darwin/lib/hh/scripts/hhmakemodel.pl external_tools/darwin/lib/hh/scripts/multithread.pl external_tools/darwin/lib/hh/scripts/reformat.pl external_tools/darwin/lib/hh/scripts/splitfasta.pl external_tools/darwin/lib/libffindex.so.0.1 external_tools/linux/clustalo-1.2.0-Ubuntu-x86_64 external_tools/linux/hhmake external_tools/linux/hhsearch external_tools/linux/hmmbuild external_tools/linux/hmmsearch external_tools/linux/lib/hh/bin/cstranslate external_tools/linux/lib/hh/data/context_data.lib external_tools/linux/lib/hh/data/cs219.lib external_tools/linux/lib/hh/data/do_not_delete external_tools/linux/lib/hh/data/do_not_delete.phr external_tools/linux/lib/hh/data/do_not_delete.pin external_tools/linux/lib/hh/data/do_not_delete.psq external_tools/linux/lib/hh/scripts/Align.pm external_tools/linux/lib/hh/scripts/HHPaths.pm external_tools/linux/lib/hh/scripts/addss.pl external_tools/linux/lib/hh/scripts/create_profile_from_hhm.pl external_tools/linux/lib/hh/scripts/create_profile_from_hmmer.pl external_tools/linux/lib/hh/scripts/hhblitsdb.pl external_tools/linux/lib/hh/scripts/hhmakemodel.pl external_tools/linux/lib/hh/scripts/multithread.pl external_tools/linux/lib/hh/scripts/reformat.pl external_tools/linux/lib/hh/scripts/splitfasta.pl |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 Hammock/dist/Hammock.jar |
| b |
| Binary file Hammock/dist/Hammock.jar has changed |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 Hammock/dist/lib/commons-lang3-3.5.jar |
| b |
| Binary file Hammock/dist/lib/commons-lang3-3.5.jar has changed |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 Hammock/dist/lib/commons-math3-3.6.1.jar |
| b |
| Binary file Hammock/dist/lib/commons-math3-3.6.1.jar has changed |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 Hammock/settings/settings.prop --- a/Hammock/settings/settings.prop Fri Oct 20 02:50:43 2017 -0400 +++ b/Hammock/settings/settings.prop Wed Nov 01 05:54:28 2017 -0400 |
| [ |
| @@ -1,11 +1,11 @@ #Lines starting with hash (#) are ignored #Tool commands. Define full paths if needed. By default (not specified) means locations relative to .jar file in Hammock/dist foltder -#clustalOmegaCommand= -#hmmbuildCommand= -#hmmsearchCommand= -#hhmakeCommand= -#hhsearchCommand= -#reformatCommand= +clustalOmegaCommand=clustalo +hmmbuildCommand=hmmbuild +hmmsearchCommand=hmmsearch +hhmakeCommand=hhmake +hhsearchCommand=hhsearch +reformatCommand=reformat.pl #Directory for all temporal files. Define full path if needed. Default (not specified): /tmp #tempDirectory= #Temporal files subdirectories. Define full paths if needed. Default (not specified): directories in tempDirectory/Hammock_temp/[time]/ @@ -17,9 +17,9 @@ #hhsearchOutDirectory= #fastaDatabaseFile= #Tool parameters. Generally, it is not recommended to change this section. -clustalOmegaParameters= +clustalOmegaParameters=--wrap=999999 hmmbuildParameters=--enone --fragthresh 1.0 --hand --wnone --amino --seed 42 -hmmsearchParameters=--nobias --F1 0.5 --F2 0.05 --F3 1e-2 --nonull2 --seed 42 +hmmsearchParameters=--nobias --F1 0.5 --F2 0.05 --F3 1e-2 --nonull2 --notextw -E 999999 --seed 42 hmmalignParameters=--outformat selex --amino --seed 42 hhmakeParameters=-M a2m -id 100 -diff inf -pcm 3 -nocontxt -v 0 hhsearchParameters=-norealign -alt 1 -corr 0 -shift 0 -ssm 0 -tags -nocons -nopred -nodssp -sc 0 -v 0 -z 2 -Z 500000 -local -p 0.0 -vit -b 100.0 -E 100.0 -e 100.0 -z 100 |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/clustal-omega-1.2.0-macosx |
| b |
| Binary file external_tools/darwin/clustal-omega-1.2.0-macosx has changed |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/hhmake |
| b |
| Binary file external_tools/darwin/hhmake has changed |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/hhsearch |
| b |
| Binary file external_tools/darwin/hhsearch has changed |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/hmmbuild |
| b |
| Binary file external_tools/darwin/hmmbuild has changed |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/hmmsearch |
| b |
| Binary file external_tools/darwin/hmmsearch has changed |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/lib/._hh |
| b |
| Binary file external_tools/darwin/lib/._hh has changed |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/lib/._libffindex.so.0.1 |
| b |
| Binary file external_tools/darwin/lib/._libffindex.so.0.1 has changed |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/lib/hh/._bin |
| b |
| Binary file external_tools/darwin/lib/hh/._bin has changed |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/lib/hh/._data |
| b |
| Binary file external_tools/darwin/lib/hh/._data has changed |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/lib/hh/._scripts |
| b |
| Binary file external_tools/darwin/lib/hh/._scripts has changed |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/lib/hh/bin/._cstranslate |
| b |
| Binary file external_tools/darwin/lib/hh/bin/._cstranslate has changed |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/lib/hh/bin/cstranslate |
| b |
| Binary file external_tools/darwin/lib/hh/bin/cstranslate has changed |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/lib/hh/data/._context_data.lib |
| b |
| Binary file external_tools/darwin/lib/hh/data/._context_data.lib has changed |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/lib/hh/data/._cs219.lib |
| b |
| Binary file external_tools/darwin/lib/hh/data/._cs219.lib has changed |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/lib/hh/data/._do_not_delete |
| b |
| Binary file external_tools/darwin/lib/hh/data/._do_not_delete has changed |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/lib/hh/data/._do_not_delete.phr |
| b |
| Binary file external_tools/darwin/lib/hh/data/._do_not_delete.phr has changed |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/lib/hh/data/._do_not_delete.pin |
| b |
| Binary file external_tools/darwin/lib/hh/data/._do_not_delete.pin has changed |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/lib/hh/data/._do_not_delete.psq |
| b |
| Binary file external_tools/darwin/lib/hh/data/._do_not_delete.psq has changed |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/lib/hh/data/context_data.lib --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/external_tools/darwin/lib/hh/data/context_data.lib Wed Nov 01 05:54:28 2017 -0400 |
| b |
| b'@@ -0,0 +1,88003 @@\n+ContextLibrary\n+SIZE\t4000\n+LENG\t13\n+ContextProfile\n+NAME\tABA1\n+PRIOR\t7.000161e-06\n+COLOR\t1.00,1.00,1.00\n+ISLOG\tF\n+LENG\t13\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t6200\t4080\t6242\t6753\t4998\t5368\t6564\t3399\t5082\t5077\t5970\t5171\t6983\t3815\t3682\t6797\t6640\t14041\t1194\t5159\n+2\t3077\t4534\t5274\t3672\t9563\t2787\t4017\t4320\t9189\t8195\t5575\t1960\t13915\t8121\t13464\t4226\t5722\t15026\t3453\t5296\n+3\t3616\t6330\t4376\t1530\t14415\t5643\t3617\t4372\t5914\t7343\t5374\t5449\t14126\t13663\t9179\t3824\t2474\t15789\t6617\t5088\n+4\t4814\t5687\t13520\t7923\t14389\t6568\t7442\t9356\t7074\t5436\t3186\t4620\t3950\t3164\t14024\t7916\t7832\t13920\t963\t4505\n+5\t5225\t9414\t6056\t6042\t5667\t3817\t8536\t6702\t6637\t1298\t5294\t6589\t3216\t6002\t13834\t5036\t3571\t15428\t7260\t2821\n+6\t4430\t4558\t3440\t2139\t14571\t4937\t3005\t3038\t5940\t8443\t8209\t3659\t8039\t8539\t7658\t3603\t3597\t8193\t5124\t8541\n+7\t2687\t7923\t6492\t13184\t13886\t13548\t12996\t6810\t14326\t2853\t4263\t7530\t7547\t6306\t6814\t5465\t1387\t15515\t7315\t2426\n+8\t5336\t8757\t7910\t13760\t9688\t6962\t6830\t7454\t9075\t3826\t3613\t13170\t2013\t1728\t14172\t5932\t5795\t5230\t2697\t5274\n+9\t6915\t4137\t3358\t1349\t7788\t5967\t2209\t6880\t6805\t8373\t9324\t4308\t7341\t13966\t7064\t3766\t4728\t15980\t8771\t6904\n+10\t3005\t2588\t5055\t4506\t7727\t4553\t3556\t6265\t5834\t6425\t5795\t2495\t6331\t7734\t5515\t3647\t3895\t4331\t6117\t6068\n+11\t4767\t7700\t13847\t8123\t7042\t13872\t8495\t7431\t13995\t1943\t1419\t7244\t5944\t6238\t14036\t6303\t5608\t14729\t2837\t3395\n+12\t12638\t2132\t7352\t13520\t14665\t7733\t8906\t9025\t5797\t12531\t5282\t5824\t13705\t2077\t14099\t8619\t8280\t5686\t1216\t8676\n+13\t4301\t3429\t4746\t5890\t5509\t3624\t4020\t5142\t3494\t3908\t3616\t2979\t6529\t6096\t9684\t2778\t5138\t15404\t5491\t5476\n+//\n+ContextProfile\n+NAME\tAGA1\n+PRIOR\t5.9183258e-05\n+COLOR\t1.00,0.36,1.00\n+ISLOG\tF\n+LENG\t13\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t2830\t7375\t6648\t8026\t5628\t7326\t7006\t2939\t7600\t3034\t2494\t7241\t5113\t4010\t5744\t4153\t4255\t6906\t5297\t3164\n+2\t3113\t5958\t5013\t7294\t5250\t4912\t6730\t2581\t7076\t3625\t2756\t7347\t4452\t4007\t6411\t3723\t4317\t6159\t5922\t3713\n+3\t3921\t7202\t5981\t6751\t3908\t4914\t6833\t4702\t6459\t3263\t2712\t7952\t4774\t3282\t6219\t4004\t3947\t4906\t4633\t2951\n+4\t2866\t7555\t7109\t6553\t5836\t7436\t7981\t3506\t8087\t3117\t2271\t6866\t4754\t3105\t6083\t4819\t4627\t7015\t4840\t3280\n+5\t3081\t8223\t7511\t9405\t5324\t7668\t8251\t4170\t7560\t3127\t2325\t9239\t4415\t3378\t6338\t4050\t4029\t5380\t5310\t2883\n+6\t4795\t5515\t4909\t6571\t7725\t1166\t4555\t5214\t2870\t5971\t5037\t6045\t5679\t5690\t6890\t4478\t5378\t6961\t4926\t5454\n+7\t4305\t7065\t7343\t9349\t6352\t7135\t7778\t5607\t7215\t2666\t2074\t7454\t4011\t2797\t7578\t5280\t4945\t5519\t3780\t3078\n+8\t2967\t7066\t7452\t8907\t5197\t7320\t8576\t4054\t7290\t3454\t2857\t8039\t5079\t2594\t5922\t4446\t4492\t4043\t3716\t3604\n+9\t3885\t4421\t4516\t7392\t5274\t5853\t6847\t5267\t5489\t3622\t2613\t6753\t5084\t2806\t7119\t4168\t4416\t4983\t3523\t3623\n+10\t3034\t4805\t4545\t4655\t6810\t4879\t5745\t3774\t5871\t3523\t3206\t6092\t4998\t4024\t5996\t4116\t3984\t5603\t4085\t3490\n+11\t3596\t4127\t6060\t6593\t6691\t5371\t5602\t4563\t5017\t3748\t2892\t4114\t5261\t3193\t5707\t4092\t4773\t4860\t3540\t3837\n+12\t3510\t4565\t4741\t6149\t6254\t5170\t5093\t4447\t6198\t3969\t3016\t5221\t5336\t3239\t4284\t3678\t4354\t5856\t3799\t3710\n+13\t3627\t5096\t5013\t5453\t6043\t4975\t5385\t3873\t5594\t3903\t2752\t5088\t5137\t3329\t5154\t4175\t4175\t4796\t3922\t3994\n+//\n+ContextProfile\n+NAME\tAGA2\n+PRIOR\t5.9183258e-05\n+COLOR\t1.00,0.36,1.00\n+ISLOG\tF\n+LENG\t13\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t2830\t7375\t6648\t8026\t5628\t7326\t7006\t2939\t7600\t3034\t2494\t7241\t5113\t4010\t5744\t4153\t4255\t6906\t5297\t3164\n+2\t3113\t5958\t5013\t7294\t5250\t4912\t6730\t2581\t7076\t3625\t2756\t7347\t4452\t4007\t6411\t3723\t4317\t6159\t5922\t3713\n+3\t3921\t7202\t5981\t6751\t3908\t4914\t6833\t4702\t6459\t3263\t2712\t7952\t4774\t3282\t6219\t4004\t3947\t4906\t4633\t2951\n+4\t2866\t7555\t7109\t6553\t5836\t7436\t7981\t3506\t8087\t3117\t2271\t6866\t4754\t3105\t6083\t4819\t4627\t7015\t4840\t3280\n+5\t3081\t8223\t7511\t9405\t5324\t7668\t8251\t4170\t7560\t3127\t2325\t9239\t4415\t3378\t6338\t4050\t4029\t5380\t5310\t2883\n+6\t4795\t5515\t4909\t6571\t7725\t1166\t4555\t5214\t2870\t5971\t5037\t6045\t5679\t5690\t6890\t4478\t5378\t6961\t4926\t5454\n+7\t4305\t7065\t7343\t9349\t6352\t7135\t7778\t5607\t7215\t2666\t2074\t7454\t4011\t2797\t7578\t5280\t4945\t5519\t3780\t3078\n+8\t2967\t7066\t7452\t8907\t5197\t7320\t8576\t4054\t7290\t3454\t2857\t80'..b'74\t8763\t5912\t5486\t656\t6106\t7907\t7171\t4651\t6940\t7452\t6191\t5093\t6334\t10451\t7365\t7561\n+5\t4281\t4256\t6379\t6480\t6672\t5587\t6124\t6774\t4388\t3022\t2694\t3608\t4787\t3339\t6814\t6042\t6059\t5809\t2930\t3500\n+6\t4286\t2225\t3902\t3634\t8742\t4366\t3888\t5812\t4806\t6499\t6366\t2638\t7760\t6810\t5042\t3501\t3919\t9443\t6391\t5643\n+7\t4129\t8367\t8153\t8553\t4836\t8349\t9786\t7435\t7801\t3044\t3992\t8788\t6575\t5400\t5955\t5500\t3528\t9437\t6440\t927\n+8\t3530\t5738\t8066\t7274\t5912\t7058\t6324\t5524\t5755\t2723\t1902\t6138\t5429\t4202\t8993\t5622\t3867\t6427\t4817\t2654\n+9\t3632\t4296\t8731\t9282\t5801\t7544\t8435\t6169\t6987\t2534\t2050\t7883\t4529\t4731\t8840\t5757\t5217\t7472\t6072\t2005\n+10\t4605\t7592\t8320\t8664\t6140\t7889\t7768\t7696\t6014\t2268\t2196\t8086\t5420\t3304\t4354\t6787\t6095\t6759\t4392\t2176\n+11\t3887\t6326\t3947\t1772\t6983\t5752\t2273\t5124\t6541\t7480\t6560\t4775\t7569\t8252\t5073\t3345\t3578\t11697\t7433\t6600\n+12\t3422\t3733\t5016\t3227\t5186\t4713\t4707\t3061\t5891\t5552\t3521\t3407\t5530\t4925\t4932\t4157\t4798\t7543\t4413\t5719\n+13\t3794\t3071\t4201\t2474\t6603\t5220\t3944\t2964\t5123\t6441\t5273\t4302\t7198\t5795\t4199\t3571\t5148\t7509\t5784\t6360\n+//\n+ContextProfile\n+NAME\tUCA31\n+PRIOR\t0.00026953894\n+COLOR\t0.36,0.84,1.00\n+ISLOG\tF\n+LENG\t13\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t3515\t4698\t4708\t4327\t6106\t5473\t4186\t4204\t5014\t3638\t3108\t4624\t5621\t4023\t4609\t3950\t4175\t5296\t5008\t3786\n+2\t3350\t4161\t4889\t4076\t5171\t4795\t3628\t4608\t4643\t4328\t3626\t4238\t5285\t4642\t4667\t3767\t4128\t6332\t4833\t4050\n+3\t3527\t3967\t4660\t4222\t6819\t4650\t3780\t4120\t4985\t4154\t3535\t3834\t5389\t4237\t4521\t3837\t4292\t7652\t5313\t4023\n+4\t3434\t4262\t4142\t3489\t6530\t4646\t3939\t4816\t4865\t3737\t3348\t4331\t5041\t5222\t5000\t3938\t4304\t7736\t5555\t3822\n+5\t3772\t4136\t4371\t3838\t6729\t4322\t3337\t4034\t4348\t4566\t3848\t4352\t4964\t5045\t4089\t4041\t4380\t5993\t4871\t4545\n+6\t3565\t3082\t4169\t3525\t8044\t4020\t3124\t4562\t4760\t5791\t4989\t3371\t6432\t6217\t3787\t4036\t4534\t7289\t5721\t5470\n+7\t3725\t3111\t3989\t3409\t7457\t3646\t2603\t4826\t4520\t5763\t4920\t3746\t6432\t6122\t5285\t4260\t4673\t7980\t5260\t5413\n+8\t6578\t6337\t4868\t6868\t8038\t4928\t6526\t7640\t404\t7028\t5918\t7008\t7924\t5930\t7688\t6529\t7105\t6870\t4861\t7005\n+9\t3490\t3388\t5334\t5389\t6550\t3760\t4181\t5457\t5006\t3478\t2630\t4369\t5313\t4377\t6511\t4568\t4764\t7058\t5109\t3758\n+10\t3091\t3131\t4510\t4007\t7649\t3929\t3089\t4947\t5246\t5071\t4412\t3147\t5584\t5741\t4877\t4105\t4663\t8258\t5943\t4827\n+11\t4142\t3583\t4678\t5346\t7132\t4825\t4191\t6045\t4856\t3068\t2482\t4683\t4805\t4128\t7398\t4944\t4861\t5927\t3980\t3908\n+12\t3658\t3960\t6473\t5687\t6141\t5505\t5823\t5395\t5743\t3158\t2235\t5403\t4698\t3644\t6447\t4500\t4583\t5960\t4666\t3183\n+13\t3515\t3288\t4802\t3399\t6496\t4380\t3538\t4810\t5907\t4142\t3637\t3529\t6103\t4870\t5241\t4302\t4454\t6600\t5703\t4124\n+//\n+ContextProfile\n+NAME\tAFI9\n+PRIOR\t0.00014116683\n+COLOR\t1.00,0.52,0.68\n+ISLOG\tF\n+LENG\t13\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t2604\t4710\t4845\t4578\t5180\t6014\t5038\t3779\t6343\t3691\t3520\t3692\t6001\t4943\t4158\t3860\t4527\t7908\t5333\t3745\n+2\t4460\t4522\t4862\t2072\t7800\t5085\t4108\t2489\t5661\t4072\t4897\t4475\t7872\t6015\t4475\t4646\t4995\t8005\t6379\t4082\n+3\t2667\t4302\t5951\t5249\t5781\t6135\t4579\t4651\t6145\t3239\t3005\t5436\t6030\t4594\t7224\t3799\t4307\t7558\t5341\t2718\n+4\t3707\t7066\t6357\t7959\t5271\t7381\t7464\t5723\t7364\t2101\t2811\t7347\t5492\t4090\t6791\t5654\t5017\t6743\t5480\t1821\n+5\t3665\t8758\t7747\t7134\t4808\t7789\t9253\t6772\t7204\t2143\t2450\t9735\t5473\t3689\t6352\t5258\t5474\t6758\t4357\t2186\n+6\t4465\t9202\t6227\t8731\t5124\t7433\t8807\t7385\t7097\t1971\t2654\t9596\t4808\t4660\t7766\t5374\t4734\t9231\t5912\t1679\n+7\t3226\t8178\t6353\t7452\t5056\t7046\t6800\t4812\t7061\t5430\t4612\t7880\t7094\t7116\t876\t4348\t4204\t9490\t7816\t4468\n+8\t3447\t7257\t5645\t6710\t4816\t7044\t7421\t5312\t7259\t3406\t3104\t7266\t5674\t4946\t5893\t2961\t2271\t7895\t5590\t2786\n+9\t4174\t4323\t3846\t3319\t7102\t5795\t4665\t4892\t5473\t5112\t4104\t4257\t6363\t4336\t3096\t3636\t3727\t6486\t3583\t4819\n+10\t3236\t5597\t2775\t4068\t6770\t5656\t5123\t4121\t5208\t5667\t4711\t5453\t6654\t5653\t2922\t3100\t3462\t6035\t4937\t5178\n+11\t3862\t4401\t4449\t3690\t6708\t4982\t2611\t3233\t5241\t5652\t4892\t5034\t6064\t4117\t4440\t3293\t4307\t6648\t5203\t5030\n+12\t3446\t5162\t4594\t4015\t7617\t4861\t3717\t3003\t4750\t4935\t3798\t4881\t5955\t4737\t4214\t3553\t3926\t6574\t4315\t4580\n+13\t3276\t4201\t4480\t4371\t6847\t5053\t3928\t3481\t3920\t4808\t3973\t4299\t6208\t4341\t3861\t3710\t4259\t7619\t5295\t4379\n+//\n' |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/lib/hh/data/cs219.lib --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/external_tools/darwin/lib/hh/data/cs219.lib Wed Nov 01 05:54:28 2017 -0400 |
| b |
| b'@@ -0,0 +1,2193 @@\n+ContextLibrary\n+SIZE\t219\n+LENG\t1\n+ContextProfile\n+NAME\t0\n+PRIOR\t0.01685367\n+COLOR\t0.80,0.60,0.80\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t5722\t8301\t7211\t7542\t9306\t8794\t8214\t113\t9303\t9562\t8718\t8182\t10182\t9473\t8665\t6339\t8023\t10959\t9714\t8731\n+//\n+ContextProfile\n+NAME\t1\n+PRIOR\t0.00733811\n+COLOR\t0.80,0.40,1.00\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t6598\t8305\t8183\t8198\t128\t8850\t8596\t7461\t9247\t7585\t6988\t8701\t9063\t8110\t8517\t6587\t7322\t9525\t8248\t7059\n+//\n+ContextProfile\n+NAME\t2\n+PRIOR\t0.0074780207\n+COLOR\t0.40,0.60,0.60\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t7404\t7583\t8714\t9008\t8940\t8419\t8480\t7937\t8058\t7242\t6020\t8462\t8182\t5249\t8704\t7761\t8001\t194\t5443\t7301\n+//\n+ContextProfile\n+NAME\t3\n+PRIOR\t0.025236913\n+COLOR\t0.60,0.40,0.80\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t5643\t7046\t7329\t6897\t9468\t7342\t6703\t6772\t8315\t7447\t6723\t6837\t8799\t8184\t217\t5949\t6594\t10058\t8459\t6919\n+//\n+ContextProfile\n+NAME\t4\n+PRIOR\t0.010610212\n+COLOR\t0.40,1.00,0.40\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t6740\t6572\t6121\t6725\t8980\t6146\t6835\t7261\t237\t7696\t6729\t7084\t8446\t7119\t7710\t6442\t7104\t8862\t6243\t7473\n+//\n+ContextProfile\n+NAME\t5\n+PRIOR\t0.020806629\n+COLOR\t0.80,0.60,0.80\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t5397\t6480\t6104\t6130\t8673\t7114\t6429\t266\t7772\t7938\t7062\t6590\t8664\t8076\t6882\t5614\t6550\t9507\t8204\t7271\n+//\n+ContextProfile\n+NAME\t6\n+PRIOR\t0.023978551\n+COLOR\t0.40,1.00,0.80\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t6196\t6577\t5327\t292\t9353\t6616\t5108\t6259\t7214\t8103\t7366\t6375\t9027\t8569\t7062\t5702\t6447\t10155\t8219\t7600\n+//\n+ContextProfile\n+NAME\t7\n+PRIOR\t0.015750478\n+COLOR\t0.40,0.60,0.40\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t6760\t7537\t7785\t8222\t8534\t7963\t7898\t7869\t6674\t6448\t5490\t7943\t7650\t3817\t8365\t7128\t7299\t6263\t326\t6432\n+//\n+ContextProfile\n+NAME\t8\n+PRIOR\t0.026518086\n+COLOR\t1.00,0.80,0.60\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t5984\t303\t6601\t6615\t9052\t6081\t5979\t6720\t7190\t7243\t6407\t5042\t8181\t7921\t7147\t6075\t6500\t9035\t7627\t6953\n+//\n+ContextProfile\n+NAME\t9\n+PRIOR\t0.019415992\n+COLOR\t0.40,0.60,0.40\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t6534\t7980\t8319\t8745\t8404\t8359\t8298\t7895\t7567\t5541\t4543\t8286\t6824\t346\t8304\t7250\t7182\t6598\t4277\t5687\n+//\n+ContextProfile\n+NAME\t0\n+PRIOR\t0.042818933\n+COLOR\t0.60,0.40,0.40\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t5810\t7553\t8258\t8537\t8075\t7905\t7852\t7725\t8497\t4471\t339\t7778\t5857\t5511\t7985\t6977\t6690\t8181\t6849\t4711\n+//\n+ContextProfile\n+NAME\t1\n+PRIOR\t0.024854491\n+COLOR\t0.40,1.00,1.00\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t5680\t5905\t6299\t5121\t9510\t5848\t337\t6462\t7457\t7392\t6629\t5707\t8356\t8129\t6887\t5800\t6278\t9618\t7882\t6934\n+//\n+ContextProfile\n+NAME\t2\n+PRIOR\t0.017763744\n+COLOR\t1.00,1.00,0.80\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t5949\t6148\t338\t5273\t8609\t6531\t5919\t5831\t6757\t7457\t6796\t6109\t8467\t7935\t7024\t5430\t5993\t9675\t7641\t7135\n+//\n+ContextProfile\n+NAME\t3\n+PRIOR\t0.031512555\n+COLOR\t1.00,0.40,1.00\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t368\t6575\t6976\t6873\t7348\t6947\t6378\t5312\t8002\t6181\t5605\t6628\t7412\t7160\t6833\t5073\t5710\t9188\t7633\t5577\n+//\n+ContextProfile\n+NAME\t4\n+PRIOR\t0.020451019\n+COLOR\t1.00,0.40,0.60\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t5746\t7562\t8178\t8481\t7988\t7966\t7793\t7678\t8552\t421\t3777\t7694\t6156\t5661\t7944\t6945\t6453\t8363\t6880\t4149\n+//\n+ContextProfile\n+NAME\t5\n+PRIOR\t0.02347888\n+COLOR\t1.00,0.40,0.40\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t5359\t7355\t7952\t8097\t7674\t7785\t7457\t7257\t8405\t4204\t4146\t7486\t6470\t5826\t7550\t6572\t6118\t8475\t6939\t414\n+//\n+ContextProfile\n+NAME\t6\n+PRIOR\t0.0221443'..b'078\t3957\t3707\t4756\t5401\t5871\t5308\t3429\t2100\t7864\t6087\t3325\n+//\n+ContextProfile\n+NAME\t3\n+PRIOR\t0.0022452627\n+COLOR\t0.60,0.40,0.40\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t3832\t2796\t5950\t6205\t6711\t4816\t5125\t5765\t5694\t3587\t2308\t4115\t4774\t4758\t6085\t4801\t4369\t6215\t5319\t3462\n+//\n+ContextProfile\n+NAME\t4\n+PRIOR\t0.0030132039\n+COLOR\t1.00,0.80,0.60\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t3476\t2821\t4301\t3806\t7974\t3836\t3534\t2987\t4950\t6462\t5399\t3391\t7125\t7082\t4891\t3735\t4561\t8610\t6725\t5682\n+//\n+ContextProfile\n+NAME\t5\n+PRIOR\t0.0019463019\n+COLOR\t0.40,0.60,0.40\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t4207\t4256\t4623\t4399\t7612\t4475\t4052\t4998\t5450\t4933\t3910\t4143\t5810\t1875\t5705\t4262\t4623\t6839\t4826\t4688\n+//\n+ContextProfile\n+NAME\t6\n+PRIOR\t0.0029312021\n+COLOR\t1.00,0.80,0.60\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t3375\t2904\t4564\t4244\t7549\t3904\t3564\t4950\t5065\t5687\t5075\t3826\t6677\t6851\t5669\t3124\t2898\t8543\t6645\t4760\n+//\n+ContextProfile\n+NAME\t7\n+PRIOR\t0.0013606992\n+COLOR\t0.40,0.60,0.60\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t3292\t5227\t5833\t6199\t6234\t5848\t5720\t4603\t5951\t4347\t3423\t5718\t5199\t4145\t4990\t4162\t4245\t2102\t4414\t3874\n+//\n+ContextProfile\n+NAME\t8\n+PRIOR\t0.0027039386\n+COLOR\t0.80,1.00,0.40\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t4219\t3667\t4843\t4772\t7549\t3950\t3333\t5609\t5587\t4139\t4749\t2761\t6435\t6498\t5713\t4161\t3392\t8492\t6294\t2882\n+//\n+ContextProfile\n+NAME\t9\n+PRIOR\t0.0017339621\n+COLOR\t0.40,1.00,0.40\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t3843\t4389\t4863\t5387\t6508\t4659\t4733\t5479\t2099\t3984\t3921\t4866\t5594\t5072\t5719\t4525\t4076\t7017\t4721\t3337\n+//\n+ContextProfile\n+NAME\t0\n+PRIOR\t0.0039063267\n+COLOR\t0.60,0.40,0.80\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t3854\t4100\t4080\t3474\t8038\t4141\t3159\t4382\t5370\t5857\t5229\t3412\t6908\t6741\t3029\t3446\t3884\t8727\t6516\t5155\n+//\n+ContextProfile\n+NAME\t1\n+PRIOR\t0.0022997542\n+COLOR\t1.00,0.40,0.60\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t3784\t4644\t5487\t4914\t7106\t4360\t3335\t5677\t5854\t2673\t3145\t4453\t5038\t5216\t5790\t4584\t4055\t7497\t5471\t3068\n+//\n+ContextProfile\n+NAME\t2\n+PRIOR\t0.0014890771\n+COLOR\t0.80,0.40,1.00\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t3926\t3384\t4954\t5099\t2157\t4240\t4213\t5167\t4863\t5192\t4366\t3984\t6116\t5625\t5454\t3820\t4514\t7244\t5335\t4598\n+//\n+ContextProfile\n+NAME\t3\n+PRIOR\t0.0023833375\n+COLOR\t1.00,0.80,0.60\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t3829\t2557\t4600\t5242\t7372\t4687\t4806\t4379\t5464\t4993\t4093\t2724\t5342\t5438\t4361\t3594\t4092\t6814\t5962\t4771\n+//\n+ContextProfile\n+NAME\t4\n+PRIOR\t0.0024807991\n+COLOR\t0.40,0.60,0.40\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t4052\t4665\t5642\t5890\t6535\t5043\t5189\t5694\t5085\t3717\t2553\t5005\t4579\t3058\t5941\t4771\t4737\t5318\t3084\t3773\n+//\n+ContextProfile\n+NAME\t5\n+PRIOR\t0.0032628478\n+COLOR\t0.60,0.40,0.80\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t3277\t4411\t5139\t4708\t7313\t4774\t4197\t4606\t5778\t4281\t3466\t4601\t5946\t5521\t2523\t3781\t4026\t7512\t6117\t3691\n+//\n+ContextProfile\n+NAME\t6\n+PRIOR\t0.0025318721\n+COLOR\t0.60,0.80,1.00\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t3833\t4243\t4222\t3669\t7729\t3998\t3517\t4455\t5459\t4978\t2539\t3839\t5637\t5768\t5065\t3785\t4208\t8077\t6137\t4827\n+//\n+ContextProfile\n+NAME\t7\n+PRIOR\t0.0012302587\n+COLOR\t0.40,0.60,0.60\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t3685\t3757\t4518\t3719\t7508\t4084\t3293\t4462\t5154\t5682\t4591\t4047\t6294\t5588\t5065\t3783\t4322\t2955\t5436\t5103\n+//\n+ContextProfile\n+NAME\t8\n+PRIOR\t0.0023421287\n+COLOR\t0.40,1.00,0.40\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t3642\t3914\t3908\t4231\t7039\t3905\t3956\t4395\t4008\t5313\t4459\t4173\t6015\t4851\t5425\t3490\t3874\t7084\t3559\t4782\n+//\n' |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/lib/hh/data/do_not_delete --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/external_tools/darwin/lib/hh/data/do_not_delete Wed Nov 01 05:54:28 2017 -0400 |
| b |
| @@ -0,0 +1,12 @@ +>1jat_B Ubiquitin-conjugating enzyme variant MMS2; UEV; {Saccharomyces cerevisiae} (1.6 0.203 0.239) SCOP: d.20.1.1 DALI: 2290.1.1.1.1.1 1777.1.1.2.1.1 +HMSKVPRNFRLLEELEKGEKGFGPESCSYGLADSDDITMTKWNGTILGPPHSNHENRIYSLSIDCGPNYPDSPPKVTFISKINLPCVNPTTGEVQTDFHTLRDWKRAYTMETLLLDLRKEMATPANKKLRQPKEGETF +>1a04_A Nitrate/nitrite response regulator protein NARL; signal transduction protein, response regulators, two-component systems; {Escherichia coli} (2.2 0.211 0.267) SCOP: a.4.6.2 c.23.1.1 DALI: 988.1.2.2.1.1 5.1.1.1.1.1 +SNQEPATILLIDDHPMLRTGVKQLISMAPDITVVGEASNGEQGIELAESLDPDLILLDLNMPGMNGLETLDKLREKSLSGRIVVFSVSNHEEDVVTALKRGADGYLLKDMEPEDLLKALHQAAAGEMVLSEALTPVLAASLRANRATTERDVNQLTPRERDILKLIAQGLPNKMIARRLDITESTVKVHVKHMLKKMKLKSRVEAAVWVHQERIF +>1mli Muconolactone isomerase (E.C.5.3.3.4); {Pseudomonas putida} (3.3 0 0) +MLFHVKMTVKLPVDMDPAKATQLKADEKELAQRLQREGTWRHLWRIAGHYANYSVFDVPSVEALHDTLMQLPLFPYMDIEVDGLCRHPSSIHSDDR +>1ekz_A DSRBDIII, maternal effect protein (staufen); NMR structure, protein/RNA, protein DSRBD, RNA hairpin; {Drosophila melanogaster} (0 0 0) SCOP: d.50.1.1 DALI: 361.2.2.1.1.1 PDB: 1stu +MDEGDKKSPISQVHEIGIKRNMTVHFKVLREEGPAHMKNFITACIVGSIVTEGEGNGKKVSKKRAAEKMLVELQKL +>1et9_A Superantigen SPE-H; beta grasp, OB fold, superantigen fold; {Streptococcus pyogenes} (1.90 0.199 0.220) SCOP: b.40.2.2 d.15.6.1 DALI: 1368.1.1.1.3.1 +NSYNTTNRHNLESLYKHDSNLIEADSIKNSPDIVTSHMLKYSVKDKNLSVFFEKDWISQEFKDKEVDIYALSAQEVCECPGKRYEAFGGITLTNSEKKEIKVPVNVWDKSKQQPPMFITVNKPKVTAQEVDIKVRKLLIKKYDIYNNREQKYSKGTVTLDLNSGKDIVFDLYYFGNGDFNSMLKIYSNNERIDSTQFHVDVSIS +>1m0s_A Ribose-5-phosphate isomerase A; D-ribose 5-phosphate isomerase, northeast structural genomics consortium, IR21, structural genomics; {Haemophilus influenzae} (1.90 0.179 0.208) SCOP: c.124.1.4 d.58.40.1 DALI: 194.2.1.1.1.1 +MNQLEMKKLAAQAALQYVKADRIVGVGSGSTVNCFIEALGTIKDKIQGAVAASKESEELLRKQGIEVFNANDVSSLDIYVDGADEINPQKMMIKGGGAALTREKIVAALAKKFICIVDSSKQVDVLGSTFPLPVEVIPMARSQVGRKLAALGGSPEYREGVVTDNGNVILDVHNFSILNPVEIEKELNNVAGVVTNGIFALRGADVVIVGTPEGAKVID |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/lib/hh/data/do_not_delete.phr |
| b |
| Binary file external_tools/darwin/lib/hh/data/do_not_delete.phr has changed |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/lib/hh/data/do_not_delete.pin |
| b |
| Binary file external_tools/darwin/lib/hh/data/do_not_delete.pin has changed |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/lib/hh/data/do_not_delete.psq |
| b |
| Binary file external_tools/darwin/lib/hh/data/do_not_delete.psq has changed |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/lib/hh/scripts/._Align.pm |
| b |
| Binary file external_tools/darwin/lib/hh/scripts/._Align.pm has changed |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/lib/hh/scripts/._HHPaths.pm |
| b |
| Binary file external_tools/darwin/lib/hh/scripts/._HHPaths.pm has changed |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/lib/hh/scripts/._addss.pl |
| b |
| Binary file external_tools/darwin/lib/hh/scripts/._addss.pl has changed |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/lib/hh/scripts/._create_profile_from_hhm.pl |
| b |
| Binary file external_tools/darwin/lib/hh/scripts/._create_profile_from_hhm.pl has changed |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/lib/hh/scripts/._create_profile_from_hmmer.pl |
| b |
| Binary file external_tools/darwin/lib/hh/scripts/._create_profile_from_hmmer.pl has changed |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/lib/hh/scripts/._hhblitsdb.pl |
| b |
| Binary file external_tools/darwin/lib/hh/scripts/._hhblitsdb.pl has changed |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/lib/hh/scripts/._hhmakemodel.pl |
| b |
| Binary file external_tools/darwin/lib/hh/scripts/._hhmakemodel.pl has changed |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/lib/hh/scripts/._multithread.pl |
| b |
| Binary file external_tools/darwin/lib/hh/scripts/._multithread.pl has changed |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/lib/hh/scripts/._reformat.pl |
| b |
| Binary file external_tools/darwin/lib/hh/scripts/._reformat.pl has changed |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/lib/hh/scripts/._splitfasta.pl |
| b |
| Binary file external_tools/darwin/lib/hh/scripts/._splitfasta.pl has changed |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/lib/hh/scripts/Align.pm --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/external_tools/darwin/lib/hh/scripts/Align.pm Wed Nov 01 05:54:28 2017 -0400 |
| [ |
| b'@@ -0,0 +1,659 @@\n+# Package Align.pl\n+# (c) Johannes Soeding, 2006\n+# Perl functions for Smith-Waterman and Needleman-Wunsch sequence alignment\n+\n+# HHsuite version 2.0\n+#\n+# Reference: \n+# Remmert M., Biegert A., Hauser A., and Soding J.\n+# HHblits: Lightning-fast iterative protein sequence searching by HMM-HMM alignment.\n+# Nat. Methods, epub Dec 25, doi: 10.1038/NMETH.1818 (2011).\n+\n+# (C) Johannes Soeding and Michael Remmert, 2012\n+\n+# This program is free software: you can redistribute it and/or modify\n+# it under the terms of the GNU General Public License as published by\n+# the Free Software Foundation, either version 3 of the License, or\n+# (at your option) any later version.\n+\n+# This program is distributed in the hope that it will be useful,\n+# but WITHOUT ANY WARRANTY; without even the implied warranty of\n+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n+# GNU General Public License for more details.\n+\n+# You should have received a copy of the GNU General Public License\n+# along with this program. If not, see <http://www.gnu.org/licenses/>.\n+\n+# We are very grateful for bug reports! Please contact us at soeding@genzentrum.lmu.de\n+\n+#############################################################################\n+# Subroutine AlignSW\n+# Smith-Waterman local alignment\n+# usage: \n+# 1. Use global variables of package Align.pm:\n+# $score = &AlignSW();\n+# printf(" XSEQ: $Align::xseq\\n");\n+# printf(" MATCH: $Align::Sstr\\n");\n+# printf(" YSEQ: $Align::yseq\\n");\n+# etc.\n+# \n+# 2. Use references and/or global variables\n+# $score = &AlignSW(\\$xseq,\\$yseq);\n+# $score = &AlignNW(\\$xseq,\\$yseq,\\@i,\\@j,\\$imin,\\$imax,\\$jmin,\\$jmax,\\$Sstr,\\@S);\n+# printf(" XSEQ: $xseq\\n");\n+# printf(" MATCH: $Sstr\\n");\n+# printf(" YSEQ: $yseq\\n");\n+#\n+# Input: $xseq, $yseq : sequences x and y as strings\n+# Param: $main::d : gap opening penalty\n+# $main::e : gap extension penalty \n+# Output: return value : bit score\n+# $xseq, $yseq : aligned residues of x and y (with - as gap) \n+# @i : $i[$col],$j[$col] are aligned residues in column $col \n+# @j : (first is 1 (NOT 0!), 0 means gap)\n+# $imin : first aligned residue of sequence x\n+# $imax : last aligned residue of sequence x\n+# $jmin : first aligned residue of sequence y\n+# $jmax : last aligned residue of sequence y\n+# $Sstr : string belonging to $xseq and $yseq showing quality of alignment\n+# $S[$col] : match score for aligning positions $i[$col] and $j[$col] \n+#############################################################################\n+\n+#############################################################################\n+# Subroutine AlignNW\n+# Needleman-Wunsch global alignment\n+# usage: $score = &AlignNW();\n+# $score = &AlignNW(\\$xseq,\\$yseq);\n+# $score = &AlignNW(\\$xseq,\\$yseq,\\@i,\\@j);\n+# $score = &AlignNW(\\$xseq,\\$yseq,\\@i,\\@j,\\$imin,\\$imax,\\$jmin,\\$jmax,\\$Sstr,\\@S);\n+#\n+# Input: $xseq, $yseq : sequences x and y as strings\n+# Param: $main::d : gap opening penalty\n+# $main::e : gap extension penalty \n+# $main::g : end gap penalty \n+# Output: return value : bit score\n+# $xseq, $yseq : aligned residues of x and y (with - as gap) \n+# @i : $i[$col],$j[$col] are aligned residues in column $col \n+# @j : (first is 1 (NOT 0!), 0 means gap)\n+# $imin : first aligned residue of sequence x\n+# $imax : last aligned residue of sequence x\n+# $jmin : first aligned residue of sequence y\n+# $jmax : last aligned residue of sequence y\n+# $Sstr : string belonging to $xseq and $yseq s'..b'+ }\n+ for ($j=1; $j<=$Ly; $j++) {\n+\t$M[0][$j] = -999;\t\n+\t$A[0][$j] = -$j*$main::g;\t\n+\t$B[0][$j] = -999;\n+\t$Abt[0][$j] = 0; # previous state was A as well (gap in x)\n+ }\n+ \n+ # Iteration\n+ for ($i=1; $i<=$Lx; ++$i) {\n+\tmy $Mi =$M[$i];\n+\tmy $Mi1=$M[$i-1];\n+\tmy $Ai =$A[$i];\n+\tmy $Ai1=$A[$i-1];\n+\tmy $Bi =$B[$i];\n+\tmy $Bi1=$B[$i-1];\n+\tmy $Sabx=$Sab[$xres[$i]];\n+\tmy $j1=0;\n+\tfor ($j=1; $j<=$Ly; ++$j, ++$j1) {\n+\t ${$Mi}[$j] = max3bt(${$Mi1}[$j1], ${$Ai1}[$j1], ${$Bi1}[$j1], \\$Mbt[$i][$j]) + ${$Sabx}[$yres[$j]];\n+\t ${$Ai}[$j] = max2bt(${$Ai}[$j1]-$main::e, ${$Mi}[$j1]-$dx, \\$Abt[$i][$j]);\n+\t ${$Bi}[$j] = max2bt(${$Bi1}[$j]-$main::e, ${$Mi1}[$j]-$dy, \\$Bbt[$i][$j]);\n+\t}\n+ }\n+\n+ # Finding maximum\n+ $score = -1000;\n+ for ($i=1; $i<=$Lx; $i++) {\n+\tmy $endgappenalty = ($Lx-$i)*$main::g;\n+\tif ($M[$i][$Ly]-$endgappenalty > $score) {\n+\t $score=$M[$i][$Ly]-$endgappenalty; $$imax=$i; $$jmax=$Ly; $state = 1;\n+\t}\n+\tif ($A[$i][$Ly]-$endgappenalty > $score) {\n+\t $score=$A[$i][$Ly]-$endgappenalty; $$imax=$i; $$jmax=$Ly; $state = 2;\n+\t}\n+\tif ($B[$i][$Ly]-$endgappenalty > $score) {\n+\t $score=$B[$i][$Ly]-$endgappenalty; $$imax=$i; $$jmax=$Ly; $state = 3;\n+\t}\n+ }\n+ for ($j=1; $j<$Ly; $j++) {\n+\tmy $endgappenalty = ($Ly-$j)*$main::g;\n+\tif ($M[$Lx][$j]-$endgappenalty > $score) {\n+\t $score=$M[$Lx][$j]-$endgappenalty; $$imax=$Lx; $$jmax=$j; $state = 1;\n+\t}\n+\tif ($A[$Lx][$j]-$endgappenalty > $score) {\n+\t $score=$A[$Lx][$j]-$endgappenalty; $$imax=$Lx; $$jmax=$j; $state = 2;\n+\t}\n+\tif ($B[$Lx][$j]-$endgappenalty > $score) {\n+\t $score=$B[$Lx][$j]-$endgappenalty; $$imax=$Lx; $$jmax=$j; $state = 3;\n+\t}\n+ }\n+\n+ # Make sure the end gapped regions are also backtraced\n+ if ($$jmax<$Ly) {\n+\t$Abt[$Lx][$$jmax+1] = $state;\n+\tfor ($j=$$jmax+2; $j<=$Ly; $j++) {$Abt[$Lx][$j] = 0;}\n+\t$state = 2;\n+ } elsif ($$imax<$Lx) {\n+\t$Bbt[$$imax+1][$Ly] = $state;\n+\tfor ($i=$$imax+2; $i<=$Lx; $i++) {$Bbt[$i][$Ly] = 0;}\n+\t$state = 3;\n+ } else {\n+\t$state = 1;\n+ }\n+\n+\n+\n+ # Backtracing\n+ @$ri=();\n+ @$rj=();\n+\n+ @$rS=();\n+ $i=$Lx; $j=$Ly;\n+ $$xseq=""; $$yseq="";\n+ while ($i || $j) {\n+\tif ($state==1) { \n+\t # current state is M (match-match)\n+\t unshift(@$ri,$i);\n+\t unshift(@$rj,$j);\n+\t $state = $Mbt[$i][$j]+1; # previous state \n+\t $$xseq=$xchr[$i].$$xseq;\n+\t $$yseq=$ychr[$j].$$yseq;\n+\t unshift(@$rS, $Sab[$xres[$i]][$yres[$j]]);\n+\t $$imin=$i; $$jmin=$j;\n+\t $i--; $j--;\n+\t} elsif ($state==2) {\n+\t # current state is A (gap in x)\n+\t unshift(@$ri,0); # $ri->[$col]=0 for gap in $x\n+\t unshift(@$rj,$j);\n+\t $$xseq="-".$$xseq;\n+\t $$yseq=$ychr[$j].$$yseq;\n+\t $bt = $Abt[$i][$j--];\n+\t if ($bt) {\n+\t\t# previous state was M\n+\t\tif ($i==$Lx || $i==0) {\n+\t\t unshift(@$rS,-$main::g); # end gap\n+\t\t} else {\n+\t\t unshift(@$rS,-$dx); # gap opening\n+\t\t}\n+\t\t$state = 1;\n+\t } else {\n+\t\t# previous state was A\n+\t\tif ($i==$Lx || $i==0) {\n+\t\t unshift(@$rS,-$main::g); # end gap\n+\t\t} else {\n+\t\t unshift(@$rS,-$main::e); # gap extension\n+\t\t}\n+\t }\n+\t} else {\n+\t # current state is B (gap in y)\n+\t unshift(@$ri,$i);\n+\t unshift(@$rj,0); # $j[$col]=0 for gap in $y\n+\t $$xseq=$xchr[$i].$$xseq;\n+\t $$yseq="-".$$yseq;\n+\t $bt = $Bbt[$i--][$j];\n+\t if ($bt) {\n+\t\t# previous state was M\n+\t\tif ($j==$Ly || $j==0) {\n+\t\t unshift(@$rS,-$main::g); # end gap\n+\t\t} else {\n+\t\t unshift(@$rS,-$dy); # gap opening\n+\t\t}\n+\t\t$state = 1;\n+\t } else {\n+\t\t# previous state was B\n+\t\tif ($j==$Ly || $j==0) {\n+\t\t unshift(@$rS,-$main::g); # end gap\n+\t\t} else {\n+\t\t unshift(@$rS,-$main::e); # gap extension\n+\t\t}\n+\t }\n+\t}\n+ }\n+\n+ # Set annotation string representing match quality\n+ $$Sstr="";\n+ for (my $col=0; $col<@$ri; $col++) {\n+\tif ($xres[$ri->[$col]] eq $yres[$rj->[$col]]) {\n+\t $$Sstr.=uc($xchr[$ri->[$col]]);\n+\t } elsif ($rS->[$col] > 0 ) {\n+\t\t$$Sstr.="+";\n+\t } else {\n+\t $$Sstr.=".";\n+\t }\n+ }\n+ return $score;\n+}\n+\n+1;\n' |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/lib/hh/scripts/HHPaths.pm --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/external_tools/darwin/lib/hh/scripts/HHPaths.pm Wed Nov 01 05:54:28 2017 -0400 |
| [ |
| @@ -0,0 +1,86 @@ +# HHPaths.pm + +# HHsuite version 2.0.15 (June 2012) +# (C) J. Soeding, A. Hauser 2012 + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +# We are very grateful for bug reports! Please contact us at soeding@genzentrum.lmu.de +# HHsuite version 2.0 + +# PLEASE INSERT CORRECT PATHS AT POSITIONS INDICATED BY ... BELOW +# THE ENVIRONMENT VARIABLE HHLIB NEEDS TO BE SET TO YOUR LOCAL HH-SUITE DIRECTORY, +# AS DESCRIBED IN THE HH-SUITE USER GUIDE AND README FILE + +package HHPaths; + +# This block can stay unmodified +use vars qw(@ISA @EXPORT @EXPORT_OK %EXPORT_TAGS $VERSION); +use Exporter; +our $VERSION = "version 2.0.16 (January 2013)"; +our @ISA = qw(Exporter); +our @EXPORT = qw($VERSION $hhlib $hhdata $hhbin $hhscripts $execdir $datadir $ncbidir $dummydb $pdbdir $dsspdir $dssp $cs_lib $context_lib $v); + +############################################################################################## +# PLEASE COMPLETE THE PATHS ... TO PSIPRED AND OLD-STYLE BLAST (NOT BLAST+) (NEEDED FOR PSIPRED) +#our $execdir = ".../psipred/bin"; # path to PSIPRED V2 binaries +#our $datadir = ".../psipred/data"; # path to PSIPRED V2 data files +#our $ncbidir = ".../blast/bin"; # path to NCBI binaries (for PSIPRED in addss.pl) +our $execdir = "/cluster/toolkit/production/bioprogs/psipred/bin"; # path to PSIPRED V2 binaries +our $datadir = "/cluster/toolkit/production/bioprogs/psipred/data"; # path to PSIPRED V2 data files +our $ncbidir = "/cluster/toolkit/production/bioprogs/blast/bin"; # path to NCBI binaries (for PSIPRED in addss.pl) + +############################################################################################## +# PLEASE COMPLETE THE PATHS ... TO YOUR LOCAL PDB FILES, DSSP FILES ETC. +#our $pdbdir = ".../pdb/all"; # where are the pdb files? (pdb/divided directory will also work) +#our $dsspdir = ".../dssp/data"; # where are the dssp files? Used in addss.pl. +#our $dssp = ".../dssp/bin/dsspcmbi"; # where is the dssp binary? Used in addss.pl. +our $pdbdir = "/cluster/databases/pdb/all"; # where are the pdb files? (pdb/divided directory will also work) +our $dsspdir = "/cluster/databases/dssp/data"; # where are the dssp files? Used in addss.pl +our $dssp = "/cluster/databases/dssp/bin/dsspcmbi"; # where is the dssp binary? Used in addss.pl +############################################################################################## + +# The lines below probably do not need to be changed + +# Setting paths for hh-suite perl scripts +our $hhlib = $ENV{"HHLIB"}; # main hh-suite directory +our $hhdata = $hhlib."/data"; # path to data directory for hhblits, example files +our $hhbin = $hhlib."/bin"; # path to cstranslate (path to hhsearch, hhblits etc. should be in environment variable PATH) +our $hhscripts= $hhlib."/scripts"; # path to hh perl scripts (addss.pl, reformat.pl, hhblitsdb.pl etc.) +our $dummydb = $hhdata."/do_not_delete"; # Name of dummy blast db for PSIPRED (single sequence formatted with NCBI formatdb) + +# HHblits data files +our $cs_lib = "$hhdata/cs219.lib"; +our $context_lib = "$hhdata/context_data.lib"; + +# Add hh-suite scripts directory to search path +$ENV{"PATH"} = $hhscripts.":".$ENV{"PATH"}; # Add hh scripts directory to environment variable PATH + +################################################################################################ +### System command with return value parsed from output +################################################################################################ +sub System() +{ + if ($v>=2) {printf("\$ %s\n",$_[0]);} + system($_[0]); + if ($? == -1) { + die("\nError: failed to execute '$_[0]': $!\n\n"); + } elsif ($? != 0) { + printf("\nError: command '$_[0]' returned error code %d\n\n", $? >> 8); + return 1; + } + return $?; +} + +return 1; |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/lib/hh/scripts/addss.pl --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/external_tools/darwin/lib/hh/scripts/addss.pl Wed Nov 01 05:54:28 2017 -0400 |
| [ |
| b'@@ -0,0 +1,732 @@\n+#!/usr/bin/env perl\n+#\n+# addss.pl\n+# Add PSIPRED secondary structure prediction (and DSSP annotation) to an MSA or HMMER file.\n+# Output format is A3M (for input alignments) or HMMER (see User Guide).\n+\n+\n+# HHsuite version 2.0.16 (January 2013)\n+#\n+# Reference: \n+# Remmert M., Biegert A., Hauser A., and Soding J.\n+# HHblits: Lightning-fast iterative protein sequence searching by HMM-HMM alignment.\n+# Nat. Methods, epub Dec 25, doi: 10.1038/NMETH.1818 (2011).\n+\n+# (C) Johannes Soeding and Michael Remmert, 2012\n+\n+# This program is free software: you can redistribute it and/or modify\n+# it under the terms of the GNU General Public License as published by\n+# the Free Software Foundation, either version 3 of the License, or\n+# (at your option) any later version.\n+\n+# This program is distributed in the hope that it will be useful,\n+# but WITHOUT ANY WARRANTY; without even the implied warranty of\n+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n+# GNU General Public License for more details.\n+\n+# You should have received a copy of the GNU General Public License\n+# along with this program. If not, see <http://www.gnu.org/licenses/>.\n+\n+# We are very grateful for bug reports! Please contact us at soeding@genzentrum.lmu.de\n+\n+use lib $ENV{"HHLIB"}."/scripts";\n+use HHPaths; # config file with path variables for nr, blast, psipred, pdb, dssp etc.\n+use Align; # Needleman-Wunsch and Smith-Waterman alignment functions\n+use File::Temp qw/ tempfile tempdir /;\n+use strict;\n+\n+my $ss_cit="PSIPRED: Jones DT. (1999) Protein secondary structure prediction based on position-specific scoring matrices. JMB 292:195-202.";\n+\n+\n+# Module needed for aligning DSSP-sequence\n+\n+$|= 1; # Activate autoflushing on STDOUT\n+\n+# Default values:\n+our $v=2; # verbose mode\n+\n+my $numres=0; # number of residues per line for secondary structure\n+my $informat="a3m"; # input format\n+my $neff = 7; # use alignment with this diversity for PSIPRED prediction\n+my $program=$0; # name of perl script\n+my $pdbfile;\n+\n+my $help="\n+addss.pl from HHsuite $VERSION \n+Add PSIPRED secondary structure prediction (and DSSP annotation) to a multiple sequence alignment (MSA) \n+or HMMER (multi-)model file. \n+\n+If the input file is an MSA, the predicted secondary structure and confidence values are added as \n+special annotation sequences with names >ss_pred, >ss_conf, and >ss_dssp to the top of the output \n+A3M alignment. If no output file is given, the output file will have the same name as the input file, \n+except for the extension being replaced by \'.a3m\'. Allowed input formats are A3M (default), \n+A2M/FASTA (-fas, -a2m), CLUSTAL (-clu), STOCKHOLM (-sto), HMMER (-hmm).\n+\n+If the input file contains HMMER models, records SSPRD and SSCON containing predicted secondary \n+structure and confidence values are added to each model. In this case the output file name is \n+obligatory and must be different from the input file name.\n+\n+Usage: perl addss.pl <ali_file> [<outfile>] [-fas|-a3m|-clu|-sto] \n+ or perl addss.pl <hhm_file> <outfile> -hmm \n+\\n";\n+\n+# Variable declarations\n+my $line;\n+my @seqs; # sequences from infile (except >aa_ and >ss_pred sequences)\n+my $query_length;\n+my $header; # header of MSA: everything before first \'>\'\n+my $name; # query in fasta format: \'>$name [^\\n]*\\n$qseq\\n\'\n+my $qseq; # residues of query sequence\n+my $infile;\n+my $outfile;\n+my $ss_pred=""; # psipred ss states\n+my $ss_conf=""; # psipred confidence values\n+my $ss_dssp; # dssp states as string\n+my $sa_dssp; # relative solvent accessibility from dssp as string {A,B,C,D,E} A:absolutely buried, B:buried, E:exposed\n+my $aa_dssp; # residues from dssp file as string\n+my $aa_astr; # residues from infile as string\n+my $q_match; # number of match states in'..b'astr assign aligned dssp state\n+ @ss_dssp = split(//,$ss_dssp);\n+ @sa_dssp = split(//,$sa_dssp);\n+ @aa_dssp = split(//,$aa_dssp);\n+ @aa_astr = split(//,$aa_astr);\n+ my $len = 0;\n+ unshift(@aa_dssp,"-"); #add a gap symbol at beginning -> first residue is at 1!\n+ unshift(@ss_dssp,"-"); #add a gap symbol at beginning -> first residue is at 1!\n+ unshift(@sa_dssp,"-"); #add a gap symbol at beginning -> first residue is at 1!\n+ unshift(@aa_astr,"-"); #add a gap symbol at beginning -> first residue is at 1!\n+ for (my $col=0; $col<@i; $col++) {\n+\tif ($i[$col]>0) {\n+\t if ($j[$col]>0) {$len++;} # count match states (for score/len calculation)\n+\t $ss_dssp_ali[$i[$col]]=$ss_dssp[$j[$col]];\n+\t $sa_dssp_ali[$i[$col]]=$sa_dssp[$j[$col]];\n+\t $aa_dssp_ali[$i[$col]]=$aa_dssp[$j[$col]];\n+\t}\n+\tif ($v>=4) {\n+\t printf ("%s %3i %s %3i\\n",$aa_astr[$i[$col]],$i[$col],$aa_dssp[$j[$col]],$j[$col]);\n+\t}\n+ }\n+ shift (@ss_dssp_ali); # throw out first "-" \n+ shift (@sa_dssp_ali); # throw out first "-" \n+ shift (@aa_dssp_ali); # throw out first "-" \n+ $aa_dssp=join("",@aa_dssp_ali);\n+ $ss_dssp=join("",@ss_dssp_ali);\n+ $sa_dssp=join("",@sa_dssp_ali);\n+\n+ # Debugging output\n+ if ($v>=4) {printf(STDOUT "DSSP: %s: length=%-3i score/len:%-5.3f\\n",$name,$len,$score/$len);}\n+ if ($v>=4) {\n+\tprintf("IN: %s\\n",$xseq);\n+\tprintf("MATCH: %s\\n",$Sstr);\n+\tprintf("DSSP: %s\\n",$yseq);\n+\tprintf("\\n");\n+\tprintf(">ss_dssp $name\\n$ss_dssp\\n");\n+\tprintf(">sa_dssp $name\\n$sa_dssp\\n");\n+\tprintf(">aa_dssp $name\\n$aa_dssp\\n");\n+\tprintf(">aa_astra $name\\n$aa_astr\\n\\n");\n+ } \n+ if ($score/$len<0.5) {\n+\tprintf (STDOUT "\\nWARNING: in $name: alignment score with dssp residues too low: Score/len=%f.\\n\\n",$score/$len);\n+\tprintf("IN: %s\\n",$xseq);\n+\tprintf("MATCH: %s\\n",$Sstr);\n+\tprintf("DSSP: %s\\n",$yseq);\n+\treturn 1;\n+ }\n+\n+ return 0;\n+}\n+\n+################################################################################################\n+### Return solvent accessibility code\n+################################################################################################\n+sub sa2c ()\n+{\n+ my %maxsa = (A=>106, B=>160, C=>135, D=>163, E=>194, F=>197, G=>84, H=>184, I=>169, K=>205, L=>164, M=>188, \n+\t\t N=>157, P=>136, Q=>198, R=>248, S=>130, T=>142, V=>142, W=>227, X=>180, Y=>222, Z=>196); # maximum solvent accessiblity\n+ if ($_[1]=~/[a-z]/) {return "F";} # disulphide bridge\n+ if (!defined $maxsa{$_[1]}) {return "-";} # no amino acid\n+ my $rsa=$_[0]/$maxsa{$_[1]};\n+# printf("aa=%s sa=%5.1f max_sa=%5.1f rsa=%5.3f\\n",$_[1],$_[0],$maxsa{$_[1]},$rsa);\n+ if ($rsa<=0.02) {return "A";}\n+ elsif ($rsa<=0.14) {return "B";}\n+ elsif ($rsa<=0.33) {return "C";}\n+ elsif ($rsa<=0.55) {return "D";}\n+ else {return "E";}\n+}\n+\n+# Find the pdb file with $pdbcode in pdb directory \n+sub OpenPDBfile() {\n+ \n+ my $pdbcode=lc($_[0]);\n+ if (! -e "$pdbdir") {\n+\tif ($v>=3) {print(STDERR "Warning in $program: pdb directory \'$pdbdir\' does not exist!\\n");} \n+\treturn 1;\n+ }\n+ if (-e "$pdbdir/all") {$pdbfile="$pdbdir/all/";}\n+ elsif (-e "$pdbdir/divided") {$pdbfile="$pdbdir/divided/".substr($pdbcode,1,2)."/";}\n+ else {$pdbfile="$pdbdir/";}\n+ if ($pdbdir=~/divided.?$/) {$pdbfile.=substr($pdbcode,1,2)."/";}\n+ if (-e $pdbfile."pdb$pdbcode.ent") {$pdbfile.="pdb$pdbcode.ent";}\n+ elsif (-e $pdbfile."pdb$pdbcode.ent.gz") {$pdbfile="gunzip -c $pdbfile"."pdb$pdbcode.ent.gz |";}\n+ elsif (-e $pdbfile."pdb$pdbcode.ent.Z") {$pdbfile="gunzip -c $pdbfile"."pdb$pdbcode.ent.Z |";}\n+ elsif (-e $pdbfile."$pdbcode.pdb") {$pdbfile."$pdbcode.pdb";}\n+ else {\n+\tif ($v>=3) {printf(STDERR "Warning in $program: Cannot find pdb file $pdbfile"."pdb$pdbcode.ent!\\n");}\n+\treturn "";\n+ }\n+ if (!open (PDBFILE, "$pdbfile")) {\n+\tif ($v>=3) {printf(STDERR "Error in $program: Cannot open pdb file: $!\\n");}\n+\treturn "";\n+ }\n+ return $pdbfile;\n+}\n' |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/lib/hh/scripts/create_profile_from_hhm.pl --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/external_tools/darwin/lib/hh/scripts/create_profile_from_hhm.pl Wed Nov 01 05:54:28 2017 -0400 |
| [ |
| @@ -0,0 +1,167 @@ +#!/usr/bin/env perl +# +# create_profile_from_hhm.pl +# Create a profile (.prf) from a given HHM file + +# HHsuite version 2.0.16 (January 2013) +# +# Reference: +# Remmert M., Biegert A., Hauser A., and Soding J. +# HHblits: Lightning-fast iterative protein sequence searching by HMM-HMM alignment. +# Nat. Methods, epub Dec 25, doi: 10.1038/NMETH.1818 (2011). + +# (C) Michael Remmert and Johannes Soeding, 2012 + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +# We are very grateful for bug reports! Please contact us at soeding@genzentrum.lmu.de + +use lib $ENV{"HHLIB"}."/scripts"; +use HHPaths; # config file with path variables for nr, blast, psipred, pdb, dssp etc. +use strict; + +$|= 1; # Activate autoflushing on STDOUT + +# Default values: +our $v=2; # verbose mode + +my $help=" +create_profile_from_hhm.pl from HHsuite $VERSION +Create a profile (.prf) from a given HHM file + +Usage: perl create_profile_from_hhm.pl -i <infile> [-o <outfile>] + +Options: + -i <infile> Input file in HHM format + -o <outfile> Output file in prf-format (default: infile.prf) + + -v [0-5] verbose mode (default: $v) +\n"; + +# Variable declarations +my $line; +my $infile; +my $outfile; +my $i; +my $a; + +my @counts; # count profile +my @neffs; +my $name; # name of HHM profile +my $len; # length of HHM profile + + # A C D E F G H I K L M N P Q R S T V W Y +my @hhmaa2csaa = ( 0, 4, 3, 6, 13, 7, 8, 9, 11, 10, 12, 2, 14, 5, 1, 15, 16, 19, 17, 18); +my @aminoacids = ('A', 'R', 'N', 'D', 'C', 'Q', 'E', 'G', 'H', 'I', 'L', 'K', 'M', 'F', 'P', 'S', 'T', 'W', 'Y', 'V'); +my %aa2i; +for ($a = 0; $a < 20; $a++) { + $aa2i{$aminoacids[$a]} = $a; +} + +############################################################################################### +# Processing command line input +############################################################################################### + +if (@ARGV<1) {die ($help);} + +my $options=""; +for (my $i=0; $i<@ARGV; $i++) {$options.=" $ARGV[$i] ";} + +if ($options=~s/ -i\s+(\S+) //) {$infile=$1;} +if ($options=~s/ -o\s+(\S+) //) {$outfile=$1;} + +if ($options=~s/ -v\s+(\S+) //) {$v=$1;} + +if (!$infile) {print($help); print "ERROR! No input file!\n"; exit(1);} + +if (!$outfile) { + $infile =~ /^(\S+)\.\S+?$/; + $outfile = "$1.prf"; +} + +############################################################################################## +# Main part +############################################################################################## + +###################################### +# Read HHM profile +###################################### +open (IN, $infile); +while ($line = <IN>) { + if ($line =~ /^NAME\s+(\S+)/) { + $name = $1; + } elsif ($line =~ /^LENG\s+(\d+)/) { + $len = $1; + } elsif ($line =~ /^HMM/) { + last; + } +} + +$i = 0; +while ($line = <IN>) { + if ($line =~ /^\/\//) { last; } + + if ($line =~ s/^\S \d+ //) { + + for ($a = 0; $a < 20; $a++) { + $line =~ s/^\s*(\S+)\s/ /; + $counts[$i][$hhmaa2csaa[$a]] = $1; + if ($counts[$i][$hhmaa2csaa[$a]] !~ /\*/ && $counts[$i][$hhmaa2csaa[$a]] == 0) { + $counts[$i][$hhmaa2csaa[$a]] = 1; + } + } + + $line = <IN>; + $line =~ /^\s*\S+\s+\S+\s+\S+\s+\S+\s+\S+\s+\S+\s+\S+\s+(\S+)\s+/; + $neffs[$i] = $1; + + $i++; + } +} + +###################################### +# write count_profile +###################################### + +open (OUT, ">$outfile"); +# Write header +printf(OUT "CountProfile\n"); +printf(OUT "NAME\t%s\n", $name); +printf(OUT "LENG\t%i\n", $len); +printf(OUT "ALPH\t20\n"); # 20 amino acid alphabet +printf(OUT "COUNTS"); +for ($a = 0; $a < 20; $a++) { + printf(OUT "\t%s", $aminoacids[$a]); +} +printf(OUT "\tNEFF\n"); + +# Write profile +for ($i = 0; $i < $len; $i++) { + printf(OUT "%i", $i+1); + for ($a = 0; $a < 20; $a++) { + if ($counts[$i][$a] == '*') { + printf(OUT "\t*"); + } else { + printf(OUT "\t%i", $counts[$i][$a]); + } + } + printf(OUT "\t%i\n", $neffs[$i]); +} + +printf(OUT "//\n"); +close OUT; + +exit; + + |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/lib/hh/scripts/create_profile_from_hmmer.pl --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/external_tools/darwin/lib/hh/scripts/create_profile_from_hmmer.pl Wed Nov 01 05:54:28 2017 -0400 |
| [ |
| @@ -0,0 +1,248 @@ +#!/usr/bin/env perl +# +# create_profile_from_hmmer.pl +# Create a profile (.prf) from a given HMMER/HMMER3 file + +# HHsuite version 2.0.16 (January 2013) +# +# Reference: +# Remmert M., Biegert A., Hauser A., and Soding J. +# HHblits: Lightning-fast iterative protein sequence searching by HMM-HMM alignment. +# Nat. Methods, epub Dec 25, doi: 10.1038/NMETH.1818 (2011). + +# (C) Michael Remmert and Johannes Soeding, 2012 + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +# We are very grateful for bug reports! Please contact us at soeding@genzentrum.lmu.de + +use lib $ENV{"HHLIB"}."/scripts"; +use HHPaths; # config file with path variables for nr, blast, psipred, pdb, dssp etc. +use strict; + +$|= 1; # Activate autoflushing on STDOUT + +# Default values: +our $v=2; # verbose mode +my $factor = 1; # mix orig sequence and HMMER profile with this factor (1 = 50/50, 2 = 33/66, 0.5 = 66/33 (orig/HMMER)) +my $scale = 1000; +my $log2 = log(2); + +my $help=" +create_profile_from_hmmer.pl from HHsuite $VERSION +Create a profile (.prf) from a given HMMER/HMMER3 file + +Usage: perl create_profile_from_hmmer.pl -i <infile> [-o <outfile>] + +Options: + -i <infile> Input file in HMMER/HMMER3 format + -o <outfile> Output file in prf-format (default: infile.prf) + + -v [0-5] verbose mode (default: $v) +\n"; + +# Variable declarations +my $line; +my $infile; +my $outfile; +my $i; +my $a; + +my @counts; # count profile (normalised to 1) +my $name; # name of HMMER profile +my $len; # length of HMMER profile +my @hmmer_prof; # HMMER profile + + # A C D E F G H I K L M N P Q R S T V W Y +my @hmmeraa2csaa = ( 0, 4, 3, 6, 13, 7, 8, 9, 11, 10, 12, 2, 14, 5, 1, 15, 16, 19, 17, 18); +my @aminoacids = ('A', 'R', 'N', 'D', 'C', 'Q', 'E', 'G', 'H', 'I', 'L', 'K', 'M', 'F', 'P', 'S', 'T', 'W', 'Y', 'V'); +my %aa2i; +for ($a = 0; $a < 20; $a++) { + $aa2i{$aminoacids[$a]} = $a; +} + +############################################################################################### +# Processing command line input +############################################################################################### + +if (@ARGV<1) {die ($help);} + +my $options=""; +for (my $i=0; $i<@ARGV; $i++) {$options.=" $ARGV[$i] ";} + +if ($options=~s/ -i\s+(\S+) //) {$infile=$1;} +if ($options=~s/ -o\s+(\S+) //) {$outfile=$1;} + +if ($options=~s/ -factor\s+(\S+) //) {$factor=$1;} + +if ($options=~s/ -v\s+(\S+) //) {$v=$1;} + +if (!$infile) {print($help); print "ERROR! No input file!\n"; exit(1);} + +if (!$outfile) { + $infile =~ /^(\S+)\.\S+?$/; + $outfile = "$1.prf"; +} + +############################################################################################## +# Main part +############################################################################################## + +###################################### +# Read HMMER sequence and profile +###################################### +open (IN, $infile); +$line = <IN>; + +if ($line =~ /^HMMER3/) { + while ($line = <IN>) { + if ($line =~ /^NAME\s+(\S+)/) { + $name = $1; + } elsif ($line =~ /^LENG\s+(\d+)/) { + $len = $1; + } elsif ($line =~ /^HMM/) { + last; + } + } + $line = <IN>; $line = <IN>; # Skip header lines + if ($line =~ /^\s*COMPO/) { + $line = <IN>; $line = <IN>; # Skip null model lines + } + # Read profiles and query seq + $i = 0; + while ($line = <IN>) { + if ($line =~ /^\/\//) { last; } + + $line =~ s/^\s*\d+//; # sequence position + for ($a = 0; $a < 20; $a++) { + $line =~ s/^\s*(\S+)\s/ /; + $hmmer_prof[$i][$hmmeraa2csaa[$a]] = exp(-1.0*$1); + } + + # Read query char in count profile + for ($a = 0; $a < 20; $a++) { + $counts[$i][$a] = 0; + } + $line =~ /^\s*\d+\s+(\S)/; + $counts[$i][$aa2i{$1}] = 1; + + $line = <IN>; $line = <IN>; + $i++; + + } +} elsif ($line =~ /^HMMER/) { + my @pb; + while ($line = <IN>) { + if ($line =~ /^NAME\s+(\S+)/) { + $name = $1; + } elsif ($line =~ /^LENG\s+(\d+)/) { + $len = $1; + } elsif ($line =~ /^NULE/) { + $line =~ s/^NULE//; # sequence position + for ($a = 0; $a < 20; $a++) { + $line =~ s/^\s*(\S+)\s/ /; + # pb[a] = (float) 0.05 * fpow2(float(ptr)/HMMSCALE); + $pb[$a] = 0.05 * (2**($1/1000)); + } + } elsif ($line =~ /^HMM/) { + last; + } + } + + + $line = <IN>; $line = <IN>; # Skip header lines + # Read profiles and query seq + $i = 0; + while ($line = <IN>) { + if ($line =~ /^\/\//) { last; } + + $line =~ s/^\s*\d+//; # sequence position + for ($a = 0; $a < 20; $a++) { + $line =~ s/^\s*(\S+)\s/ /; + # prob = pb[a]*fpow2(float(ptr)/HMMSCALE); + $hmmer_prof[$i][$hmmeraa2csaa[$a]] = $pb[$a] * (2**($1/1000)); + } + + # Read query char in count profile + $line = <IN>; + for ($a = 0; $a < 20; $a++) { + $counts[$i][$a] = 0; + } + $line =~ /^\s*(\S)/; + $counts[$i][$aa2i{$1}] = 1; + + $line = <IN>; + $i++; + } + +} else { + print($help); + print "ERROR! Unknown input format!\n"; + exit(1); +} +###################################### +# build count_profile (mix orig sequence and HMMER-profile) +###################################### +for ($i = 0; $i < $len; $i++) { + my $sum = 0; + for ($a = 0; $a < 20; $a++) { + $counts[$i][$a] += $factor * $hmmer_prof[$i][$a]; + $sum += $counts[$i][$a]; + } + # Normalize to one + my $fac = 1 / $sum; + for ($a = 0; $a < 20; $a++) { + $counts[$i][$a] *= $fac; + } +} + +###################################### +# write count_profile +###################################### + +open (OUT, ">$outfile"); +# Write header +printf(OUT "CountProfile\n"); +printf(OUT "NAME\t%s\n", $name); +printf(OUT "LENG\t%i\n", $len); +printf(OUT "ALPH\t20\n"); # 20 amino acid alphabet +printf(OUT "COUNTS"); +for ($a = 0; $a < 20; $a++) { + printf(OUT "\t%s", $aminoacids[$a]); +} +printf(OUT "\tNEFF\n"); + +# Write profile +for ($i = 0; $i < $len; $i++) { + printf(OUT "%i", $i+1); + for ($a = 0; $a < 20; $a++) { + if ($counts[$i][$a] == 0) { + printf(OUT "\t*"); + } else { + printf(OUT "\t%i", int(-(log2($counts[$i][$a]) * $scale)+0.5)); + } + } + printf(OUT "\t%i\n", 1 * $scale); # set Neff to 1 +} + +printf(OUT "//\n"); +close OUT; + +exit; + +sub log2() +{ + my $n = shift; + return (log($n)/$log2); +} |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/lib/hh/scripts/hhblitsdb.pl --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/external_tools/darwin/lib/hh/scripts/hhblitsdb.pl Wed Nov 01 05:54:28 2017 -0400 |
| [ |
| b'@@ -0,0 +1,531 @@\n+#!/usr/bin/env perl\n+#\n+# hhblits.pl\n+# Creates HH-suite database files from A3M and HHM/HMMER-formatted files \n+# Usage: Usage: perl hhblitsdb.pl -o <db_name> [-ia3m <a3m_dir>] [-ihhm <hhm_dir>] [-ics <cs_dir>] [more_options]\n+#\n+# HHsuite version 2.0.16 (Sept 2012)\n+#\n+# Reference: \n+# Remmert M., Biegert A., Hauser A., and Soding J.\n+# HHblits: Lightning-fast iterative protein sequence searching by HMM-HMM alignment.\n+# Nat. Methods, epub Dec 25, doi: 10.1038/NMETH.1818 (2011).\n+\n+# (C) Johannes Soeding, 2012\n+\n+# This program is free software: you can redistribute it and/or modify\n+# it under the terms of the GNU General Public License as published by\n+# the Free Software Foundation, either version 3 of the License, or\n+# (at your option) any later version.\n+\n+# This program is distributed in the hope that it will be useful,\n+# but WITHOUT ANY WARRANTY; without even the implied warranty of\n+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n+# GNU General Public License for more details.\n+\n+# You should have received a copy of the GNU General Public License\n+# along with this program. If not, see <http://www.gnu.org/licenses/>.\n+\n+# We are very grateful for bug reports! Please contact us at soeding@genzentrum.lmu.de\n+\n+use lib $ENV{"HHLIB"}."/scripts";\n+use HHPaths; # config file with path variables for nr, blast, psipred, pdb, dssp etc.\n+use strict;\n+#use File::Glob \'bsd_glob\'; # splits patterns delimited by spaces into multiple patterns and applies them using OR\n+\n+$|= 1; # Activate autoflushing on STDOUT\n+\n+# Default values:\n+our $v=2; # verbose mode\n+my $a_if_append = ""; # do not append by default (default: create new db)\n+my $remove = 0; # do not remove by default (default: create new db)\n+my $hhmext = "hhm"; # default HHM-file extension\n+my $csext = "seq219"; # default HHM-file extension\n+my $cpu = 8;\n+\n+# Variable declarations\n+my $line;\n+my $command;\n+my $a3mdir = ""; # name of input A3M directory\n+my $hhmdir = ""; # name of input HHM/HMM directory\n+my $csdir = ""; # name of input cs directory\n+my $a3mfile = ""; # name of packed ouput A3M file \n+my $hhmfile = ""; # name of packed ouput HHM file\n+my $csfile = ""; # name of cs sequence db file\n+my $dbname = ""; # output db name\n+my $logfile = "/dev/null"; # log file \n+my $file;\n+my $numcsfiles= 0;\n+my $num_chars = 0;\n+my $numa3mfiles=0;\n+my $numhhmfiles=0;\n+my $fileglob="";\n+my $help="\n+hhblitsdb.pl from HHsuite $VERSION \n+Builds HH-suite database from a3m formatted MSAs and/or from HMMs (-o).\n+MSAs and HMMs can also be added (-a) to or removed (-r) from an existing database. \n+\n+Usage: hhblitsdb.pl -o|-a|-r <db_name> [-ia3m <a3m_dir>] [-ihhm <hhm_dir>] [-ics <cs_dir>]... \n+\n+With option -o, the following HH-suite database files can be generated:\n+ <db_name>.cs219 column-state sequences, one for each MSA/HMM (for prefilter)\n+ <db_name>.cs219.sizes number of sequences and characters in <db_name>.cs219\n+ <db_name>_a3m_db packed file containing A3M alignments read from <a3m_dir>\n+ <db_name>_a3m_db.index index file for packed A3M file\n+ <db_name>_a3m.db.index.sizes number of lines in <db_name>_a3m_db.index\n+ <db_name>_hhm_db packed file containing HHM-formatted HMMs read from <hhm_dir>\n+ <db_name>_hhm_db.index index file for packed HHM file\n+ <db_name>_hhm_db.index.sizes number of lines in <db_name>_hhm_db.index\n+\n+Options:\n+ -o <db_name> create database with this name\n+ -a <db_name> append files to database with this name\n+ -r <db_name> remove files from database with this name\n+ -ia3m <a3m_dir> input directory (or glob of directories) with A3M-formatted files\n+ These files MUST have extension \'a3m\'.\n+ -ihhm <hhm_dir> input directory (or glob of directories) with HHM (or HMMER) files \n+ These files MUST have extension'..b'csext!?\\n");\n+\tforeach my $line (@lines) {\n+\t if ($line =~ /^>/) {\n+\t\t$line = ">".$seq219file."\\n";\n+\t\t$numcsfiles++;\n+\t } else {\n+\t\t$num_chars += length($line);\n+\t }\n+\t printf(OUT "%s",$line); \t\n+\t}\n+ } \n+ close(OUT);\t\n+ \n+ open (OUT, ">$csfile.sizes");\n+ print OUT "$numcsfiles $num_chars\\n";\n+ close OUT;\n+ \n+ \n+##############################################################################################\n+# Generate hhm files with hhmake from a3m files if no -ihhm directory given\n+##############################################################################################\n+ \n+ if (!$hhmdir) \n+ {\n+\tif ($a3mdir) {\n+\t print("\\nGenerating hhm files in $tmpdir/ from a3m files $a3mdir/\\n\\n");\n+\t $command = "hhmake -i \\$file -o $tmpdir/\\$base.hhm 1>/dev/null 2>>$logfile";\n+\t &HHPaths::System("$hhscripts/multithread.pl \'".$a3mdir."\' \'$command\' -cpu $cpu");\t\n+\t $hhmdir = $tmpdir."/*.$hhmext";;\n+\t $numhhmfiles += scalar(glob("$hhmdir"));\n+\t}\n+ }\n+ \n+ \n+##############################################################################################\n+# Generate packed A3M and HMM files and index files\n+##############################################################################################\n+ \n+ # Generate packed A3M file and index file?\n+ if ($a3mdir ne "") {\n+\tprint "Creating packed A3M database file $a3mfile ...\\n";\n+\t\n+\topen (OUT, ">$tmpdir/a3m.filelist");\n+\tmy @files = glob("$a3mdir");\n+\t$numa3mfiles += scalar(@files);\n+\tforeach $file (@files) {\n+\t print OUT "$file\\n";\n+\t}\n+\tclose OUT;\n+\t\n+\t# Build packed file (concatenated with \'\\0\' as delimiters) and index file from files in file list\n+\t# The ffindex binaries are contained in <install_dir>/lib/ffindex/bin/\n+\t$command = "ffindex_build -".$a_if_append."s -f $tmpdir/a3m.filelist $a3mfile $a3mfile.index";\n+\t&HHPaths::System($command);\n+\t\n+\topen (OUT, ">$a3mfile.index.sizes");\n+\tprint OUT "$numa3mfiles\\n";\n+\tclose OUT;\n+ } \n+ \n+ # Generate packed HHMM file and index file?\n+ if ($hhmdir ne "") {\n+\tprint "Creating packed HHM database file $hhmfile ...\\n";\n+\t\n+\topen (OUT, ">$tmpdir/hhm.filelist");\n+\tmy @files = glob("$hhmdir");\n+\t$numhhmfiles += scalar(@files);\n+\tforeach $file (@files) {\n+\t print OUT "$file\\n";\n+\t}\n+\tclose OUT;\n+\t\n+\t# Build packed file (concatenated with \'\\0\' as delimiters) and index file from files in file list\n+\t# The ffindex binaries are contained in <install_dir>/lib/ffindex/bin/\n+\t$command = "ffindex_build -".$a_if_append."s -f $tmpdir/hhm.filelist $hhmfile $hhmfile.index";\n+\t&HHPaths::System($command);\n+\t\n+\topen (OUT, ">$hhmfile.index.sizes");\n+\tprint OUT "$numhhmfiles\\n";\n+\tclose OUT;\n+ }\n+} # end if $remove==0\n+\n+print("\\n");\n+printf("New number of a3m files in db: %i\\n",$numa3mfiles);\n+printf("New number of $hhmext files in db: %i\\n",$numhhmfiles);\n+printf("New number of $csext files in db: %i\\n\\n",$numcsfiles);\n+\n+my $err=0;\n+if ($numa3mfiles && $numhhmfiles && $numa3mfiles != $numhhmfiles) {\n+ print("**************************************************************************\n+WARNING: Number of a3m files not equal to number of $hhmext files\\n"); $err=1;\n+}\n+if ($numcsfiles && $numhhmfiles && $numcsfiles != $numhhmfiles) {\n+ print("**************************************************************************\n+WARNING: Number of $csext files not equal to number of $hhmext files\\n"); $err=1;\n+}\n+if ($numcsfiles && $numa3mfiles && $numcsfiles != $numa3mfiles) {\n+ print("**************************************************************************\n+WARNING: Number of $csext files not equal to number of a3m files\\n"); $err=1;\n+}\n+\n+if ($err==1) {print("**************************************************************************\n+$tmpdir will not be removed to check for missing files\n+**************************************************************************\\n");}\n+elsif ($v<3) {\n+ $command = "rm -rf $tmpdir";\n+# &System($command);\n+}\n+wait;\n+exit;\n+\n' |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/lib/hh/scripts/hhmakemodel.pl --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/external_tools/darwin/lib/hh/scripts/hhmakemodel.pl Wed Nov 01 05:54:28 2017 -0400 |
| [ |
| b'@@ -0,0 +1,1278 @@\n+#! /usr/bin/env perl\n+#\n+# hhmakemodel.pl \n+# Generate a model from an output alignment of hhsearch. \n+# Usage: hhmakemodel.pl -i file.out (-ts file.pdb|-al file.al) [-m int|-m name|-m auto] [-pdb pdbdir] \n+\n+# (C) Johannes Soeding 2012\n+\n+# HHsuite version 2.0.16 (January 2013)\n+#\n+# Reference: \n+# Remmert M., Biegert A., Hauser A., and Soding J.\n+# HHblits: Lightning-fast iterative protein sequence searching by HMM-HMM alignment.\n+# Nat. Methods, epub Dec 25, doi: 10.1038/NMETH.1818 (2011).\n+\n+# This program is free software: you can redistribute it and/or modify\n+# it under the terms of the GNU General Public License as published by\n+# the Free Software Foundation, either version 3 of the License, or\n+# (at your option) any later version.\n+\n+# This program is distributed in the hope that it will be useful,\n+# but WITHOUT ANY WARRANTY; without even the implied warranty of\n+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n+# GNU General Public License for more details.\n+\n+# You should have received a copy of the GNU General Public License\n+# along with this program. If not, see <http://www.gnu.org/licenses/>.\n+\n+# We are very grateful for bug reports! Please contact us at soeding@genzentrum.lmu.de\n+\n+use lib $ENV{"HHLIB"}."/scripts";\n+use HHPaths; # config file with path variables for nr, blast, psipred, pdb, dssp etc.\n+use strict;\n+use Align;\n+\n+\n+$|=1; # force flush after each print\n+\n+# Default parameters\n+our $d=7; # gap opening penalty for Align.pm; more than 2 mismatches - 2 matches ## previously: 1\n+our $e=0.01; # gap extension penatlty for Align.pm; allow to leave large gaps bridging uncrystallized regions ## previously: 0.1\n+our $g=0.1; # endgap penalty for Align.pm; allow to shift SEQRES residues for uncrystallized aas to ends of alignment ## previously: 0.9\n+my $v=2; # 3: DEBUG\n+\n+my $formatting="CASP"; # CASP or LIVEBENCH\n+my $servername="My server"; # \n+my $MINRES=30; # minumum number of new query residues required for a hit to be used as additional parent\n+my $infile="";\n+my $outfile="";\n+my $outformat="fas";\n+my $pickhits="1 "; # default: build one model from best hit \n+my $Pthr=0;\n+my $Ethr=0;\n+my $Prob=0;\n+my $shift=0; # ATTENTION: set to 0 as default! \n+my $NLEN=14; # length of the name field in alignments of hhsearch-output \n+my $NUMRES=100; # number of residues per line in FASTA, A2M, PIR format\n+my $program=$0; # name of perl script\n+my $usage="\n+hhmakemodel.pl from HHsuite $VERSION \n+From the top hits in an hhsearch output file (hhr), you can \n+ * generate a MSA (multiple sequence alignment) containing all representative \n+ template sequences from all selected alignments (options -fas, -a2m, -a3m, -pir) \n+ * generate several concatenated pairwise alignments in AL format (option -al)\n+ * generate several concatenated coarse 3D models in PDB format (option -ts) \n+In PIR, PDB and AL format, the pdb files are required in order to read the pdb residue numbers \n+and ATOM records.\n+The PIR formatted file can be used directly as input to the MODELLER homology modelling package.\n+Usage: $program [-i] file.hhr [options]\n+\n+ Options:\n+ -i <file.hhr> results file from hhsearch with hit list and alignments\n+ -fas <file.fas> write a FASTA-formatted multiple alignment to file.fas\n+ -a2m <file.a2m> write an A2M-formatted multiple alignment to file.a2m\n+ -a3m <file.a3m> write an A3M-formatted multiple alignment to file.a3m\n+ -m <int> [<int> ...] pick hits with specified indices (default=\'-m 1\')\n+ -p <probability> minimum probability threshold (default=$Pthr) \n+ -e <E-value> maximum E-value threshold (default=$Ethr) \n+ -q <query_ali> use the full-length query sequence in the alignment \n+ (not only the aligned part);\n+ the query alignment file must b'..b'##\n+# Convert three-letter amino acid code into one-letter code\n+##################################################################################\n+sub Three2OneLetter {\n+ my $res=uc($_[0]);\n+ if ($res eq "GLY") {return "G";}\n+ elsif ($res eq "ALA") {return "A";}\n+ elsif ($res eq "VAL") {return "V";}\n+ elsif ($res eq "LEU") {return "L";}\n+ elsif ($res eq "ILE") {return "I";}\n+ elsif ($res eq "MET") {return "M";}\n+ elsif ($res eq "PHE") {return "F";}\n+ elsif ($res eq "TYR") {return "Y";}\n+ elsif ($res eq "TRP") {return "W";}\n+ elsif ($res eq "ASN") {return "N";}\n+ elsif ($res eq "ASP") {return "D";}\n+ elsif ($res eq "GLN") {return "Q";}\n+ elsif ($res eq "GLU") {return "E";}\n+ elsif ($res eq "CYS") {return "C";}\n+ elsif ($res eq "PRO") {return "P";}\n+ elsif ($res eq "SER") {return "S";}\n+ elsif ($res eq "THR") {return "T";}\n+ elsif ($res eq "LYS") {return "K";}\n+ elsif ($res eq "HIS") {return "H";}\n+ elsif ($res eq "ARG") {return "R";}\n+\n+ # The HETATM selenomethionine is read by MODELLER like a normal MET in both its HETATM_IO=off and on mode!\n+ elsif ($res eq "MSE") {return "M";} # SELENOMETHIONINE \n+ elsif ($res eq "ASX") {return "B";}\n+ elsif ($res eq "GLX") {return "Z";}\n+ else {return "X";}\n+\n+ # The following post-translationally modified residues are ignored by MODELLER in its default SET HETATM_IO=off mode\n+# elsif ($res eq "SEC") {return "C";} # SELENOCYSTEINE\n+# elsif ($res eq "SEP") {return "S";} # PHOSPHOSERINE \n+# elsif ($res eq "TPO") {return "T";} # PHOSPHOTHREONINE \n+# elsif ($res eq "TYS") {return "Y";} # SULFONATED TYROSINE \n+# elsif ($res eq "KCX") {return "K";} # LYSINE NZ-CARBOXYLIC ACID\n+}\n+\n+##################################################################################\n+# Convert one-letter amino acid code into three-letter code\n+##################################################################################\n+sub One2ThreeLetter {\n+ my $res=uc($_[0]);\n+ if ($res eq "G") {return "GLY";}\n+ elsif ($res eq "A") {return "ALA";}\n+ elsif ($res eq "V") {return "VAL";}\n+ elsif ($res eq "L") {return "LEU";}\n+ elsif ($res eq "I") {return "ILE";}\n+ elsif ($res eq "M") {return "MET";}\n+ elsif ($res eq "F") {return "PHE";}\n+ elsif ($res eq "Y") {return "TYR";}\n+ elsif ($res eq "W") {return "TRP";}\n+ elsif ($res eq "N") {return "ASN";}\n+ elsif ($res eq "D") {return "ASP";}\n+ elsif ($res eq "Q") {return "GLN";}\n+ elsif ($res eq "E") {return "GLU";}\n+ elsif ($res eq "C") {return "CYS";}\n+ elsif ($res eq "P") {return "PRO";}\n+ elsif ($res eq "S") {return "SER";}\n+ elsif ($res eq "T") {return "THR";}\n+ elsif ($res eq "K") {return "LYS";}\n+ elsif ($res eq "H") {return "HIS";}\n+ elsif ($res eq "R") {return "ARG";}\n+ elsif ($res eq "U") {return "SEC";}\n+ elsif ($res eq "B") {return "ASX";}\n+ elsif ($res eq "Z") {return "GLX";}\n+ else {return "UNK";}\n+}\n+\n+# Find the pdb file with $pdbcode in pdb directory \n+sub FindPDBfile() {\n+ \n+ my $pdbcode=lc($_[0]);\n+ foreach $pdbdir (@pdbdirs) {\n+\tif (! -e "$pdbdir") {warn("Warning in $program: pdb directory \'$pdbdir\' does not exist!\\n"); next;}\n+\tif (-e "$pdbdir/all") {$pdbfile="$pdbdir/all/";}\n+\telsif (-e "$pdbdir/divided") {$pdbfile="$pdbdir/divided/".substr($pdbcode,1,2)."/";}\n+\telse {$pdbfile="$pdbdir/";}\n+\tif ($pdbdir=~/divided.?$/) {$pdbfile.=substr($pdbcode,1,2)."/";}\n+\tif (-e $pdbfile."pdb$pdbcode.ent") {$pdbfile.="pdb$pdbcode.ent";}\n+\telsif (-e $pdbfile."pdb$pdbcode.ent.gz") {$pdbfile="gunzip -c $pdbfile"."pdb$pdbcode.ent.gz |";}\n+\telsif (-e $pdbfile."pdb$pdbcode.ent.Z") {$pdbfile="gunzip -c $pdbfile"."pdb$pdbcode.ent.Z |";}\n+\telsif (-e $pdbfile."$pdbcode.pdb") {$pdbfile.="$pdbcode.pdb";}\n+\telse {next;}\n+\treturn $pdbfile;\n+ }\n+ printf(STDERR "Warning in $program: Cannot find pdb file $pdbfile"."pdb$pdbcode.ent!\\n"); \n+ return "";\n+}\n' |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/lib/hh/scripts/multithread.pl --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/external_tools/darwin/lib/hh/scripts/multithread.pl Wed Nov 01 05:54:28 2017 -0400 |
| [ |
| @@ -0,0 +1,179 @@ +#!/usr/bin/env perl +# +# multithread.pl: +# Run a command with different file names as arguments on multiple threads in parallel +# Usage: multithread.pl <fileglob> '<command>' [-cpu <int>] +# +# +# HHsuite version 2.0.16 (January 2013) +# +# Reference: +# Remmert M., Biegert A., Hauser A., and Soding J. +# HHblits: Lightning-fast iterative protein sequence searching by HMM-HMM alignment. +# Nat. Methods, epub Dec 25, doi: 10.1038/NMETH.1818 (2011). + +# (C) Johannes Soeding, 2012 + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +# We are very grateful for bug reports! Please contact us at soeding@genzentrum.lmu.de + +use lib $ENV{"HHLIB"}."/scripts"; +use HHPaths; # config file with path variables for nr, blast, psipred, pdb, dssp etc. +use strict; +use POSIX; + +# Variables +my $cpu=8; # number of cpus to use +my $parent_pid=$$; # main process id +my $pid; # process id of child +my %pid=(); # hash has all running PIDs as keys and the file name as data +my $children=0; # number of child processes running +my $options=""; +my $file; +my $ifile=0; +my $v=1; +my $numerr=0; + +if (scalar(@ARGV)<2) { + die(" +multithread.pl from HHsuite $VERSION +Run a command for many files in parallel using multiple threads +Usage: multithread.pl '<fileglob>' '<command>' [-cpu <int>] [-v {0,1,2}] + +<command> can include symbol + \$file for the full filename, e.g. /tmp/hh/1c1g_A.a3m, + \$name for the filename without extension, e.g. /tmp/hh/1c1g_A, and + \$base for the filename without extension and path, e.g. 1c1g_A. + + -cpu <int> number of threads to launch (default = $cpu) + -v {0,1,2} verbose mode (default = $v) + +Example: multithread.pl '*.a3m' 'hhmake -i \$file 1>\$name.log 2>>error.log' -cpu 16 +\n"); +} + +$|=1; # autoflush on + + +my @files=glob($ARGV[0]); +my $command=$ARGV[1]; +$SIG{'CHLD'}='IGNORE'; +$SIG{'USR1'}=\&ChildFinished; +$SIG{'INT'} =\&KillAllProcesses; + +if (@ARGV>2) { + $options.=join(" ",@ARGV[2..$#ARGV]); +} +# Set number of cpus to use +if ($options=~s/-cpu\s*(\d+)\s*//g) {$cpu=$1;} +if ($options=~s/-v\s*(\d+)\s*//g) {$v=$1;} + +# Warn if unknown options found +if ($options!~/^\s*$/) {$options=~s/^\s*(.*?)\s*$/$1/g; print("WARNING: unknown options '$options'\n");} + +if ($v>=1) {print (scalar(@files)." files read in ...\n");} + +foreach $file (@files) { + $ifile++; + + # All cpus occupied? -> wait for a cpu to become free + if ($children>=$cpu) { + if ($v>=2) {print("\nParent $$ is sleeping (children=$children) ");} + my $count=0; + while ($children>=$cpu) { + if ($count++>=10) { + $count=0; + if ($v>=2) {print("\nProcesses running:");} + $children=0; + foreach $pid (keys(%pid)) { + if (! kill(0,$pid)) { # kill($pid,0) returns false if process is dead (finished) + if ($v>=2) {printf("\nPID %5.5s: %s is removed from process table",$pid,$pid{$pid});} + delete($pid{$pid}); # remove process from hash of PIDs + } else { + if ($v>=2) {printf("\nPID %5.5s: %s",$pid,$pid{$pid});} + $children++; # In case a USR1 signal was caught twice (??) + } + } + if ($v>=2) {print("\n");} + } else { + if ($v==1) {print(".");} + select(undef, undef, undef, 0.1); # sleep 0.1 seconds + } + } + } + + if ($pid=fork()) { + # Main process + $children++; + $pid{$pid}="$file ($ifile)"; + + # Print out running processes and remove defunct ones + select(undef, undef, undef, 0.1); # sleep 0.1 seconds + + } elsif (defined $pid) { + # Child process + my $name; # filename without extension + my $base; # basename without path + if ($file =~/(.*)\..*?$/) {$name=$1;} else {$name=$file;} + if ($name =~/.*\/(.*?)$/) {$base=$1;} else {$base=$name;} + my $lcommand = $command; # need local variable for thread + $lcommand=~s/\$file/$file/g; + $lcommand=~s/\$name/$name/g; + $lcommand=~s/\$base/$base/g; + &System("$lcommand"); + if ($v>=2) {printf("\nProcess $$ for file %s (%i) finished.",$file,$ifile);} + kill(USR1 => $parent_pid); + $SIG{'CHLD'}='IGNORE'; + exit; + } else { + die("\nError: fork returned undefined PID: $!\n"); + } +} + +# Wait for all children to finish +while (wait() != -1) {} + +if ($v>=1) {print ("\nAll processes should be finished now\n");} +if ($numerr>0) {print(STDERR "WARNING: $numerr commands returned with error code.\n");} +exit(0); + + +sub ChildFinished() { + $children--; + $SIG{'USR1'}=\&ChildFinished; + if ($v>=2) {printf("\nChildren counter reduced to children=$children",$file,$ifile);} + return; +} + +sub KillAllProcesses() +{ + foreach $pid (keys(%pid)) { + if ($v>=2) {printf("\nKill process $pid: returned %i\n",kill(-9,$pid));} + } + die ("\nInterrupt: Killed main process $$\n"); +} + +################################################################################################ +### System command +################################################################################################ +sub System { + if ($v>=2) {print("\n");} + if ($v>=1) {print("\n".$_[0]," ");} + if (system($_[0])) { +# Why is always -1 returned??? +# print(STDERR "\nERROR: command '$command' returned error code $?\n"); +# $numerr++; + }; +} |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/lib/hh/scripts/reformat.pl --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/external_tools/darwin/lib/hh/scripts/reformat.pl Wed Nov 01 05:54:28 2017 -0400 |
| [ |
| b'@@ -0,0 +1,825 @@\n+#! /usr/bin/env perl\n+\n+# reformat.pl \n+# Reformat a multiple alignment file\n+#\n+# HHsuite version 2.0.16 (January 2013)\n+#\n+# Reference: \n+# Remmert M., Biegert A., Hauser A., and Soding J.\n+# HHblits: Lightning-fast iterative protein sequence searching by HMM-HMM alignment.\n+# Nat. Methods, epub Dec 25, doi: 10.1038/NMETH.1818 (2011).\n+\n+# (C) Johannes Soeding, 2012\n+\n+# This program is free software: you can redistribute it and/or modify\n+# it under the terms of the GNU General Public License as published by\n+# the Free Software Foundation, either version 3 of the License, or\n+# (at your option) any later version.\n+\n+# This program is distributed in the hope that it will be useful,\n+# but WITHOUT ANY WARRANTY; without even the implied warranty of\n+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n+# GNU General Public License for more details.\n+\n+# You should have received a copy of the GNU General Public License\n+# along with this program. If not, see <http://www.gnu.org/licenses/>.\n+\n+# We are very grateful for bug reports! Please contact us at soeding@genzentrum.lmu.de\n+\n+use lib $ENV{"HHLIB"}."/scripts";\n+use HHPaths; # config file with path variables for nr, blast, psipred, pdb, dssp etc.\n+use strict;\n+use warnings;\n+my $numres=100; # number of residues per line\n+my $desclen=1000; # maximum number of characters in nameline\n+my $ARGC=scalar(@ARGV);\n+if ($ARGC<2) {\n+ die("\n+reformat.pl from HHsuite $VERSION \n+Read a multiple alignment in one format and write it in another format\n+Usage: reformat.pl [informat] [outformat] infile outfile [options] \n+ or reformat.pl [informat] [outformat] \'fileglob\' .ext [options] \n+\n+Available input formats:\n+ fas: aligned fasta; lower and upper case equivalent, \'.\' and \'-\' equivalent\n+ a2m: aligned fasta; inserts: lower case, matches: upper case, deletes: \'-\',\n+ gaps aligned to inserts: \'.\'\n+ a3m: like a2m, but gaps aligned to inserts MAY be omitted\n+ sto: Stockholm format; sequences in several blocks with sequence name at \n+ beginning of line (hmmer output)\n+ psi: format as read by PSI-BLAST using the -B option (like sto with -M first -r)\n+ clu: Clustal format; sequences in several blocks with sequence name at beginning \n+ of line\n+Available output formats:\n+ fas: aligned fasta; all gaps \'-\'\n+ a2m: aligned fasta; inserts: lower case, matches: upper case, deletes: \'-\', gaps \n+ aligned to inserts: \'.\'\n+ a3m: like a2m, but gaps aligned to inserts are omitted\n+ sto: Stockholm format; sequences in just one block, one line per sequence\n+ psi: format as read by PSI-BLAST using the -B option \n+ clu: Clustal format\n+If no input or output format is given the file extension is interpreted as format \n+specification (\'aln\' as \'clu\')\n+\n+Options:\n+ -v int verbose mode (0:off, 1:on)\n+ -num add number prefix to sequence names: \'name\', \'1:name\' \'2:name\' etc\n+ -noss remove secondary structure sequences (beginning with >ss_)\n+ -sa do not remove solvent accessibility sequences (beginning with >sa_)\n+ -M first make all columns with residue in first seuqence match columns \n+ (default for output format a2m or a3m)\n+ -M int make all columns with less than X% gaps match columns \n+ (for output format a2m or a3m)\n+ -r remove all lower case residues (insert states) \n+ (AFTER -M option has been processed)\n+ -r int remove all lower case columns with more than X% gaps\n+ -g \'\' suppress all gaps\n+ -g \'-\' write all gaps as \'-\'\n+ -uc write all residues in upper case (AFTER all other options have been processed)\n+ -lc write all residues in lower case (AFTER all other options have been processed)\n+ -l number of residues per line (for Clustal, FASTA, A2M, A3M formats) \n+ '..b' $names[0],$len,$names[$k],length($seqs[$k]));\n+\t\tif ($v>=3) {\n+\t\t printf("%.20s %s\\n%.20s %s\\n\\n",$names[0],$seqs[0],$names[$k],$seqs[$k]);\n+\t\t}\n+\t\texit 1;\n+\t }\n+\t}\n+ }\n+\n+\n+ ####################################################\n+ # Remove html tags\n+ ####################################################\n+ for($k=0; $k<$n; $k++) {\t\n+\t$names[$k]=~s/<[A-Za-z\\/].*?>//g; # remove html tags\n+ }\n+\n+\n+\n+################################################################################################\n+# Output part\n+################################################################################################\n+ \n+ my $ndssp=-1;\n+ my $nsa=-1;\n+ my $npred=-1;\n+ my $nconf=-1;\n+ my $nquery=-1;\n+ for ($k=0; $k<$n; $k++) {\n+\tif ($names[$k]=~/^ss_dssp/){$ndssp=$k; }\n+\telsif ($names[$k]=~/^sa_dssp/){$nsa=$k; }\n+\telsif ($names[$k]=~/^ss_pred/){$npred=$k; }\n+\telsif ($names[$k]=~/^ss_conf/){$nconf=$k; }\n+\telsif ($nquery==-1 && $names[$k]!~/^aa_/) {$nquery=$k;}\n+ }\n+\n+ #Write sequences into output file\n+ open (OUTFILE, ">$outfile") or die ("cannot open $outfile:$!\\n");\n+ if ($outformat eq "sto" || $outformat eq "psi") {\n+\tmy $refline; \n+\tif ($outformat eq "sto") {\n+\t print(OUTFILE "# STOCKHOLM 1.0\\n\\n");\n+\n+\t # Write reference annotation line for match states (-M first)\n+\t if (!$lname) {$lname=32;}\n+\t $names[$nquery]=~/^\\S+\\s+(.*)/;\n+\t printf(OUTFILE "%-$lname.$lname"."s %s\\n","#=GF DE",$1);\n+\t $refline=$seqs[$nquery]; \n+\t $refline=~s/[a-z]/-/g;\n+\t printf(OUTFILE "%-$lname.$lname"."s %s\\n","#=GC RF",$refline);\n+\t if ($ndssp>=0) {\n+\t\tprintf(OUTFILE "%-32.32s %s\\n","#=GC SS_cons",$seqs[$ndssp]);\n+\t }\n+\t} \n+\tif ($num) {\n+\t my $num=2;\n+\t for ($k=0; $k<$n; $k++) {\n+\t\tif ($k==$ndssp || $k==$npred || $k==$nconf || $k==$nquery) {next;}\n+\t\t$names[$k]=~s/^(\\S+)\\#\\d+/$1/;\n+\t\t$names[$k]=~s/^(\\S{1,25})\\S+/$1\\#$num/;\n+\t\t$num++;\n+\t }\n+\t}\n+\tfor ($k=0; $k<$n; $k++) {\n+\t if ($k==$ndssp || $k==$npred || $k==$nconf) {next;}\n+\t $names[$k] =~ /\\s*(\\S+)/;\n+\t if (!$lname) {$lname=32;}\n+\t printf(OUTFILE "%-$lname.$lname"."s %s\\n",$1,$seqs[$k]);\n+\t}\n+\tif ($outformat eq "sto") {print(OUTFILE "//\\n");}\t\n+ } elsif ($outformat eq "clu") {\n+\tprintf(OUTFILE "CLUSTAL\\n\\n\\n");\n+\tif ($num) {\n+\t my $num=2;\n+\t for ($k=0; $k<$n; $k++) {\n+\t\tif ($k==$ndssp || $k==$npred || $k==$nconf || $k==$nquery) {next;}\n+\t\t$names[$k]=~s/^(\\S+)\\#\\d+/$1/;\n+\t\t$names[$k]=~s/^(\\S{1,10})\\S*/$1\\#$num/;\n+\t\t$num++;\n+\t }\n+\t}\n+\twhile($seqs[0] ne "") { # While there are still residues left\n+\t for ($k=0; $k<scalar(@names); $k++) { # go through all sequences\n+\t\t$names[$k] =~ s/\\s*(\\S+).*/$1/;\n+\t\t$seqs[$k]=~s/(\\S{1,$numres})//; # remove the leftmost (up to) 60 residues from sequence $nseq\n+\t\tif (!$lname) {$lname=18;}\n+\t\tprintf(OUTFILE "%-$lname.$lname"."s %s\\n",$names[$k],$1); # and print them after the sequence name\n+\t }\n+\t print(OUTFILE "\\n"); # leave a blank line after each block of 60 residues\n+\t}\n+ } else {\n+\tif ($num) {\n+\t my $num=2;\n+\t for ($k=0; $k<$n; $k++) {\n+\t\tif ($k==$ndssp || $k==$npred || $k==$nconf || $k==$nquery) {next;}\n+\t\t$names[$k]=~s/^(\\S+)\\#\\d+/$1/;\n+\t\t$names[$k]=~s/^(\\S{1,25})\\S+/$1\\#$num/;\n+#\t\t$names[$k]=~s/^(\\S+)/$1\\#$num/;\n+\t\t$num++;\n+\t }\n+\t}\n+\tif ($titleline ne "" && $outformat eq "a3m") {\n+\t printf(OUTFILE "%s\\n",$titleline);\n+\t}\n+\tfor ($k=0; $k<$n; $k++) {\n+\t $seqs[$k]=~s/(\\S{$numres})/$1\\n/g;\n+\t printf(OUTFILE ">%s\\n%s\\n",$names[$k],$seqs[$k]);\n+\t}\n+ }\n+ \n+ close OUTFILE;\n+ if ($v>=2) {\n+\tif ($nin==1) {print("Reformatted $infile with 1 sequence from $informat to $outformat and written to file $outfile\\n");}\n+\telse {\n+\t if (!$nin==$n) {printf("Removed %i sequences which contained no residues\\n",$nin-$n); }\n+\t print("Reformatted $infile with $n sequences from $informat to $outformat and written to file $outfile\\n");\n+\t}\n+ }\n+ \n+ return;\n+}\n' |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/lib/hh/scripts/splitfasta.pl --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/external_tools/darwin/lib/hh/scripts/splitfasta.pl Wed Nov 01 05:54:28 2017 -0400 |
| [ |
| @@ -0,0 +1,129 @@ +#! /usr/bin/env perl +# splitfasta.pl +# Split a file with multiple, FASTA formatted sequences into many single-sequence FASTA files +# +# (C) Johannes Soeding, 2012 +# +# HHsuite version 2.0.15 (June 2012) +# +# Reference: +# Remmert M., Biegert A., Hauser A., and Soding J. +# HHblits: Lightning-fast iterative protein sequence searching by HMM-HMM alignment. +# Nat. Methods, epub Dec 25, doi: 10.1038/NMETH.1818 (2011). + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +# We are very grateful for bug reports! Please contact us at soeding@genzentrum.lmu.de + +use lib $ENV{"HHLIB"}."/scripts"; +use HHPaths; # config file with path variables for nr, blast, psipred, pdb, dssp etc. +use strict; +use warnings; + +my $ext="seq"; +my $usage=" +splitfasta.pl from HHsuite $VERSION +Split a file with multiple, FASTA formatted sequences into multiple single-sequence FASTA files. +Write files into current directory and name each file by the first word after \">\" in the name line. + +Usage: splitfasta.pl infile [option] +Option: +-fam : use family-based name (for SCOP/ASTRAL sequences +-name : use sequence name as file name (default) +-ext <ext> : extension for sequence files (default=$ext) +\n"; + +if (@ARGV<1) {die $usage;;} + +my $line; +my $infile=$ARGV[0]; +my $outfile; +my $sequence=""; +my $options=""; +my $fam=0; # option -fam? +my $famid=""; +my %numfams=(); +my $n=0; # number of name lines read in so far + +if (@ARGV>1) { + $options.=join(" ",@ARGV[1..$#ARGV]); +} + +# Set number of cpus to use +if ($options=~s/-fam//g) {$fam=1;} +if ($options=~s/-name//g) {$fam=0;} +if ($options=~s/-ext\s+(\S+)//g) {$ext=$1;} + + +open (INFILE,"<$infile") || die("ERROR: Can't open $infile: $!\n"); + +if ($fam) { + + while ($line=<INFILE>) { + if ($line=~/^>(\S+)\s+(\S+)/) { + $famid=$2; + if ($n) { + open (OUTFILE,">$outfile") || die("ERROR: Can't open $outfile: $!\n"); + print(OUTFILE $sequence); + close(OUTFILE); + } + if (defined $numfams{$fam}) {$numfams{$fam}++;} else {$numfams{$fam}=1}; + $outfile="$fam.".$numfams{$fam}.".seq"; + $sequence=$line; + $n++; + } else { + $sequence.=$line; + } + } + if ($n) { + open (OUTFILE,">$outfile") || die("ERROR: Can't open $outfile: $!\n"); + print(OUTFILE $sequence); + close(OUTFILE); + } + +} else { + + my %exists=(); + while ($line=<INFILE>) { + if ($line=~/^>(\S+)/) { + if ($n) { + open (OUTFILE,">$outfile") || die("ERROR: Can't open $outfile: $!\n"); + print(OUTFILE $sequence); + close(OUTFILE); + } + if ($exists{$1}) {print("\nWarning: id $1 appears more than once in $infile\n");} + $exists{$1}=1; + my $tmp = $1; + $tmp =~ s/\|/_/g; + $tmp =~ s/\./_/g; + $outfile="$tmp.seq"; + $sequence=$line; + $n++; + } else { + $sequence.=$line; + } + } + if ($n) { + open (OUTFILE,">$outfile") || die("ERROR: Can't open $outfile: $!\n"); + print(OUTFILE $sequence); + close(OUTFILE); + } +} + + +close(INFILE); +printf("Created %i sequence files\n",$n); + + + |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/darwin/lib/libffindex.so.0.1 |
| b |
| Binary file external_tools/darwin/lib/libffindex.so.0.1 has changed |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/linux/clustalo-1.2.0-Ubuntu-x86_64 |
| b |
| Binary file external_tools/linux/clustalo-1.2.0-Ubuntu-x86_64 has changed |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/linux/hhmake |
| b |
| Binary file external_tools/linux/hhmake has changed |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/linux/hhsearch |
| b |
| Binary file external_tools/linux/hhsearch has changed |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/linux/hmmbuild |
| b |
| Binary file external_tools/linux/hmmbuild has changed |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/linux/hmmsearch |
| b |
| Binary file external_tools/linux/hmmsearch has changed |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/linux/lib/hh/bin/cstranslate |
| b |
| Binary file external_tools/linux/lib/hh/bin/cstranslate has changed |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/linux/lib/hh/data/context_data.lib --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/external_tools/linux/lib/hh/data/context_data.lib Wed Nov 01 05:54:28 2017 -0400 |
| b |
| b'@@ -0,0 +1,88003 @@\n+ContextLibrary\n+SIZE\t4000\n+LENG\t13\n+ContextProfile\n+NAME\tABA1\n+PRIOR\t7.000161e-06\n+COLOR\t1.00,1.00,1.00\n+ISLOG\tF\n+LENG\t13\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t6200\t4080\t6242\t6753\t4998\t5368\t6564\t3399\t5082\t5077\t5970\t5171\t6983\t3815\t3682\t6797\t6640\t14041\t1194\t5159\n+2\t3077\t4534\t5274\t3672\t9563\t2787\t4017\t4320\t9189\t8195\t5575\t1960\t13915\t8121\t13464\t4226\t5722\t15026\t3453\t5296\n+3\t3616\t6330\t4376\t1530\t14415\t5643\t3617\t4372\t5914\t7343\t5374\t5449\t14126\t13663\t9179\t3824\t2474\t15789\t6617\t5088\n+4\t4814\t5687\t13520\t7923\t14389\t6568\t7442\t9356\t7074\t5436\t3186\t4620\t3950\t3164\t14024\t7916\t7832\t13920\t963\t4505\n+5\t5225\t9414\t6056\t6042\t5667\t3817\t8536\t6702\t6637\t1298\t5294\t6589\t3216\t6002\t13834\t5036\t3571\t15428\t7260\t2821\n+6\t4430\t4558\t3440\t2139\t14571\t4937\t3005\t3038\t5940\t8443\t8209\t3659\t8039\t8539\t7658\t3603\t3597\t8193\t5124\t8541\n+7\t2687\t7923\t6492\t13184\t13886\t13548\t12996\t6810\t14326\t2853\t4263\t7530\t7547\t6306\t6814\t5465\t1387\t15515\t7315\t2426\n+8\t5336\t8757\t7910\t13760\t9688\t6962\t6830\t7454\t9075\t3826\t3613\t13170\t2013\t1728\t14172\t5932\t5795\t5230\t2697\t5274\n+9\t6915\t4137\t3358\t1349\t7788\t5967\t2209\t6880\t6805\t8373\t9324\t4308\t7341\t13966\t7064\t3766\t4728\t15980\t8771\t6904\n+10\t3005\t2588\t5055\t4506\t7727\t4553\t3556\t6265\t5834\t6425\t5795\t2495\t6331\t7734\t5515\t3647\t3895\t4331\t6117\t6068\n+11\t4767\t7700\t13847\t8123\t7042\t13872\t8495\t7431\t13995\t1943\t1419\t7244\t5944\t6238\t14036\t6303\t5608\t14729\t2837\t3395\n+12\t12638\t2132\t7352\t13520\t14665\t7733\t8906\t9025\t5797\t12531\t5282\t5824\t13705\t2077\t14099\t8619\t8280\t5686\t1216\t8676\n+13\t4301\t3429\t4746\t5890\t5509\t3624\t4020\t5142\t3494\t3908\t3616\t2979\t6529\t6096\t9684\t2778\t5138\t15404\t5491\t5476\n+//\n+ContextProfile\n+NAME\tAGA1\n+PRIOR\t5.9183258e-05\n+COLOR\t1.00,0.36,1.00\n+ISLOG\tF\n+LENG\t13\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t2830\t7375\t6648\t8026\t5628\t7326\t7006\t2939\t7600\t3034\t2494\t7241\t5113\t4010\t5744\t4153\t4255\t6906\t5297\t3164\n+2\t3113\t5958\t5013\t7294\t5250\t4912\t6730\t2581\t7076\t3625\t2756\t7347\t4452\t4007\t6411\t3723\t4317\t6159\t5922\t3713\n+3\t3921\t7202\t5981\t6751\t3908\t4914\t6833\t4702\t6459\t3263\t2712\t7952\t4774\t3282\t6219\t4004\t3947\t4906\t4633\t2951\n+4\t2866\t7555\t7109\t6553\t5836\t7436\t7981\t3506\t8087\t3117\t2271\t6866\t4754\t3105\t6083\t4819\t4627\t7015\t4840\t3280\n+5\t3081\t8223\t7511\t9405\t5324\t7668\t8251\t4170\t7560\t3127\t2325\t9239\t4415\t3378\t6338\t4050\t4029\t5380\t5310\t2883\n+6\t4795\t5515\t4909\t6571\t7725\t1166\t4555\t5214\t2870\t5971\t5037\t6045\t5679\t5690\t6890\t4478\t5378\t6961\t4926\t5454\n+7\t4305\t7065\t7343\t9349\t6352\t7135\t7778\t5607\t7215\t2666\t2074\t7454\t4011\t2797\t7578\t5280\t4945\t5519\t3780\t3078\n+8\t2967\t7066\t7452\t8907\t5197\t7320\t8576\t4054\t7290\t3454\t2857\t8039\t5079\t2594\t5922\t4446\t4492\t4043\t3716\t3604\n+9\t3885\t4421\t4516\t7392\t5274\t5853\t6847\t5267\t5489\t3622\t2613\t6753\t5084\t2806\t7119\t4168\t4416\t4983\t3523\t3623\n+10\t3034\t4805\t4545\t4655\t6810\t4879\t5745\t3774\t5871\t3523\t3206\t6092\t4998\t4024\t5996\t4116\t3984\t5603\t4085\t3490\n+11\t3596\t4127\t6060\t6593\t6691\t5371\t5602\t4563\t5017\t3748\t2892\t4114\t5261\t3193\t5707\t4092\t4773\t4860\t3540\t3837\n+12\t3510\t4565\t4741\t6149\t6254\t5170\t5093\t4447\t6198\t3969\t3016\t5221\t5336\t3239\t4284\t3678\t4354\t5856\t3799\t3710\n+13\t3627\t5096\t5013\t5453\t6043\t4975\t5385\t3873\t5594\t3903\t2752\t5088\t5137\t3329\t5154\t4175\t4175\t4796\t3922\t3994\n+//\n+ContextProfile\n+NAME\tAGA2\n+PRIOR\t5.9183258e-05\n+COLOR\t1.00,0.36,1.00\n+ISLOG\tF\n+LENG\t13\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t2830\t7375\t6648\t8026\t5628\t7326\t7006\t2939\t7600\t3034\t2494\t7241\t5113\t4010\t5744\t4153\t4255\t6906\t5297\t3164\n+2\t3113\t5958\t5013\t7294\t5250\t4912\t6730\t2581\t7076\t3625\t2756\t7347\t4452\t4007\t6411\t3723\t4317\t6159\t5922\t3713\n+3\t3921\t7202\t5981\t6751\t3908\t4914\t6833\t4702\t6459\t3263\t2712\t7952\t4774\t3282\t6219\t4004\t3947\t4906\t4633\t2951\n+4\t2866\t7555\t7109\t6553\t5836\t7436\t7981\t3506\t8087\t3117\t2271\t6866\t4754\t3105\t6083\t4819\t4627\t7015\t4840\t3280\n+5\t3081\t8223\t7511\t9405\t5324\t7668\t8251\t4170\t7560\t3127\t2325\t9239\t4415\t3378\t6338\t4050\t4029\t5380\t5310\t2883\n+6\t4795\t5515\t4909\t6571\t7725\t1166\t4555\t5214\t2870\t5971\t5037\t6045\t5679\t5690\t6890\t4478\t5378\t6961\t4926\t5454\n+7\t4305\t7065\t7343\t9349\t6352\t7135\t7778\t5607\t7215\t2666\t2074\t7454\t4011\t2797\t7578\t5280\t4945\t5519\t3780\t3078\n+8\t2967\t7066\t7452\t8907\t5197\t7320\t8576\t4054\t7290\t3454\t2857\t80'..b'74\t8763\t5912\t5486\t656\t6106\t7907\t7171\t4651\t6940\t7452\t6191\t5093\t6334\t10451\t7365\t7561\n+5\t4281\t4256\t6379\t6480\t6672\t5587\t6124\t6774\t4388\t3022\t2694\t3608\t4787\t3339\t6814\t6042\t6059\t5809\t2930\t3500\n+6\t4286\t2225\t3902\t3634\t8742\t4366\t3888\t5812\t4806\t6499\t6366\t2638\t7760\t6810\t5042\t3501\t3919\t9443\t6391\t5643\n+7\t4129\t8367\t8153\t8553\t4836\t8349\t9786\t7435\t7801\t3044\t3992\t8788\t6575\t5400\t5955\t5500\t3528\t9437\t6440\t927\n+8\t3530\t5738\t8066\t7274\t5912\t7058\t6324\t5524\t5755\t2723\t1902\t6138\t5429\t4202\t8993\t5622\t3867\t6427\t4817\t2654\n+9\t3632\t4296\t8731\t9282\t5801\t7544\t8435\t6169\t6987\t2534\t2050\t7883\t4529\t4731\t8840\t5757\t5217\t7472\t6072\t2005\n+10\t4605\t7592\t8320\t8664\t6140\t7889\t7768\t7696\t6014\t2268\t2196\t8086\t5420\t3304\t4354\t6787\t6095\t6759\t4392\t2176\n+11\t3887\t6326\t3947\t1772\t6983\t5752\t2273\t5124\t6541\t7480\t6560\t4775\t7569\t8252\t5073\t3345\t3578\t11697\t7433\t6600\n+12\t3422\t3733\t5016\t3227\t5186\t4713\t4707\t3061\t5891\t5552\t3521\t3407\t5530\t4925\t4932\t4157\t4798\t7543\t4413\t5719\n+13\t3794\t3071\t4201\t2474\t6603\t5220\t3944\t2964\t5123\t6441\t5273\t4302\t7198\t5795\t4199\t3571\t5148\t7509\t5784\t6360\n+//\n+ContextProfile\n+NAME\tUCA31\n+PRIOR\t0.00026953894\n+COLOR\t0.36,0.84,1.00\n+ISLOG\tF\n+LENG\t13\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t3515\t4698\t4708\t4327\t6106\t5473\t4186\t4204\t5014\t3638\t3108\t4624\t5621\t4023\t4609\t3950\t4175\t5296\t5008\t3786\n+2\t3350\t4161\t4889\t4076\t5171\t4795\t3628\t4608\t4643\t4328\t3626\t4238\t5285\t4642\t4667\t3767\t4128\t6332\t4833\t4050\n+3\t3527\t3967\t4660\t4222\t6819\t4650\t3780\t4120\t4985\t4154\t3535\t3834\t5389\t4237\t4521\t3837\t4292\t7652\t5313\t4023\n+4\t3434\t4262\t4142\t3489\t6530\t4646\t3939\t4816\t4865\t3737\t3348\t4331\t5041\t5222\t5000\t3938\t4304\t7736\t5555\t3822\n+5\t3772\t4136\t4371\t3838\t6729\t4322\t3337\t4034\t4348\t4566\t3848\t4352\t4964\t5045\t4089\t4041\t4380\t5993\t4871\t4545\n+6\t3565\t3082\t4169\t3525\t8044\t4020\t3124\t4562\t4760\t5791\t4989\t3371\t6432\t6217\t3787\t4036\t4534\t7289\t5721\t5470\n+7\t3725\t3111\t3989\t3409\t7457\t3646\t2603\t4826\t4520\t5763\t4920\t3746\t6432\t6122\t5285\t4260\t4673\t7980\t5260\t5413\n+8\t6578\t6337\t4868\t6868\t8038\t4928\t6526\t7640\t404\t7028\t5918\t7008\t7924\t5930\t7688\t6529\t7105\t6870\t4861\t7005\n+9\t3490\t3388\t5334\t5389\t6550\t3760\t4181\t5457\t5006\t3478\t2630\t4369\t5313\t4377\t6511\t4568\t4764\t7058\t5109\t3758\n+10\t3091\t3131\t4510\t4007\t7649\t3929\t3089\t4947\t5246\t5071\t4412\t3147\t5584\t5741\t4877\t4105\t4663\t8258\t5943\t4827\n+11\t4142\t3583\t4678\t5346\t7132\t4825\t4191\t6045\t4856\t3068\t2482\t4683\t4805\t4128\t7398\t4944\t4861\t5927\t3980\t3908\n+12\t3658\t3960\t6473\t5687\t6141\t5505\t5823\t5395\t5743\t3158\t2235\t5403\t4698\t3644\t6447\t4500\t4583\t5960\t4666\t3183\n+13\t3515\t3288\t4802\t3399\t6496\t4380\t3538\t4810\t5907\t4142\t3637\t3529\t6103\t4870\t5241\t4302\t4454\t6600\t5703\t4124\n+//\n+ContextProfile\n+NAME\tAFI9\n+PRIOR\t0.00014116683\n+COLOR\t1.00,0.52,0.68\n+ISLOG\tF\n+LENG\t13\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t2604\t4710\t4845\t4578\t5180\t6014\t5038\t3779\t6343\t3691\t3520\t3692\t6001\t4943\t4158\t3860\t4527\t7908\t5333\t3745\n+2\t4460\t4522\t4862\t2072\t7800\t5085\t4108\t2489\t5661\t4072\t4897\t4475\t7872\t6015\t4475\t4646\t4995\t8005\t6379\t4082\n+3\t2667\t4302\t5951\t5249\t5781\t6135\t4579\t4651\t6145\t3239\t3005\t5436\t6030\t4594\t7224\t3799\t4307\t7558\t5341\t2718\n+4\t3707\t7066\t6357\t7959\t5271\t7381\t7464\t5723\t7364\t2101\t2811\t7347\t5492\t4090\t6791\t5654\t5017\t6743\t5480\t1821\n+5\t3665\t8758\t7747\t7134\t4808\t7789\t9253\t6772\t7204\t2143\t2450\t9735\t5473\t3689\t6352\t5258\t5474\t6758\t4357\t2186\n+6\t4465\t9202\t6227\t8731\t5124\t7433\t8807\t7385\t7097\t1971\t2654\t9596\t4808\t4660\t7766\t5374\t4734\t9231\t5912\t1679\n+7\t3226\t8178\t6353\t7452\t5056\t7046\t6800\t4812\t7061\t5430\t4612\t7880\t7094\t7116\t876\t4348\t4204\t9490\t7816\t4468\n+8\t3447\t7257\t5645\t6710\t4816\t7044\t7421\t5312\t7259\t3406\t3104\t7266\t5674\t4946\t5893\t2961\t2271\t7895\t5590\t2786\n+9\t4174\t4323\t3846\t3319\t7102\t5795\t4665\t4892\t5473\t5112\t4104\t4257\t6363\t4336\t3096\t3636\t3727\t6486\t3583\t4819\n+10\t3236\t5597\t2775\t4068\t6770\t5656\t5123\t4121\t5208\t5667\t4711\t5453\t6654\t5653\t2922\t3100\t3462\t6035\t4937\t5178\n+11\t3862\t4401\t4449\t3690\t6708\t4982\t2611\t3233\t5241\t5652\t4892\t5034\t6064\t4117\t4440\t3293\t4307\t6648\t5203\t5030\n+12\t3446\t5162\t4594\t4015\t7617\t4861\t3717\t3003\t4750\t4935\t3798\t4881\t5955\t4737\t4214\t3553\t3926\t6574\t4315\t4580\n+13\t3276\t4201\t4480\t4371\t6847\t5053\t3928\t3481\t3920\t4808\t3973\t4299\t6208\t4341\t3861\t3710\t4259\t7619\t5295\t4379\n+//\n' |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/linux/lib/hh/data/cs219.lib --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/external_tools/linux/lib/hh/data/cs219.lib Wed Nov 01 05:54:28 2017 -0400 |
| b |
| b'@@ -0,0 +1,2193 @@\n+ContextLibrary\n+SIZE\t219\n+LENG\t1\n+ContextProfile\n+NAME\t0\n+PRIOR\t0.01685367\n+COLOR\t0.80,0.60,0.80\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t5722\t8301\t7211\t7542\t9306\t8794\t8214\t113\t9303\t9562\t8718\t8182\t10182\t9473\t8665\t6339\t8023\t10959\t9714\t8731\n+//\n+ContextProfile\n+NAME\t1\n+PRIOR\t0.00733811\n+COLOR\t0.80,0.40,1.00\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t6598\t8305\t8183\t8198\t128\t8850\t8596\t7461\t9247\t7585\t6988\t8701\t9063\t8110\t8517\t6587\t7322\t9525\t8248\t7059\n+//\n+ContextProfile\n+NAME\t2\n+PRIOR\t0.0074780207\n+COLOR\t0.40,0.60,0.60\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t7404\t7583\t8714\t9008\t8940\t8419\t8480\t7937\t8058\t7242\t6020\t8462\t8182\t5249\t8704\t7761\t8001\t194\t5443\t7301\n+//\n+ContextProfile\n+NAME\t3\n+PRIOR\t0.025236913\n+COLOR\t0.60,0.40,0.80\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t5643\t7046\t7329\t6897\t9468\t7342\t6703\t6772\t8315\t7447\t6723\t6837\t8799\t8184\t217\t5949\t6594\t10058\t8459\t6919\n+//\n+ContextProfile\n+NAME\t4\n+PRIOR\t0.010610212\n+COLOR\t0.40,1.00,0.40\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t6740\t6572\t6121\t6725\t8980\t6146\t6835\t7261\t237\t7696\t6729\t7084\t8446\t7119\t7710\t6442\t7104\t8862\t6243\t7473\n+//\n+ContextProfile\n+NAME\t5\n+PRIOR\t0.020806629\n+COLOR\t0.80,0.60,0.80\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t5397\t6480\t6104\t6130\t8673\t7114\t6429\t266\t7772\t7938\t7062\t6590\t8664\t8076\t6882\t5614\t6550\t9507\t8204\t7271\n+//\n+ContextProfile\n+NAME\t6\n+PRIOR\t0.023978551\n+COLOR\t0.40,1.00,0.80\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t6196\t6577\t5327\t292\t9353\t6616\t5108\t6259\t7214\t8103\t7366\t6375\t9027\t8569\t7062\t5702\t6447\t10155\t8219\t7600\n+//\n+ContextProfile\n+NAME\t7\n+PRIOR\t0.015750478\n+COLOR\t0.40,0.60,0.40\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t6760\t7537\t7785\t8222\t8534\t7963\t7898\t7869\t6674\t6448\t5490\t7943\t7650\t3817\t8365\t7128\t7299\t6263\t326\t6432\n+//\n+ContextProfile\n+NAME\t8\n+PRIOR\t0.026518086\n+COLOR\t1.00,0.80,0.60\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t5984\t303\t6601\t6615\t9052\t6081\t5979\t6720\t7190\t7243\t6407\t5042\t8181\t7921\t7147\t6075\t6500\t9035\t7627\t6953\n+//\n+ContextProfile\n+NAME\t9\n+PRIOR\t0.019415992\n+COLOR\t0.40,0.60,0.40\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t6534\t7980\t8319\t8745\t8404\t8359\t8298\t7895\t7567\t5541\t4543\t8286\t6824\t346\t8304\t7250\t7182\t6598\t4277\t5687\n+//\n+ContextProfile\n+NAME\t0\n+PRIOR\t0.042818933\n+COLOR\t0.60,0.40,0.40\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t5810\t7553\t8258\t8537\t8075\t7905\t7852\t7725\t8497\t4471\t339\t7778\t5857\t5511\t7985\t6977\t6690\t8181\t6849\t4711\n+//\n+ContextProfile\n+NAME\t1\n+PRIOR\t0.024854491\n+COLOR\t0.40,1.00,1.00\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t5680\t5905\t6299\t5121\t9510\t5848\t337\t6462\t7457\t7392\t6629\t5707\t8356\t8129\t6887\t5800\t6278\t9618\t7882\t6934\n+//\n+ContextProfile\n+NAME\t2\n+PRIOR\t0.017763744\n+COLOR\t1.00,1.00,0.80\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t5949\t6148\t338\t5273\t8609\t6531\t5919\t5831\t6757\t7457\t6796\t6109\t8467\t7935\t7024\t5430\t5993\t9675\t7641\t7135\n+//\n+ContextProfile\n+NAME\t3\n+PRIOR\t0.031512555\n+COLOR\t1.00,0.40,1.00\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t368\t6575\t6976\t6873\t7348\t6947\t6378\t5312\t8002\t6181\t5605\t6628\t7412\t7160\t6833\t5073\t5710\t9188\t7633\t5577\n+//\n+ContextProfile\n+NAME\t4\n+PRIOR\t0.020451019\n+COLOR\t1.00,0.40,0.60\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t5746\t7562\t8178\t8481\t7988\t7966\t7793\t7678\t8552\t421\t3777\t7694\t6156\t5661\t7944\t6945\t6453\t8363\t6880\t4149\n+//\n+ContextProfile\n+NAME\t5\n+PRIOR\t0.02347888\n+COLOR\t1.00,0.40,0.40\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t5359\t7355\t7952\t8097\t7674\t7785\t7457\t7257\t8405\t4204\t4146\t7486\t6470\t5826\t7550\t6572\t6118\t8475\t6939\t414\n+//\n+ContextProfile\n+NAME\t6\n+PRIOR\t0.0221443'..b'078\t3957\t3707\t4756\t5401\t5871\t5308\t3429\t2100\t7864\t6087\t3325\n+//\n+ContextProfile\n+NAME\t3\n+PRIOR\t0.0022452627\n+COLOR\t0.60,0.40,0.40\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t3832\t2796\t5950\t6205\t6711\t4816\t5125\t5765\t5694\t3587\t2308\t4115\t4774\t4758\t6085\t4801\t4369\t6215\t5319\t3462\n+//\n+ContextProfile\n+NAME\t4\n+PRIOR\t0.0030132039\n+COLOR\t1.00,0.80,0.60\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t3476\t2821\t4301\t3806\t7974\t3836\t3534\t2987\t4950\t6462\t5399\t3391\t7125\t7082\t4891\t3735\t4561\t8610\t6725\t5682\n+//\n+ContextProfile\n+NAME\t5\n+PRIOR\t0.0019463019\n+COLOR\t0.40,0.60,0.40\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t4207\t4256\t4623\t4399\t7612\t4475\t4052\t4998\t5450\t4933\t3910\t4143\t5810\t1875\t5705\t4262\t4623\t6839\t4826\t4688\n+//\n+ContextProfile\n+NAME\t6\n+PRIOR\t0.0029312021\n+COLOR\t1.00,0.80,0.60\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t3375\t2904\t4564\t4244\t7549\t3904\t3564\t4950\t5065\t5687\t5075\t3826\t6677\t6851\t5669\t3124\t2898\t8543\t6645\t4760\n+//\n+ContextProfile\n+NAME\t7\n+PRIOR\t0.0013606992\n+COLOR\t0.40,0.60,0.60\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t3292\t5227\t5833\t6199\t6234\t5848\t5720\t4603\t5951\t4347\t3423\t5718\t5199\t4145\t4990\t4162\t4245\t2102\t4414\t3874\n+//\n+ContextProfile\n+NAME\t8\n+PRIOR\t0.0027039386\n+COLOR\t0.80,1.00,0.40\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t4219\t3667\t4843\t4772\t7549\t3950\t3333\t5609\t5587\t4139\t4749\t2761\t6435\t6498\t5713\t4161\t3392\t8492\t6294\t2882\n+//\n+ContextProfile\n+NAME\t9\n+PRIOR\t0.0017339621\n+COLOR\t0.40,1.00,0.40\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t3843\t4389\t4863\t5387\t6508\t4659\t4733\t5479\t2099\t3984\t3921\t4866\t5594\t5072\t5719\t4525\t4076\t7017\t4721\t3337\n+//\n+ContextProfile\n+NAME\t0\n+PRIOR\t0.0039063267\n+COLOR\t0.60,0.40,0.80\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t3854\t4100\t4080\t3474\t8038\t4141\t3159\t4382\t5370\t5857\t5229\t3412\t6908\t6741\t3029\t3446\t3884\t8727\t6516\t5155\n+//\n+ContextProfile\n+NAME\t1\n+PRIOR\t0.0022997542\n+COLOR\t1.00,0.40,0.60\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t3784\t4644\t5487\t4914\t7106\t4360\t3335\t5677\t5854\t2673\t3145\t4453\t5038\t5216\t5790\t4584\t4055\t7497\t5471\t3068\n+//\n+ContextProfile\n+NAME\t2\n+PRIOR\t0.0014890771\n+COLOR\t0.80,0.40,1.00\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t3926\t3384\t4954\t5099\t2157\t4240\t4213\t5167\t4863\t5192\t4366\t3984\t6116\t5625\t5454\t3820\t4514\t7244\t5335\t4598\n+//\n+ContextProfile\n+NAME\t3\n+PRIOR\t0.0023833375\n+COLOR\t1.00,0.80,0.60\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t3829\t2557\t4600\t5242\t7372\t4687\t4806\t4379\t5464\t4993\t4093\t2724\t5342\t5438\t4361\t3594\t4092\t6814\t5962\t4771\n+//\n+ContextProfile\n+NAME\t4\n+PRIOR\t0.0024807991\n+COLOR\t0.40,0.60,0.40\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t4052\t4665\t5642\t5890\t6535\t5043\t5189\t5694\t5085\t3717\t2553\t5005\t4579\t3058\t5941\t4771\t4737\t5318\t3084\t3773\n+//\n+ContextProfile\n+NAME\t5\n+PRIOR\t0.0032628478\n+COLOR\t0.60,0.40,0.80\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t3277\t4411\t5139\t4708\t7313\t4774\t4197\t4606\t5778\t4281\t3466\t4601\t5946\t5521\t2523\t3781\t4026\t7512\t6117\t3691\n+//\n+ContextProfile\n+NAME\t6\n+PRIOR\t0.0025318721\n+COLOR\t0.60,0.80,1.00\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t3833\t4243\t4222\t3669\t7729\t3998\t3517\t4455\t5459\t4978\t2539\t3839\t5637\t5768\t5065\t3785\t4208\t8077\t6137\t4827\n+//\n+ContextProfile\n+NAME\t7\n+PRIOR\t0.0012302587\n+COLOR\t0.40,0.60,0.60\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t3685\t3757\t4518\t3719\t7508\t4084\t3293\t4462\t5154\t5682\t4591\t4047\t6294\t5588\t5065\t3783\t4322\t2955\t5436\t5103\n+//\n+ContextProfile\n+NAME\t8\n+PRIOR\t0.0023421287\n+COLOR\t0.40,1.00,0.40\n+ISLOG\tF\n+LENG\t1\n+ALPH\t20\n+PROBS\tA\tR\tN\tD\tC\tQ\tE\tG\tH\tI\tL\tK\tM\tF\tP\tS\tT\tW\tY\tV\n+1\t3642\t3914\t3908\t4231\t7039\t3905\t3956\t4395\t4008\t5313\t4459\t4173\t6015\t4851\t5425\t3490\t3874\t7084\t3559\t4782\n+//\n' |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/linux/lib/hh/data/do_not_delete --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/external_tools/linux/lib/hh/data/do_not_delete Wed Nov 01 05:54:28 2017 -0400 |
| b |
| @@ -0,0 +1,12 @@ +>1jat_B Ubiquitin-conjugating enzyme variant MMS2; UEV; {Saccharomyces cerevisiae} (1.6 0.203 0.239) SCOP: d.20.1.1 DALI: 2290.1.1.1.1.1 1777.1.1.2.1.1 +HMSKVPRNFRLLEELEKGEKGFGPESCSYGLADSDDITMTKWNGTILGPPHSNHENRIYSLSIDCGPNYPDSPPKVTFISKINLPCVNPTTGEVQTDFHTLRDWKRAYTMETLLLDLRKEMATPANKKLRQPKEGETF +>1a04_A Nitrate/nitrite response regulator protein NARL; signal transduction protein, response regulators, two-component systems; {Escherichia coli} (2.2 0.211 0.267) SCOP: a.4.6.2 c.23.1.1 DALI: 988.1.2.2.1.1 5.1.1.1.1.1 +SNQEPATILLIDDHPMLRTGVKQLISMAPDITVVGEASNGEQGIELAESLDPDLILLDLNMPGMNGLETLDKLREKSLSGRIVVFSVSNHEEDVVTALKRGADGYLLKDMEPEDLLKALHQAAAGEMVLSEALTPVLAASLRANRATTERDVNQLTPRERDILKLIAQGLPNKMIARRLDITESTVKVHVKHMLKKMKLKSRVEAAVWVHQERIF +>1mli Muconolactone isomerase (E.C.5.3.3.4); {Pseudomonas putida} (3.3 0 0) +MLFHVKMTVKLPVDMDPAKATQLKADEKELAQRLQREGTWRHLWRIAGHYANYSVFDVPSVEALHDTLMQLPLFPYMDIEVDGLCRHPSSIHSDDR +>1ekz_A DSRBDIII, maternal effect protein (staufen); NMR structure, protein/RNA, protein DSRBD, RNA hairpin; {Drosophila melanogaster} (0 0 0) SCOP: d.50.1.1 DALI: 361.2.2.1.1.1 PDB: 1stu +MDEGDKKSPISQVHEIGIKRNMTVHFKVLREEGPAHMKNFITACIVGSIVTEGEGNGKKVSKKRAAEKMLVELQKL +>1et9_A Superantigen SPE-H; beta grasp, OB fold, superantigen fold; {Streptococcus pyogenes} (1.90 0.199 0.220) SCOP: b.40.2.2 d.15.6.1 DALI: 1368.1.1.1.3.1 +NSYNTTNRHNLESLYKHDSNLIEADSIKNSPDIVTSHMLKYSVKDKNLSVFFEKDWISQEFKDKEVDIYALSAQEVCECPGKRYEAFGGITLTNSEKKEIKVPVNVWDKSKQQPPMFITVNKPKVTAQEVDIKVRKLLIKKYDIYNNREQKYSKGTVTLDLNSGKDIVFDLYYFGNGDFNSMLKIYSNNERIDSTQFHVDVSIS +>1m0s_A Ribose-5-phosphate isomerase A; D-ribose 5-phosphate isomerase, northeast structural genomics consortium, IR21, structural genomics; {Haemophilus influenzae} (1.90 0.179 0.208) SCOP: c.124.1.4 d.58.40.1 DALI: 194.2.1.1.1.1 +MNQLEMKKLAAQAALQYVKADRIVGVGSGSTVNCFIEALGTIKDKIQGAVAASKESEELLRKQGIEVFNANDVSSLDIYVDGADEINPQKMMIKGGGAALTREKIVAALAKKFICIVDSSKQVDVLGSTFPLPVEVIPMARSQVGRKLAALGGSPEYREGVVTDNGNVILDVHNFSILNPVEIEKELNNVAGVVTNGIFALRGADVVIVGTPEGAKVID |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/linux/lib/hh/data/do_not_delete.phr |
| b |
| Binary file external_tools/linux/lib/hh/data/do_not_delete.phr has changed |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/linux/lib/hh/data/do_not_delete.pin |
| b |
| Binary file external_tools/linux/lib/hh/data/do_not_delete.pin has changed |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/linux/lib/hh/data/do_not_delete.psq |
| b |
| Binary file external_tools/linux/lib/hh/data/do_not_delete.psq has changed |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/linux/lib/hh/scripts/Align.pm --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/external_tools/linux/lib/hh/scripts/Align.pm Wed Nov 01 05:54:28 2017 -0400 |
| [ |
| b'@@ -0,0 +1,659 @@\n+# Package Align.pl\n+# (c) Johannes Soeding, 2006\n+# Perl functions for Smith-Waterman and Needleman-Wunsch sequence alignment\n+\n+# HHsuite version 2.0\n+#\n+# Reference: \n+# Remmert M., Biegert A., Hauser A., and Soding J.\n+# HHblits: Lightning-fast iterative protein sequence searching by HMM-HMM alignment.\n+# Nat. Methods, epub Dec 25, doi: 10.1038/NMETH.1818 (2011).\n+\n+# (C) Johannes Soeding and Michael Remmert, 2012\n+\n+# This program is free software: you can redistribute it and/or modify\n+# it under the terms of the GNU General Public License as published by\n+# the Free Software Foundation, either version 3 of the License, or\n+# (at your option) any later version.\n+\n+# This program is distributed in the hope that it will be useful,\n+# but WITHOUT ANY WARRANTY; without even the implied warranty of\n+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n+# GNU General Public License for more details.\n+\n+# You should have received a copy of the GNU General Public License\n+# along with this program. If not, see <http://www.gnu.org/licenses/>.\n+\n+# We are very grateful for bug reports! Please contact us at soeding@genzentrum.lmu.de\n+\n+#############################################################################\n+# Subroutine AlignSW\n+# Smith-Waterman local alignment\n+# usage: \n+# 1. Use global variables of package Align.pm:\n+# $score = &AlignSW();\n+# printf(" XSEQ: $Align::xseq\\n");\n+# printf(" MATCH: $Align::Sstr\\n");\n+# printf(" YSEQ: $Align::yseq\\n");\n+# etc.\n+# \n+# 2. Use references and/or global variables\n+# $score = &AlignSW(\\$xseq,\\$yseq);\n+# $score = &AlignNW(\\$xseq,\\$yseq,\\@i,\\@j,\\$imin,\\$imax,\\$jmin,\\$jmax,\\$Sstr,\\@S);\n+# printf(" XSEQ: $xseq\\n");\n+# printf(" MATCH: $Sstr\\n");\n+# printf(" YSEQ: $yseq\\n");\n+#\n+# Input: $xseq, $yseq : sequences x and y as strings\n+# Param: $main::d : gap opening penalty\n+# $main::e : gap extension penalty \n+# Output: return value : bit score\n+# $xseq, $yseq : aligned residues of x and y (with - as gap) \n+# @i : $i[$col],$j[$col] are aligned residues in column $col \n+# @j : (first is 1 (NOT 0!), 0 means gap)\n+# $imin : first aligned residue of sequence x\n+# $imax : last aligned residue of sequence x\n+# $jmin : first aligned residue of sequence y\n+# $jmax : last aligned residue of sequence y\n+# $Sstr : string belonging to $xseq and $yseq showing quality of alignment\n+# $S[$col] : match score for aligning positions $i[$col] and $j[$col] \n+#############################################################################\n+\n+#############################################################################\n+# Subroutine AlignNW\n+# Needleman-Wunsch global alignment\n+# usage: $score = &AlignNW();\n+# $score = &AlignNW(\\$xseq,\\$yseq);\n+# $score = &AlignNW(\\$xseq,\\$yseq,\\@i,\\@j);\n+# $score = &AlignNW(\\$xseq,\\$yseq,\\@i,\\@j,\\$imin,\\$imax,\\$jmin,\\$jmax,\\$Sstr,\\@S);\n+#\n+# Input: $xseq, $yseq : sequences x and y as strings\n+# Param: $main::d : gap opening penalty\n+# $main::e : gap extension penalty \n+# $main::g : end gap penalty \n+# Output: return value : bit score\n+# $xseq, $yseq : aligned residues of x and y (with - as gap) \n+# @i : $i[$col],$j[$col] are aligned residues in column $col \n+# @j : (first is 1 (NOT 0!), 0 means gap)\n+# $imin : first aligned residue of sequence x\n+# $imax : last aligned residue of sequence x\n+# $jmin : first aligned residue of sequence y\n+# $jmax : last aligned residue of sequence y\n+# $Sstr : string belonging to $xseq and $yseq s'..b'+ }\n+ for ($j=1; $j<=$Ly; $j++) {\n+\t$M[0][$j] = -999;\t\n+\t$A[0][$j] = -$j*$main::g;\t\n+\t$B[0][$j] = -999;\n+\t$Abt[0][$j] = 0; # previous state was A as well (gap in x)\n+ }\n+ \n+ # Iteration\n+ for ($i=1; $i<=$Lx; ++$i) {\n+\tmy $Mi =$M[$i];\n+\tmy $Mi1=$M[$i-1];\n+\tmy $Ai =$A[$i];\n+\tmy $Ai1=$A[$i-1];\n+\tmy $Bi =$B[$i];\n+\tmy $Bi1=$B[$i-1];\n+\tmy $Sabx=$Sab[$xres[$i]];\n+\tmy $j1=0;\n+\tfor ($j=1; $j<=$Ly; ++$j, ++$j1) {\n+\t ${$Mi}[$j] = max3bt(${$Mi1}[$j1], ${$Ai1}[$j1], ${$Bi1}[$j1], \\$Mbt[$i][$j]) + ${$Sabx}[$yres[$j]];\n+\t ${$Ai}[$j] = max2bt(${$Ai}[$j1]-$main::e, ${$Mi}[$j1]-$dx, \\$Abt[$i][$j]);\n+\t ${$Bi}[$j] = max2bt(${$Bi1}[$j]-$main::e, ${$Mi1}[$j]-$dy, \\$Bbt[$i][$j]);\n+\t}\n+ }\n+\n+ # Finding maximum\n+ $score = -1000;\n+ for ($i=1; $i<=$Lx; $i++) {\n+\tmy $endgappenalty = ($Lx-$i)*$main::g;\n+\tif ($M[$i][$Ly]-$endgappenalty > $score) {\n+\t $score=$M[$i][$Ly]-$endgappenalty; $$imax=$i; $$jmax=$Ly; $state = 1;\n+\t}\n+\tif ($A[$i][$Ly]-$endgappenalty > $score) {\n+\t $score=$A[$i][$Ly]-$endgappenalty; $$imax=$i; $$jmax=$Ly; $state = 2;\n+\t}\n+\tif ($B[$i][$Ly]-$endgappenalty > $score) {\n+\t $score=$B[$i][$Ly]-$endgappenalty; $$imax=$i; $$jmax=$Ly; $state = 3;\n+\t}\n+ }\n+ for ($j=1; $j<$Ly; $j++) {\n+\tmy $endgappenalty = ($Ly-$j)*$main::g;\n+\tif ($M[$Lx][$j]-$endgappenalty > $score) {\n+\t $score=$M[$Lx][$j]-$endgappenalty; $$imax=$Lx; $$jmax=$j; $state = 1;\n+\t}\n+\tif ($A[$Lx][$j]-$endgappenalty > $score) {\n+\t $score=$A[$Lx][$j]-$endgappenalty; $$imax=$Lx; $$jmax=$j; $state = 2;\n+\t}\n+\tif ($B[$Lx][$j]-$endgappenalty > $score) {\n+\t $score=$B[$Lx][$j]-$endgappenalty; $$imax=$Lx; $$jmax=$j; $state = 3;\n+\t}\n+ }\n+\n+ # Make sure the end gapped regions are also backtraced\n+ if ($$jmax<$Ly) {\n+\t$Abt[$Lx][$$jmax+1] = $state;\n+\tfor ($j=$$jmax+2; $j<=$Ly; $j++) {$Abt[$Lx][$j] = 0;}\n+\t$state = 2;\n+ } elsif ($$imax<$Lx) {\n+\t$Bbt[$$imax+1][$Ly] = $state;\n+\tfor ($i=$$imax+2; $i<=$Lx; $i++) {$Bbt[$i][$Ly] = 0;}\n+\t$state = 3;\n+ } else {\n+\t$state = 1;\n+ }\n+\n+\n+\n+ # Backtracing\n+ @$ri=();\n+ @$rj=();\n+\n+ @$rS=();\n+ $i=$Lx; $j=$Ly;\n+ $$xseq=""; $$yseq="";\n+ while ($i || $j) {\n+\tif ($state==1) { \n+\t # current state is M (match-match)\n+\t unshift(@$ri,$i);\n+\t unshift(@$rj,$j);\n+\t $state = $Mbt[$i][$j]+1; # previous state \n+\t $$xseq=$xchr[$i].$$xseq;\n+\t $$yseq=$ychr[$j].$$yseq;\n+\t unshift(@$rS, $Sab[$xres[$i]][$yres[$j]]);\n+\t $$imin=$i; $$jmin=$j;\n+\t $i--; $j--;\n+\t} elsif ($state==2) {\n+\t # current state is A (gap in x)\n+\t unshift(@$ri,0); # $ri->[$col]=0 for gap in $x\n+\t unshift(@$rj,$j);\n+\t $$xseq="-".$$xseq;\n+\t $$yseq=$ychr[$j].$$yseq;\n+\t $bt = $Abt[$i][$j--];\n+\t if ($bt) {\n+\t\t# previous state was M\n+\t\tif ($i==$Lx || $i==0) {\n+\t\t unshift(@$rS,-$main::g); # end gap\n+\t\t} else {\n+\t\t unshift(@$rS,-$dx); # gap opening\n+\t\t}\n+\t\t$state = 1;\n+\t } else {\n+\t\t# previous state was A\n+\t\tif ($i==$Lx || $i==0) {\n+\t\t unshift(@$rS,-$main::g); # end gap\n+\t\t} else {\n+\t\t unshift(@$rS,-$main::e); # gap extension\n+\t\t}\n+\t }\n+\t} else {\n+\t # current state is B (gap in y)\n+\t unshift(@$ri,$i);\n+\t unshift(@$rj,0); # $j[$col]=0 for gap in $y\n+\t $$xseq=$xchr[$i].$$xseq;\n+\t $$yseq="-".$$yseq;\n+\t $bt = $Bbt[$i--][$j];\n+\t if ($bt) {\n+\t\t# previous state was M\n+\t\tif ($j==$Ly || $j==0) {\n+\t\t unshift(@$rS,-$main::g); # end gap\n+\t\t} else {\n+\t\t unshift(@$rS,-$dy); # gap opening\n+\t\t}\n+\t\t$state = 1;\n+\t } else {\n+\t\t# previous state was B\n+\t\tif ($j==$Ly || $j==0) {\n+\t\t unshift(@$rS,-$main::g); # end gap\n+\t\t} else {\n+\t\t unshift(@$rS,-$main::e); # gap extension\n+\t\t}\n+\t }\n+\t}\n+ }\n+\n+ # Set annotation string representing match quality\n+ $$Sstr="";\n+ for (my $col=0; $col<@$ri; $col++) {\n+\tif ($xres[$ri->[$col]] eq $yres[$rj->[$col]]) {\n+\t $$Sstr.=uc($xchr[$ri->[$col]]);\n+\t } elsif ($rS->[$col] > 0 ) {\n+\t\t$$Sstr.="+";\n+\t } else {\n+\t $$Sstr.=".";\n+\t }\n+ }\n+ return $score;\n+}\n+\n+1;\n' |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/linux/lib/hh/scripts/HHPaths.pm --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/external_tools/linux/lib/hh/scripts/HHPaths.pm Wed Nov 01 05:54:28 2017 -0400 |
| [ |
| @@ -0,0 +1,86 @@ +# HHPaths.pm + +# HHsuite version 2.0.15 (June 2012) +# (C) J. Soeding, A. Hauser 2012 + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +# We are very grateful for bug reports! Please contact us at soeding@genzentrum.lmu.de +# HHsuite version 2.0 + +# PLEASE INSERT CORRECT PATHS AT POSITIONS INDICATED BY ... BELOW +# THE ENVIRONMENT VARIABLE HHLIB NEEDS TO BE SET TO YOUR LOCAL HH-SUITE DIRECTORY, +# AS DESCRIBED IN THE HH-SUITE USER GUIDE AND README FILE + +package HHPaths; + +# This block can stay unmodified +use vars qw(@ISA @EXPORT @EXPORT_OK %EXPORT_TAGS $VERSION); +use Exporter; +our $VERSION = "version 2.0.16 (January 2013)"; +our @ISA = qw(Exporter); +our @EXPORT = qw($VERSION $hhlib $hhdata $hhbin $hhscripts $execdir $datadir $ncbidir $dummydb $pdbdir $dsspdir $dssp $cs_lib $context_lib $v); + +############################################################################################## +# PLEASE COMPLETE THE PATHS ... TO PSIPRED AND OLD-STYLE BLAST (NOT BLAST+) (NEEDED FOR PSIPRED) +#our $execdir = ".../psipred/bin"; # path to PSIPRED V2 binaries +#our $datadir = ".../psipred/data"; # path to PSIPRED V2 data files +#our $ncbidir = ".../blast/bin"; # path to NCBI binaries (for PSIPRED in addss.pl) +our $execdir = "/cluster/toolkit/production/bioprogs/psipred/bin"; # path to PSIPRED V2 binaries +our $datadir = "/cluster/toolkit/production/bioprogs/psipred/data"; # path to PSIPRED V2 data files +our $ncbidir = "/cluster/toolkit/production/bioprogs/blast/bin"; # path to NCBI binaries (for PSIPRED in addss.pl) + +############################################################################################## +# PLEASE COMPLETE THE PATHS ... TO YOUR LOCAL PDB FILES, DSSP FILES ETC. +#our $pdbdir = ".../pdb/all"; # where are the pdb files? (pdb/divided directory will also work) +#our $dsspdir = ".../dssp/data"; # where are the dssp files? Used in addss.pl. +#our $dssp = ".../dssp/bin/dsspcmbi"; # where is the dssp binary? Used in addss.pl. +our $pdbdir = "/cluster/databases/pdb/all"; # where are the pdb files? (pdb/divided directory will also work) +our $dsspdir = "/cluster/databases/dssp/data"; # where are the dssp files? Used in addss.pl +our $dssp = "/cluster/databases/dssp/bin/dsspcmbi"; # where is the dssp binary? Used in addss.pl +############################################################################################## + +# The lines below probably do not need to be changed + +# Setting paths for hh-suite perl scripts +our $hhlib = $ENV{"HHLIB"}; # main hh-suite directory +our $hhdata = $hhlib."/data"; # path to data directory for hhblits, example files +our $hhbin = $hhlib."/bin"; # path to cstranslate (path to hhsearch, hhblits etc. should be in environment variable PATH) +our $hhscripts= $hhlib."/scripts"; # path to hh perl scripts (addss.pl, reformat.pl, hhblitsdb.pl etc.) +our $dummydb = $hhdata."/do_not_delete"; # Name of dummy blast db for PSIPRED (single sequence formatted with NCBI formatdb) + +# HHblits data files +our $cs_lib = "$hhdata/cs219.lib"; +our $context_lib = "$hhdata/context_data.lib"; + +# Add hh-suite scripts directory to search path +$ENV{"PATH"} = $hhscripts.":".$ENV{"PATH"}; # Add hh scripts directory to environment variable PATH + +################################################################################################ +### System command with return value parsed from output +################################################################################################ +sub System() +{ + if ($v>=2) {printf("\$ %s\n",$_[0]);} + system($_[0]); + if ($? == -1) { + die("\nError: failed to execute '$_[0]': $!\n\n"); + } elsif ($? != 0) { + printf("\nError: command '$_[0]' returned error code %d\n\n", $? >> 8); + return 1; + } + return $?; +} + +return 1; |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/linux/lib/hh/scripts/addss.pl --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/external_tools/linux/lib/hh/scripts/addss.pl Wed Nov 01 05:54:28 2017 -0400 |
| [ |
| b'@@ -0,0 +1,732 @@\n+#!/usr/bin/env perl\n+#\n+# addss.pl\n+# Add PSIPRED secondary structure prediction (and DSSP annotation) to an MSA or HMMER file.\n+# Output format is A3M (for input alignments) or HMMER (see User Guide).\n+\n+\n+# HHsuite version 2.0.16 (January 2013)\n+#\n+# Reference: \n+# Remmert M., Biegert A., Hauser A., and Soding J.\n+# HHblits: Lightning-fast iterative protein sequence searching by HMM-HMM alignment.\n+# Nat. Methods, epub Dec 25, doi: 10.1038/NMETH.1818 (2011).\n+\n+# (C) Johannes Soeding and Michael Remmert, 2012\n+\n+# This program is free software: you can redistribute it and/or modify\n+# it under the terms of the GNU General Public License as published by\n+# the Free Software Foundation, either version 3 of the License, or\n+# (at your option) any later version.\n+\n+# This program is distributed in the hope that it will be useful,\n+# but WITHOUT ANY WARRANTY; without even the implied warranty of\n+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n+# GNU General Public License for more details.\n+\n+# You should have received a copy of the GNU General Public License\n+# along with this program. If not, see <http://www.gnu.org/licenses/>.\n+\n+# We are very grateful for bug reports! Please contact us at soeding@genzentrum.lmu.de\n+\n+use lib $ENV{"HHLIB"}."/scripts";\n+use HHPaths; # config file with path variables for nr, blast, psipred, pdb, dssp etc.\n+use Align; # Needleman-Wunsch and Smith-Waterman alignment functions\n+use File::Temp qw/ tempfile tempdir /;\n+use strict;\n+\n+my $ss_cit="PSIPRED: Jones DT. (1999) Protein secondary structure prediction based on position-specific scoring matrices. JMB 292:195-202.";\n+\n+\n+# Module needed for aligning DSSP-sequence\n+\n+$|= 1; # Activate autoflushing on STDOUT\n+\n+# Default values:\n+our $v=2; # verbose mode\n+\n+my $numres=0; # number of residues per line for secondary structure\n+my $informat="a3m"; # input format\n+my $neff = 7; # use alignment with this diversity for PSIPRED prediction\n+my $program=$0; # name of perl script\n+my $pdbfile;\n+\n+my $help="\n+addss.pl from HHsuite $VERSION \n+Add PSIPRED secondary structure prediction (and DSSP annotation) to a multiple sequence alignment (MSA) \n+or HMMER (multi-)model file. \n+\n+If the input file is an MSA, the predicted secondary structure and confidence values are added as \n+special annotation sequences with names >ss_pred, >ss_conf, and >ss_dssp to the top of the output \n+A3M alignment. If no output file is given, the output file will have the same name as the input file, \n+except for the extension being replaced by \'.a3m\'. Allowed input formats are A3M (default), \n+A2M/FASTA (-fas, -a2m), CLUSTAL (-clu), STOCKHOLM (-sto), HMMER (-hmm).\n+\n+If the input file contains HMMER models, records SSPRD and SSCON containing predicted secondary \n+structure and confidence values are added to each model. In this case the output file name is \n+obligatory and must be different from the input file name.\n+\n+Usage: perl addss.pl <ali_file> [<outfile>] [-fas|-a3m|-clu|-sto] \n+ or perl addss.pl <hhm_file> <outfile> -hmm \n+\\n";\n+\n+# Variable declarations\n+my $line;\n+my @seqs; # sequences from infile (except >aa_ and >ss_pred sequences)\n+my $query_length;\n+my $header; # header of MSA: everything before first \'>\'\n+my $name; # query in fasta format: \'>$name [^\\n]*\\n$qseq\\n\'\n+my $qseq; # residues of query sequence\n+my $infile;\n+my $outfile;\n+my $ss_pred=""; # psipred ss states\n+my $ss_conf=""; # psipred confidence values\n+my $ss_dssp; # dssp states as string\n+my $sa_dssp; # relative solvent accessibility from dssp as string {A,B,C,D,E} A:absolutely buried, B:buried, E:exposed\n+my $aa_dssp; # residues from dssp file as string\n+my $aa_astr; # residues from infile as string\n+my $q_match; # number of match states in'..b'astr assign aligned dssp state\n+ @ss_dssp = split(//,$ss_dssp);\n+ @sa_dssp = split(//,$sa_dssp);\n+ @aa_dssp = split(//,$aa_dssp);\n+ @aa_astr = split(//,$aa_astr);\n+ my $len = 0;\n+ unshift(@aa_dssp,"-"); #add a gap symbol at beginning -> first residue is at 1!\n+ unshift(@ss_dssp,"-"); #add a gap symbol at beginning -> first residue is at 1!\n+ unshift(@sa_dssp,"-"); #add a gap symbol at beginning -> first residue is at 1!\n+ unshift(@aa_astr,"-"); #add a gap symbol at beginning -> first residue is at 1!\n+ for (my $col=0; $col<@i; $col++) {\n+\tif ($i[$col]>0) {\n+\t if ($j[$col]>0) {$len++;} # count match states (for score/len calculation)\n+\t $ss_dssp_ali[$i[$col]]=$ss_dssp[$j[$col]];\n+\t $sa_dssp_ali[$i[$col]]=$sa_dssp[$j[$col]];\n+\t $aa_dssp_ali[$i[$col]]=$aa_dssp[$j[$col]];\n+\t}\n+\tif ($v>=4) {\n+\t printf ("%s %3i %s %3i\\n",$aa_astr[$i[$col]],$i[$col],$aa_dssp[$j[$col]],$j[$col]);\n+\t}\n+ }\n+ shift (@ss_dssp_ali); # throw out first "-" \n+ shift (@sa_dssp_ali); # throw out first "-" \n+ shift (@aa_dssp_ali); # throw out first "-" \n+ $aa_dssp=join("",@aa_dssp_ali);\n+ $ss_dssp=join("",@ss_dssp_ali);\n+ $sa_dssp=join("",@sa_dssp_ali);\n+\n+ # Debugging output\n+ if ($v>=4) {printf(STDOUT "DSSP: %s: length=%-3i score/len:%-5.3f\\n",$name,$len,$score/$len);}\n+ if ($v>=4) {\n+\tprintf("IN: %s\\n",$xseq);\n+\tprintf("MATCH: %s\\n",$Sstr);\n+\tprintf("DSSP: %s\\n",$yseq);\n+\tprintf("\\n");\n+\tprintf(">ss_dssp $name\\n$ss_dssp\\n");\n+\tprintf(">sa_dssp $name\\n$sa_dssp\\n");\n+\tprintf(">aa_dssp $name\\n$aa_dssp\\n");\n+\tprintf(">aa_astra $name\\n$aa_astr\\n\\n");\n+ } \n+ if ($score/$len<0.5) {\n+\tprintf (STDOUT "\\nWARNING: in $name: alignment score with dssp residues too low: Score/len=%f.\\n\\n",$score/$len);\n+\tprintf("IN: %s\\n",$xseq);\n+\tprintf("MATCH: %s\\n",$Sstr);\n+\tprintf("DSSP: %s\\n",$yseq);\n+\treturn 1;\n+ }\n+\n+ return 0;\n+}\n+\n+################################################################################################\n+### Return solvent accessibility code\n+################################################################################################\n+sub sa2c ()\n+{\n+ my %maxsa = (A=>106, B=>160, C=>135, D=>163, E=>194, F=>197, G=>84, H=>184, I=>169, K=>205, L=>164, M=>188, \n+\t\t N=>157, P=>136, Q=>198, R=>248, S=>130, T=>142, V=>142, W=>227, X=>180, Y=>222, Z=>196); # maximum solvent accessiblity\n+ if ($_[1]=~/[a-z]/) {return "F";} # disulphide bridge\n+ if (!defined $maxsa{$_[1]}) {return "-";} # no amino acid\n+ my $rsa=$_[0]/$maxsa{$_[1]};\n+# printf("aa=%s sa=%5.1f max_sa=%5.1f rsa=%5.3f\\n",$_[1],$_[0],$maxsa{$_[1]},$rsa);\n+ if ($rsa<=0.02) {return "A";}\n+ elsif ($rsa<=0.14) {return "B";}\n+ elsif ($rsa<=0.33) {return "C";}\n+ elsif ($rsa<=0.55) {return "D";}\n+ else {return "E";}\n+}\n+\n+# Find the pdb file with $pdbcode in pdb directory \n+sub OpenPDBfile() {\n+ \n+ my $pdbcode=lc($_[0]);\n+ if (! -e "$pdbdir") {\n+\tif ($v>=3) {print(STDERR "Warning in $program: pdb directory \'$pdbdir\' does not exist!\\n");} \n+\treturn 1;\n+ }\n+ if (-e "$pdbdir/all") {$pdbfile="$pdbdir/all/";}\n+ elsif (-e "$pdbdir/divided") {$pdbfile="$pdbdir/divided/".substr($pdbcode,1,2)."/";}\n+ else {$pdbfile="$pdbdir/";}\n+ if ($pdbdir=~/divided.?$/) {$pdbfile.=substr($pdbcode,1,2)."/";}\n+ if (-e $pdbfile."pdb$pdbcode.ent") {$pdbfile.="pdb$pdbcode.ent";}\n+ elsif (-e $pdbfile."pdb$pdbcode.ent.gz") {$pdbfile="gunzip -c $pdbfile"."pdb$pdbcode.ent.gz |";}\n+ elsif (-e $pdbfile."pdb$pdbcode.ent.Z") {$pdbfile="gunzip -c $pdbfile"."pdb$pdbcode.ent.Z |";}\n+ elsif (-e $pdbfile."$pdbcode.pdb") {$pdbfile."$pdbcode.pdb";}\n+ else {\n+\tif ($v>=3) {printf(STDERR "Warning in $program: Cannot find pdb file $pdbfile"."pdb$pdbcode.ent!\\n");}\n+\treturn "";\n+ }\n+ if (!open (PDBFILE, "$pdbfile")) {\n+\tif ($v>=3) {printf(STDERR "Error in $program: Cannot open pdb file: $!\\n");}\n+\treturn "";\n+ }\n+ return $pdbfile;\n+}\n' |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/linux/lib/hh/scripts/create_profile_from_hhm.pl --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/external_tools/linux/lib/hh/scripts/create_profile_from_hhm.pl Wed Nov 01 05:54:28 2017 -0400 |
| [ |
| @@ -0,0 +1,167 @@ +#!/usr/bin/env perl +# +# create_profile_from_hhm.pl +# Create a profile (.prf) from a given HHM file + +# HHsuite version 2.0.16 (January 2013) +# +# Reference: +# Remmert M., Biegert A., Hauser A., and Soding J. +# HHblits: Lightning-fast iterative protein sequence searching by HMM-HMM alignment. +# Nat. Methods, epub Dec 25, doi: 10.1038/NMETH.1818 (2011). + +# (C) Michael Remmert and Johannes Soeding, 2012 + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +# We are very grateful for bug reports! Please contact us at soeding@genzentrum.lmu.de + +use lib $ENV{"HHLIB"}."/scripts"; +use HHPaths; # config file with path variables for nr, blast, psipred, pdb, dssp etc. +use strict; + +$|= 1; # Activate autoflushing on STDOUT + +# Default values: +our $v=2; # verbose mode + +my $help=" +create_profile_from_hhm.pl from HHsuite $VERSION +Create a profile (.prf) from a given HHM file + +Usage: perl create_profile_from_hhm.pl -i <infile> [-o <outfile>] + +Options: + -i <infile> Input file in HHM format + -o <outfile> Output file in prf-format (default: infile.prf) + + -v [0-5] verbose mode (default: $v) +\n"; + +# Variable declarations +my $line; +my $infile; +my $outfile; +my $i; +my $a; + +my @counts; # count profile +my @neffs; +my $name; # name of HHM profile +my $len; # length of HHM profile + + # A C D E F G H I K L M N P Q R S T V W Y +my @hhmaa2csaa = ( 0, 4, 3, 6, 13, 7, 8, 9, 11, 10, 12, 2, 14, 5, 1, 15, 16, 19, 17, 18); +my @aminoacids = ('A', 'R', 'N', 'D', 'C', 'Q', 'E', 'G', 'H', 'I', 'L', 'K', 'M', 'F', 'P', 'S', 'T', 'W', 'Y', 'V'); +my %aa2i; +for ($a = 0; $a < 20; $a++) { + $aa2i{$aminoacids[$a]} = $a; +} + +############################################################################################### +# Processing command line input +############################################################################################### + +if (@ARGV<1) {die ($help);} + +my $options=""; +for (my $i=0; $i<@ARGV; $i++) {$options.=" $ARGV[$i] ";} + +if ($options=~s/ -i\s+(\S+) //) {$infile=$1;} +if ($options=~s/ -o\s+(\S+) //) {$outfile=$1;} + +if ($options=~s/ -v\s+(\S+) //) {$v=$1;} + +if (!$infile) {print($help); print "ERROR! No input file!\n"; exit(1);} + +if (!$outfile) { + $infile =~ /^(\S+)\.\S+?$/; + $outfile = "$1.prf"; +} + +############################################################################################## +# Main part +############################################################################################## + +###################################### +# Read HHM profile +###################################### +open (IN, $infile); +while ($line = <IN>) { + if ($line =~ /^NAME\s+(\S+)/) { + $name = $1; + } elsif ($line =~ /^LENG\s+(\d+)/) { + $len = $1; + } elsif ($line =~ /^HMM/) { + last; + } +} + +$i = 0; +while ($line = <IN>) { + if ($line =~ /^\/\//) { last; } + + if ($line =~ s/^\S \d+ //) { + + for ($a = 0; $a < 20; $a++) { + $line =~ s/^\s*(\S+)\s/ /; + $counts[$i][$hhmaa2csaa[$a]] = $1; + if ($counts[$i][$hhmaa2csaa[$a]] !~ /\*/ && $counts[$i][$hhmaa2csaa[$a]] == 0) { + $counts[$i][$hhmaa2csaa[$a]] = 1; + } + } + + $line = <IN>; + $line =~ /^\s*\S+\s+\S+\s+\S+\s+\S+\s+\S+\s+\S+\s+\S+\s+(\S+)\s+/; + $neffs[$i] = $1; + + $i++; + } +} + +###################################### +# write count_profile +###################################### + +open (OUT, ">$outfile"); +# Write header +printf(OUT "CountProfile\n"); +printf(OUT "NAME\t%s\n", $name); +printf(OUT "LENG\t%i\n", $len); +printf(OUT "ALPH\t20\n"); # 20 amino acid alphabet +printf(OUT "COUNTS"); +for ($a = 0; $a < 20; $a++) { + printf(OUT "\t%s", $aminoacids[$a]); +} +printf(OUT "\tNEFF\n"); + +# Write profile +for ($i = 0; $i < $len; $i++) { + printf(OUT "%i", $i+1); + for ($a = 0; $a < 20; $a++) { + if ($counts[$i][$a] == '*') { + printf(OUT "\t*"); + } else { + printf(OUT "\t%i", $counts[$i][$a]); + } + } + printf(OUT "\t%i\n", $neffs[$i]); +} + +printf(OUT "//\n"); +close OUT; + +exit; + + |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/linux/lib/hh/scripts/create_profile_from_hmmer.pl --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/external_tools/linux/lib/hh/scripts/create_profile_from_hmmer.pl Wed Nov 01 05:54:28 2017 -0400 |
| [ |
| @@ -0,0 +1,248 @@ +#!/usr/bin/env perl +# +# create_profile_from_hmmer.pl +# Create a profile (.prf) from a given HMMER/HMMER3 file + +# HHsuite version 2.0.16 (January 2013) +# +# Reference: +# Remmert M., Biegert A., Hauser A., and Soding J. +# HHblits: Lightning-fast iterative protein sequence searching by HMM-HMM alignment. +# Nat. Methods, epub Dec 25, doi: 10.1038/NMETH.1818 (2011). + +# (C) Michael Remmert and Johannes Soeding, 2012 + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +# We are very grateful for bug reports! Please contact us at soeding@genzentrum.lmu.de + +use lib $ENV{"HHLIB"}."/scripts"; +use HHPaths; # config file with path variables for nr, blast, psipred, pdb, dssp etc. +use strict; + +$|= 1; # Activate autoflushing on STDOUT + +# Default values: +our $v=2; # verbose mode +my $factor = 1; # mix orig sequence and HMMER profile with this factor (1 = 50/50, 2 = 33/66, 0.5 = 66/33 (orig/HMMER)) +my $scale = 1000; +my $log2 = log(2); + +my $help=" +create_profile_from_hmmer.pl from HHsuite $VERSION +Create a profile (.prf) from a given HMMER/HMMER3 file + +Usage: perl create_profile_from_hmmer.pl -i <infile> [-o <outfile>] + +Options: + -i <infile> Input file in HMMER/HMMER3 format + -o <outfile> Output file in prf-format (default: infile.prf) + + -v [0-5] verbose mode (default: $v) +\n"; + +# Variable declarations +my $line; +my $infile; +my $outfile; +my $i; +my $a; + +my @counts; # count profile (normalised to 1) +my $name; # name of HMMER profile +my $len; # length of HMMER profile +my @hmmer_prof; # HMMER profile + + # A C D E F G H I K L M N P Q R S T V W Y +my @hmmeraa2csaa = ( 0, 4, 3, 6, 13, 7, 8, 9, 11, 10, 12, 2, 14, 5, 1, 15, 16, 19, 17, 18); +my @aminoacids = ('A', 'R', 'N', 'D', 'C', 'Q', 'E', 'G', 'H', 'I', 'L', 'K', 'M', 'F', 'P', 'S', 'T', 'W', 'Y', 'V'); +my %aa2i; +for ($a = 0; $a < 20; $a++) { + $aa2i{$aminoacids[$a]} = $a; +} + +############################################################################################### +# Processing command line input +############################################################################################### + +if (@ARGV<1) {die ($help);} + +my $options=""; +for (my $i=0; $i<@ARGV; $i++) {$options.=" $ARGV[$i] ";} + +if ($options=~s/ -i\s+(\S+) //) {$infile=$1;} +if ($options=~s/ -o\s+(\S+) //) {$outfile=$1;} + +if ($options=~s/ -factor\s+(\S+) //) {$factor=$1;} + +if ($options=~s/ -v\s+(\S+) //) {$v=$1;} + +if (!$infile) {print($help); print "ERROR! No input file!\n"; exit(1);} + +if (!$outfile) { + $infile =~ /^(\S+)\.\S+?$/; + $outfile = "$1.prf"; +} + +############################################################################################## +# Main part +############################################################################################## + +###################################### +# Read HMMER sequence and profile +###################################### +open (IN, $infile); +$line = <IN>; + +if ($line =~ /^HMMER3/) { + while ($line = <IN>) { + if ($line =~ /^NAME\s+(\S+)/) { + $name = $1; + } elsif ($line =~ /^LENG\s+(\d+)/) { + $len = $1; + } elsif ($line =~ /^HMM/) { + last; + } + } + $line = <IN>; $line = <IN>; # Skip header lines + if ($line =~ /^\s*COMPO/) { + $line = <IN>; $line = <IN>; # Skip null model lines + } + # Read profiles and query seq + $i = 0; + while ($line = <IN>) { + if ($line =~ /^\/\//) { last; } + + $line =~ s/^\s*\d+//; # sequence position + for ($a = 0; $a < 20; $a++) { + $line =~ s/^\s*(\S+)\s/ /; + $hmmer_prof[$i][$hmmeraa2csaa[$a]] = exp(-1.0*$1); + } + + # Read query char in count profile + for ($a = 0; $a < 20; $a++) { + $counts[$i][$a] = 0; + } + $line =~ /^\s*\d+\s+(\S)/; + $counts[$i][$aa2i{$1}] = 1; + + $line = <IN>; $line = <IN>; + $i++; + + } +} elsif ($line =~ /^HMMER/) { + my @pb; + while ($line = <IN>) { + if ($line =~ /^NAME\s+(\S+)/) { + $name = $1; + } elsif ($line =~ /^LENG\s+(\d+)/) { + $len = $1; + } elsif ($line =~ /^NULE/) { + $line =~ s/^NULE//; # sequence position + for ($a = 0; $a < 20; $a++) { + $line =~ s/^\s*(\S+)\s/ /; + # pb[a] = (float) 0.05 * fpow2(float(ptr)/HMMSCALE); + $pb[$a] = 0.05 * (2**($1/1000)); + } + } elsif ($line =~ /^HMM/) { + last; + } + } + + + $line = <IN>; $line = <IN>; # Skip header lines + # Read profiles and query seq + $i = 0; + while ($line = <IN>) { + if ($line =~ /^\/\//) { last; } + + $line =~ s/^\s*\d+//; # sequence position + for ($a = 0; $a < 20; $a++) { + $line =~ s/^\s*(\S+)\s/ /; + # prob = pb[a]*fpow2(float(ptr)/HMMSCALE); + $hmmer_prof[$i][$hmmeraa2csaa[$a]] = $pb[$a] * (2**($1/1000)); + } + + # Read query char in count profile + $line = <IN>; + for ($a = 0; $a < 20; $a++) { + $counts[$i][$a] = 0; + } + $line =~ /^\s*(\S)/; + $counts[$i][$aa2i{$1}] = 1; + + $line = <IN>; + $i++; + } + +} else { + print($help); + print "ERROR! Unknown input format!\n"; + exit(1); +} +###################################### +# build count_profile (mix orig sequence and HMMER-profile) +###################################### +for ($i = 0; $i < $len; $i++) { + my $sum = 0; + for ($a = 0; $a < 20; $a++) { + $counts[$i][$a] += $factor * $hmmer_prof[$i][$a]; + $sum += $counts[$i][$a]; + } + # Normalize to one + my $fac = 1 / $sum; + for ($a = 0; $a < 20; $a++) { + $counts[$i][$a] *= $fac; + } +} + +###################################### +# write count_profile +###################################### + +open (OUT, ">$outfile"); +# Write header +printf(OUT "CountProfile\n"); +printf(OUT "NAME\t%s\n", $name); +printf(OUT "LENG\t%i\n", $len); +printf(OUT "ALPH\t20\n"); # 20 amino acid alphabet +printf(OUT "COUNTS"); +for ($a = 0; $a < 20; $a++) { + printf(OUT "\t%s", $aminoacids[$a]); +} +printf(OUT "\tNEFF\n"); + +# Write profile +for ($i = 0; $i < $len; $i++) { + printf(OUT "%i", $i+1); + for ($a = 0; $a < 20; $a++) { + if ($counts[$i][$a] == 0) { + printf(OUT "\t*"); + } else { + printf(OUT "\t%i", int(-(log2($counts[$i][$a]) * $scale)+0.5)); + } + } + printf(OUT "\t%i\n", 1 * $scale); # set Neff to 1 +} + +printf(OUT "//\n"); +close OUT; + +exit; + +sub log2() +{ + my $n = shift; + return (log($n)/$log2); +} |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/linux/lib/hh/scripts/hhblitsdb.pl --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/external_tools/linux/lib/hh/scripts/hhblitsdb.pl Wed Nov 01 05:54:28 2017 -0400 |
| [ |
| b'@@ -0,0 +1,531 @@\n+#!/usr/bin/env perl\n+#\n+# hhblits.pl\n+# Creates HH-suite database files from A3M and HHM/HMMER-formatted files \n+# Usage: Usage: perl hhblitsdb.pl -o <db_name> [-ia3m <a3m_dir>] [-ihhm <hhm_dir>] [-ics <cs_dir>] [more_options]\n+#\n+# HHsuite version 2.0.16 (Sept 2012)\n+#\n+# Reference: \n+# Remmert M., Biegert A., Hauser A., and Soding J.\n+# HHblits: Lightning-fast iterative protein sequence searching by HMM-HMM alignment.\n+# Nat. Methods, epub Dec 25, doi: 10.1038/NMETH.1818 (2011).\n+\n+# (C) Johannes Soeding, 2012\n+\n+# This program is free software: you can redistribute it and/or modify\n+# it under the terms of the GNU General Public License as published by\n+# the Free Software Foundation, either version 3 of the License, or\n+# (at your option) any later version.\n+\n+# This program is distributed in the hope that it will be useful,\n+# but WITHOUT ANY WARRANTY; without even the implied warranty of\n+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n+# GNU General Public License for more details.\n+\n+# You should have received a copy of the GNU General Public License\n+# along with this program. If not, see <http://www.gnu.org/licenses/>.\n+\n+# We are very grateful for bug reports! Please contact us at soeding@genzentrum.lmu.de\n+\n+use lib $ENV{"HHLIB"}."/scripts";\n+use HHPaths; # config file with path variables for nr, blast, psipred, pdb, dssp etc.\n+use strict;\n+#use File::Glob \'bsd_glob\'; # splits patterns delimited by spaces into multiple patterns and applies them using OR\n+\n+$|= 1; # Activate autoflushing on STDOUT\n+\n+# Default values:\n+our $v=2; # verbose mode\n+my $a_if_append = ""; # do not append by default (default: create new db)\n+my $remove = 0; # do not remove by default (default: create new db)\n+my $hhmext = "hhm"; # default HHM-file extension\n+my $csext = "seq219"; # default HHM-file extension\n+my $cpu = 8;\n+\n+# Variable declarations\n+my $line;\n+my $command;\n+my $a3mdir = ""; # name of input A3M directory\n+my $hhmdir = ""; # name of input HHM/HMM directory\n+my $csdir = ""; # name of input cs directory\n+my $a3mfile = ""; # name of packed ouput A3M file \n+my $hhmfile = ""; # name of packed ouput HHM file\n+my $csfile = ""; # name of cs sequence db file\n+my $dbname = ""; # output db name\n+my $logfile = "/dev/null"; # log file \n+my $file;\n+my $numcsfiles= 0;\n+my $num_chars = 0;\n+my $numa3mfiles=0;\n+my $numhhmfiles=0;\n+my $fileglob="";\n+my $help="\n+hhblitsdb.pl from HHsuite $VERSION \n+Builds HH-suite database from a3m formatted MSAs and/or from HMMs (-o).\n+MSAs and HMMs can also be added (-a) to or removed (-r) from an existing database. \n+\n+Usage: hhblitsdb.pl -o|-a|-r <db_name> [-ia3m <a3m_dir>] [-ihhm <hhm_dir>] [-ics <cs_dir>]... \n+\n+With option -o, the following HH-suite database files can be generated:\n+ <db_name>.cs219 column-state sequences, one for each MSA/HMM (for prefilter)\n+ <db_name>.cs219.sizes number of sequences and characters in <db_name>.cs219\n+ <db_name>_a3m_db packed file containing A3M alignments read from <a3m_dir>\n+ <db_name>_a3m_db.index index file for packed A3M file\n+ <db_name>_a3m.db.index.sizes number of lines in <db_name>_a3m_db.index\n+ <db_name>_hhm_db packed file containing HHM-formatted HMMs read from <hhm_dir>\n+ <db_name>_hhm_db.index index file for packed HHM file\n+ <db_name>_hhm_db.index.sizes number of lines in <db_name>_hhm_db.index\n+\n+Options:\n+ -o <db_name> create database with this name\n+ -a <db_name> append files to database with this name\n+ -r <db_name> remove files from database with this name\n+ -ia3m <a3m_dir> input directory (or glob of directories) with A3M-formatted files\n+ These files MUST have extension \'a3m\'.\n+ -ihhm <hhm_dir> input directory (or glob of directories) with HHM (or HMMER) files \n+ These files MUST have extension'..b'csext!?\\n");\n+\tforeach my $line (@lines) {\n+\t if ($line =~ /^>/) {\n+\t\t$line = ">".$seq219file."\\n";\n+\t\t$numcsfiles++;\n+\t } else {\n+\t\t$num_chars += length($line);\n+\t }\n+\t printf(OUT "%s",$line); \t\n+\t}\n+ } \n+ close(OUT);\t\n+ \n+ open (OUT, ">$csfile.sizes");\n+ print OUT "$numcsfiles $num_chars\\n";\n+ close OUT;\n+ \n+ \n+##############################################################################################\n+# Generate hhm files with hhmake from a3m files if no -ihhm directory given\n+##############################################################################################\n+ \n+ if (!$hhmdir) \n+ {\n+\tif ($a3mdir) {\n+\t print("\\nGenerating hhm files in $tmpdir/ from a3m files $a3mdir/\\n\\n");\n+\t $command = "hhmake -i \\$file -o $tmpdir/\\$base.hhm 1>/dev/null 2>>$logfile";\n+\t &HHPaths::System("$hhscripts/multithread.pl \'".$a3mdir."\' \'$command\' -cpu $cpu");\t\n+\t $hhmdir = $tmpdir."/*.$hhmext";;\n+\t $numhhmfiles += scalar(glob("$hhmdir"));\n+\t}\n+ }\n+ \n+ \n+##############################################################################################\n+# Generate packed A3M and HMM files and index files\n+##############################################################################################\n+ \n+ # Generate packed A3M file and index file?\n+ if ($a3mdir ne "") {\n+\tprint "Creating packed A3M database file $a3mfile ...\\n";\n+\t\n+\topen (OUT, ">$tmpdir/a3m.filelist");\n+\tmy @files = glob("$a3mdir");\n+\t$numa3mfiles += scalar(@files);\n+\tforeach $file (@files) {\n+\t print OUT "$file\\n";\n+\t}\n+\tclose OUT;\n+\t\n+\t# Build packed file (concatenated with \'\\0\' as delimiters) and index file from files in file list\n+\t# The ffindex binaries are contained in <install_dir>/lib/ffindex/bin/\n+\t$command = "ffindex_build -".$a_if_append."s -f $tmpdir/a3m.filelist $a3mfile $a3mfile.index";\n+\t&HHPaths::System($command);\n+\t\n+\topen (OUT, ">$a3mfile.index.sizes");\n+\tprint OUT "$numa3mfiles\\n";\n+\tclose OUT;\n+ } \n+ \n+ # Generate packed HHMM file and index file?\n+ if ($hhmdir ne "") {\n+\tprint "Creating packed HHM database file $hhmfile ...\\n";\n+\t\n+\topen (OUT, ">$tmpdir/hhm.filelist");\n+\tmy @files = glob("$hhmdir");\n+\t$numhhmfiles += scalar(@files);\n+\tforeach $file (@files) {\n+\t print OUT "$file\\n";\n+\t}\n+\tclose OUT;\n+\t\n+\t# Build packed file (concatenated with \'\\0\' as delimiters) and index file from files in file list\n+\t# The ffindex binaries are contained in <install_dir>/lib/ffindex/bin/\n+\t$command = "ffindex_build -".$a_if_append."s -f $tmpdir/hhm.filelist $hhmfile $hhmfile.index";\n+\t&HHPaths::System($command);\n+\t\n+\topen (OUT, ">$hhmfile.index.sizes");\n+\tprint OUT "$numhhmfiles\\n";\n+\tclose OUT;\n+ }\n+} # end if $remove==0\n+\n+print("\\n");\n+printf("New number of a3m files in db: %i\\n",$numa3mfiles);\n+printf("New number of $hhmext files in db: %i\\n",$numhhmfiles);\n+printf("New number of $csext files in db: %i\\n\\n",$numcsfiles);\n+\n+my $err=0;\n+if ($numa3mfiles && $numhhmfiles && $numa3mfiles != $numhhmfiles) {\n+ print("**************************************************************************\n+WARNING: Number of a3m files not equal to number of $hhmext files\\n"); $err=1;\n+}\n+if ($numcsfiles && $numhhmfiles && $numcsfiles != $numhhmfiles) {\n+ print("**************************************************************************\n+WARNING: Number of $csext files not equal to number of $hhmext files\\n"); $err=1;\n+}\n+if ($numcsfiles && $numa3mfiles && $numcsfiles != $numa3mfiles) {\n+ print("**************************************************************************\n+WARNING: Number of $csext files not equal to number of a3m files\\n"); $err=1;\n+}\n+\n+if ($err==1) {print("**************************************************************************\n+$tmpdir will not be removed to check for missing files\n+**************************************************************************\\n");}\n+elsif ($v<3) {\n+ $command = "rm -rf $tmpdir";\n+# &System($command);\n+}\n+wait;\n+exit;\n+\n' |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/linux/lib/hh/scripts/hhmakemodel.pl --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/external_tools/linux/lib/hh/scripts/hhmakemodel.pl Wed Nov 01 05:54:28 2017 -0400 |
| [ |
| b'@@ -0,0 +1,1278 @@\n+#! /usr/bin/env perl\n+#\n+# hhmakemodel.pl \n+# Generate a model from an output alignment of hhsearch. \n+# Usage: hhmakemodel.pl -i file.out (-ts file.pdb|-al file.al) [-m int|-m name|-m auto] [-pdb pdbdir] \n+\n+# (C) Johannes Soeding 2012\n+\n+# HHsuite version 2.0.16 (January 2013)\n+#\n+# Reference: \n+# Remmert M., Biegert A., Hauser A., and Soding J.\n+# HHblits: Lightning-fast iterative protein sequence searching by HMM-HMM alignment.\n+# Nat. Methods, epub Dec 25, doi: 10.1038/NMETH.1818 (2011).\n+\n+# This program is free software: you can redistribute it and/or modify\n+# it under the terms of the GNU General Public License as published by\n+# the Free Software Foundation, either version 3 of the License, or\n+# (at your option) any later version.\n+\n+# This program is distributed in the hope that it will be useful,\n+# but WITHOUT ANY WARRANTY; without even the implied warranty of\n+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n+# GNU General Public License for more details.\n+\n+# You should have received a copy of the GNU General Public License\n+# along with this program. If not, see <http://www.gnu.org/licenses/>.\n+\n+# We are very grateful for bug reports! Please contact us at soeding@genzentrum.lmu.de\n+\n+use lib $ENV{"HHLIB"}."/scripts";\n+use HHPaths; # config file with path variables for nr, blast, psipred, pdb, dssp etc.\n+use strict;\n+use Align;\n+\n+\n+$|=1; # force flush after each print\n+\n+# Default parameters\n+our $d=7; # gap opening penalty for Align.pm; more than 2 mismatches - 2 matches ## previously: 1\n+our $e=0.01; # gap extension penatlty for Align.pm; allow to leave large gaps bridging uncrystallized regions ## previously: 0.1\n+our $g=0.1; # endgap penalty for Align.pm; allow to shift SEQRES residues for uncrystallized aas to ends of alignment ## previously: 0.9\n+my $v=2; # 3: DEBUG\n+\n+my $formatting="CASP"; # CASP or LIVEBENCH\n+my $servername="My server"; # \n+my $MINRES=30; # minumum number of new query residues required for a hit to be used as additional parent\n+my $infile="";\n+my $outfile="";\n+my $outformat="fas";\n+my $pickhits="1 "; # default: build one model from best hit \n+my $Pthr=0;\n+my $Ethr=0;\n+my $Prob=0;\n+my $shift=0; # ATTENTION: set to 0 as default! \n+my $NLEN=14; # length of the name field in alignments of hhsearch-output \n+my $NUMRES=100; # number of residues per line in FASTA, A2M, PIR format\n+my $program=$0; # name of perl script\n+my $usage="\n+hhmakemodel.pl from HHsuite $VERSION \n+From the top hits in an hhsearch output file (hhr), you can \n+ * generate a MSA (multiple sequence alignment) containing all representative \n+ template sequences from all selected alignments (options -fas, -a2m, -a3m, -pir) \n+ * generate several concatenated pairwise alignments in AL format (option -al)\n+ * generate several concatenated coarse 3D models in PDB format (option -ts) \n+In PIR, PDB and AL format, the pdb files are required in order to read the pdb residue numbers \n+and ATOM records.\n+The PIR formatted file can be used directly as input to the MODELLER homology modelling package.\n+Usage: $program [-i] file.hhr [options]\n+\n+ Options:\n+ -i <file.hhr> results file from hhsearch with hit list and alignments\n+ -fas <file.fas> write a FASTA-formatted multiple alignment to file.fas\n+ -a2m <file.a2m> write an A2M-formatted multiple alignment to file.a2m\n+ -a3m <file.a3m> write an A3M-formatted multiple alignment to file.a3m\n+ -m <int> [<int> ...] pick hits with specified indices (default=\'-m 1\')\n+ -p <probability> minimum probability threshold (default=$Pthr) \n+ -e <E-value> maximum E-value threshold (default=$Ethr) \n+ -q <query_ali> use the full-length query sequence in the alignment \n+ (not only the aligned part);\n+ the query alignment file must b'..b'##\n+# Convert three-letter amino acid code into one-letter code\n+##################################################################################\n+sub Three2OneLetter {\n+ my $res=uc($_[0]);\n+ if ($res eq "GLY") {return "G";}\n+ elsif ($res eq "ALA") {return "A";}\n+ elsif ($res eq "VAL") {return "V";}\n+ elsif ($res eq "LEU") {return "L";}\n+ elsif ($res eq "ILE") {return "I";}\n+ elsif ($res eq "MET") {return "M";}\n+ elsif ($res eq "PHE") {return "F";}\n+ elsif ($res eq "TYR") {return "Y";}\n+ elsif ($res eq "TRP") {return "W";}\n+ elsif ($res eq "ASN") {return "N";}\n+ elsif ($res eq "ASP") {return "D";}\n+ elsif ($res eq "GLN") {return "Q";}\n+ elsif ($res eq "GLU") {return "E";}\n+ elsif ($res eq "CYS") {return "C";}\n+ elsif ($res eq "PRO") {return "P";}\n+ elsif ($res eq "SER") {return "S";}\n+ elsif ($res eq "THR") {return "T";}\n+ elsif ($res eq "LYS") {return "K";}\n+ elsif ($res eq "HIS") {return "H";}\n+ elsif ($res eq "ARG") {return "R";}\n+\n+ # The HETATM selenomethionine is read by MODELLER like a normal MET in both its HETATM_IO=off and on mode!\n+ elsif ($res eq "MSE") {return "M";} # SELENOMETHIONINE \n+ elsif ($res eq "ASX") {return "B";}\n+ elsif ($res eq "GLX") {return "Z";}\n+ else {return "X";}\n+\n+ # The following post-translationally modified residues are ignored by MODELLER in its default SET HETATM_IO=off mode\n+# elsif ($res eq "SEC") {return "C";} # SELENOCYSTEINE\n+# elsif ($res eq "SEP") {return "S";} # PHOSPHOSERINE \n+# elsif ($res eq "TPO") {return "T";} # PHOSPHOTHREONINE \n+# elsif ($res eq "TYS") {return "Y";} # SULFONATED TYROSINE \n+# elsif ($res eq "KCX") {return "K";} # LYSINE NZ-CARBOXYLIC ACID\n+}\n+\n+##################################################################################\n+# Convert one-letter amino acid code into three-letter code\n+##################################################################################\n+sub One2ThreeLetter {\n+ my $res=uc($_[0]);\n+ if ($res eq "G") {return "GLY";}\n+ elsif ($res eq "A") {return "ALA";}\n+ elsif ($res eq "V") {return "VAL";}\n+ elsif ($res eq "L") {return "LEU";}\n+ elsif ($res eq "I") {return "ILE";}\n+ elsif ($res eq "M") {return "MET";}\n+ elsif ($res eq "F") {return "PHE";}\n+ elsif ($res eq "Y") {return "TYR";}\n+ elsif ($res eq "W") {return "TRP";}\n+ elsif ($res eq "N") {return "ASN";}\n+ elsif ($res eq "D") {return "ASP";}\n+ elsif ($res eq "Q") {return "GLN";}\n+ elsif ($res eq "E") {return "GLU";}\n+ elsif ($res eq "C") {return "CYS";}\n+ elsif ($res eq "P") {return "PRO";}\n+ elsif ($res eq "S") {return "SER";}\n+ elsif ($res eq "T") {return "THR";}\n+ elsif ($res eq "K") {return "LYS";}\n+ elsif ($res eq "H") {return "HIS";}\n+ elsif ($res eq "R") {return "ARG";}\n+ elsif ($res eq "U") {return "SEC";}\n+ elsif ($res eq "B") {return "ASX";}\n+ elsif ($res eq "Z") {return "GLX";}\n+ else {return "UNK";}\n+}\n+\n+# Find the pdb file with $pdbcode in pdb directory \n+sub FindPDBfile() {\n+ \n+ my $pdbcode=lc($_[0]);\n+ foreach $pdbdir (@pdbdirs) {\n+\tif (! -e "$pdbdir") {warn("Warning in $program: pdb directory \'$pdbdir\' does not exist!\\n"); next;}\n+\tif (-e "$pdbdir/all") {$pdbfile="$pdbdir/all/";}\n+\telsif (-e "$pdbdir/divided") {$pdbfile="$pdbdir/divided/".substr($pdbcode,1,2)."/";}\n+\telse {$pdbfile="$pdbdir/";}\n+\tif ($pdbdir=~/divided.?$/) {$pdbfile.=substr($pdbcode,1,2)."/";}\n+\tif (-e $pdbfile."pdb$pdbcode.ent") {$pdbfile.="pdb$pdbcode.ent";}\n+\telsif (-e $pdbfile."pdb$pdbcode.ent.gz") {$pdbfile="gunzip -c $pdbfile"."pdb$pdbcode.ent.gz |";}\n+\telsif (-e $pdbfile."pdb$pdbcode.ent.Z") {$pdbfile="gunzip -c $pdbfile"."pdb$pdbcode.ent.Z |";}\n+\telsif (-e $pdbfile."$pdbcode.pdb") {$pdbfile.="$pdbcode.pdb";}\n+\telse {next;}\n+\treturn $pdbfile;\n+ }\n+ printf(STDERR "Warning in $program: Cannot find pdb file $pdbfile"."pdb$pdbcode.ent!\\n"); \n+ return "";\n+}\n' |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/linux/lib/hh/scripts/multithread.pl --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/external_tools/linux/lib/hh/scripts/multithread.pl Wed Nov 01 05:54:28 2017 -0400 |
| [ |
| @@ -0,0 +1,179 @@ +#!/usr/bin/env perl +# +# multithread.pl: +# Run a command with different file names as arguments on multiple threads in parallel +# Usage: multithread.pl <fileglob> '<command>' [-cpu <int>] +# +# +# HHsuite version 2.0.16 (January 2013) +# +# Reference: +# Remmert M., Biegert A., Hauser A., and Soding J. +# HHblits: Lightning-fast iterative protein sequence searching by HMM-HMM alignment. +# Nat. Methods, epub Dec 25, doi: 10.1038/NMETH.1818 (2011). + +# (C) Johannes Soeding, 2012 + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +# We are very grateful for bug reports! Please contact us at soeding@genzentrum.lmu.de + +use lib $ENV{"HHLIB"}."/scripts"; +use HHPaths; # config file with path variables for nr, blast, psipred, pdb, dssp etc. +use strict; +use POSIX; + +# Variables +my $cpu=8; # number of cpus to use +my $parent_pid=$$; # main process id +my $pid; # process id of child +my %pid=(); # hash has all running PIDs as keys and the file name as data +my $children=0; # number of child processes running +my $options=""; +my $file; +my $ifile=0; +my $v=1; +my $numerr=0; + +if (scalar(@ARGV)<2) { + die(" +multithread.pl from HHsuite $VERSION +Run a command for many files in parallel using multiple threads +Usage: multithread.pl '<fileglob>' '<command>' [-cpu <int>] [-v {0,1,2}] + +<command> can include symbol + \$file for the full filename, e.g. /tmp/hh/1c1g_A.a3m, + \$name for the filename without extension, e.g. /tmp/hh/1c1g_A, and + \$base for the filename without extension and path, e.g. 1c1g_A. + + -cpu <int> number of threads to launch (default = $cpu) + -v {0,1,2} verbose mode (default = $v) + +Example: multithread.pl '*.a3m' 'hhmake -i \$file 1>\$name.log 2>>error.log' -cpu 16 +\n"); +} + +$|=1; # autoflush on + + +my @files=glob($ARGV[0]); +my $command=$ARGV[1]; +$SIG{'CHLD'}='IGNORE'; +$SIG{'USR1'}=\&ChildFinished; +$SIG{'INT'} =\&KillAllProcesses; + +if (@ARGV>2) { + $options.=join(" ",@ARGV[2..$#ARGV]); +} +# Set number of cpus to use +if ($options=~s/-cpu\s*(\d+)\s*//g) {$cpu=$1;} +if ($options=~s/-v\s*(\d+)\s*//g) {$v=$1;} + +# Warn if unknown options found +if ($options!~/^\s*$/) {$options=~s/^\s*(.*?)\s*$/$1/g; print("WARNING: unknown options '$options'\n");} + +if ($v>=1) {print (scalar(@files)." files read in ...\n");} + +foreach $file (@files) { + $ifile++; + + # All cpus occupied? -> wait for a cpu to become free + if ($children>=$cpu) { + if ($v>=2) {print("\nParent $$ is sleeping (children=$children) ");} + my $count=0; + while ($children>=$cpu) { + if ($count++>=10) { + $count=0; + if ($v>=2) {print("\nProcesses running:");} + $children=0; + foreach $pid (keys(%pid)) { + if (! kill(0,$pid)) { # kill($pid,0) returns false if process is dead (finished) + if ($v>=2) {printf("\nPID %5.5s: %s is removed from process table",$pid,$pid{$pid});} + delete($pid{$pid}); # remove process from hash of PIDs + } else { + if ($v>=2) {printf("\nPID %5.5s: %s",$pid,$pid{$pid});} + $children++; # In case a USR1 signal was caught twice (??) + } + } + if ($v>=2) {print("\n");} + } else { + if ($v==1) {print(".");} + select(undef, undef, undef, 0.1); # sleep 0.1 seconds + } + } + } + + if ($pid=fork()) { + # Main process + $children++; + $pid{$pid}="$file ($ifile)"; + + # Print out running processes and remove defunct ones + select(undef, undef, undef, 0.1); # sleep 0.1 seconds + + } elsif (defined $pid) { + # Child process + my $name; # filename without extension + my $base; # basename without path + if ($file =~/(.*)\..*?$/) {$name=$1;} else {$name=$file;} + if ($name =~/.*\/(.*?)$/) {$base=$1;} else {$base=$name;} + my $lcommand = $command; # need local variable for thread + $lcommand=~s/\$file/$file/g; + $lcommand=~s/\$name/$name/g; + $lcommand=~s/\$base/$base/g; + &System("$lcommand"); + if ($v>=2) {printf("\nProcess $$ for file %s (%i) finished.",$file,$ifile);} + kill(USR1 => $parent_pid); + $SIG{'CHLD'}='IGNORE'; + exit; + } else { + die("\nError: fork returned undefined PID: $!\n"); + } +} + +# Wait for all children to finish +while (wait() != -1) {} + +if ($v>=1) {print ("\nAll processes should be finished now\n");} +if ($numerr>0) {print(STDERR "WARNING: $numerr commands returned with error code.\n");} +exit(0); + + +sub ChildFinished() { + $children--; + $SIG{'USR1'}=\&ChildFinished; + if ($v>=2) {printf("\nChildren counter reduced to children=$children",$file,$ifile);} + return; +} + +sub KillAllProcesses() +{ + foreach $pid (keys(%pid)) { + if ($v>=2) {printf("\nKill process $pid: returned %i\n",kill(-9,$pid));} + } + die ("\nInterrupt: Killed main process $$\n"); +} + +################################################################################################ +### System command +################################################################################################ +sub System { + if ($v>=2) {print("\n");} + if ($v>=1) {print("\n".$_[0]," ");} + if (system($_[0])) { +# Why is always -1 returned??? +# print(STDERR "\nERROR: command '$command' returned error code $?\n"); +# $numerr++; + }; +} |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/linux/lib/hh/scripts/reformat.pl --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/external_tools/linux/lib/hh/scripts/reformat.pl Wed Nov 01 05:54:28 2017 -0400 |
| [ |
| b'@@ -0,0 +1,825 @@\n+#! /usr/bin/env perl\n+\n+# reformat.pl \n+# Reformat a multiple alignment file\n+#\n+# HHsuite version 2.0.16 (January 2013)\n+#\n+# Reference: \n+# Remmert M., Biegert A., Hauser A., and Soding J.\n+# HHblits: Lightning-fast iterative protein sequence searching by HMM-HMM alignment.\n+# Nat. Methods, epub Dec 25, doi: 10.1038/NMETH.1818 (2011).\n+\n+# (C) Johannes Soeding, 2012\n+\n+# This program is free software: you can redistribute it and/or modify\n+# it under the terms of the GNU General Public License as published by\n+# the Free Software Foundation, either version 3 of the License, or\n+# (at your option) any later version.\n+\n+# This program is distributed in the hope that it will be useful,\n+# but WITHOUT ANY WARRANTY; without even the implied warranty of\n+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n+# GNU General Public License for more details.\n+\n+# You should have received a copy of the GNU General Public License\n+# along with this program. If not, see <http://www.gnu.org/licenses/>.\n+\n+# We are very grateful for bug reports! Please contact us at soeding@genzentrum.lmu.de\n+\n+use lib $ENV{"HHLIB"}."/scripts";\n+use HHPaths; # config file with path variables for nr, blast, psipred, pdb, dssp etc.\n+use strict;\n+use warnings;\n+my $numres=100; # number of residues per line\n+my $desclen=1000; # maximum number of characters in nameline\n+my $ARGC=scalar(@ARGV);\n+if ($ARGC<2) {\n+ die("\n+reformat.pl from HHsuite $VERSION \n+Read a multiple alignment in one format and write it in another format\n+Usage: reformat.pl [informat] [outformat] infile outfile [options] \n+ or reformat.pl [informat] [outformat] \'fileglob\' .ext [options] \n+\n+Available input formats:\n+ fas: aligned fasta; lower and upper case equivalent, \'.\' and \'-\' equivalent\n+ a2m: aligned fasta; inserts: lower case, matches: upper case, deletes: \'-\',\n+ gaps aligned to inserts: \'.\'\n+ a3m: like a2m, but gaps aligned to inserts MAY be omitted\n+ sto: Stockholm format; sequences in several blocks with sequence name at \n+ beginning of line (hmmer output)\n+ psi: format as read by PSI-BLAST using the -B option (like sto with -M first -r)\n+ clu: Clustal format; sequences in several blocks with sequence name at beginning \n+ of line\n+Available output formats:\n+ fas: aligned fasta; all gaps \'-\'\n+ a2m: aligned fasta; inserts: lower case, matches: upper case, deletes: \'-\', gaps \n+ aligned to inserts: \'.\'\n+ a3m: like a2m, but gaps aligned to inserts are omitted\n+ sto: Stockholm format; sequences in just one block, one line per sequence\n+ psi: format as read by PSI-BLAST using the -B option \n+ clu: Clustal format\n+If no input or output format is given the file extension is interpreted as format \n+specification (\'aln\' as \'clu\')\n+\n+Options:\n+ -v int verbose mode (0:off, 1:on)\n+ -num add number prefix to sequence names: \'name\', \'1:name\' \'2:name\' etc\n+ -noss remove secondary structure sequences (beginning with >ss_)\n+ -sa do not remove solvent accessibility sequences (beginning with >sa_)\n+ -M first make all columns with residue in first seuqence match columns \n+ (default for output format a2m or a3m)\n+ -M int make all columns with less than X% gaps match columns \n+ (for output format a2m or a3m)\n+ -r remove all lower case residues (insert states) \n+ (AFTER -M option has been processed)\n+ -r int remove all lower case columns with more than X% gaps\n+ -g \'\' suppress all gaps\n+ -g \'-\' write all gaps as \'-\'\n+ -uc write all residues in upper case (AFTER all other options have been processed)\n+ -lc write all residues in lower case (AFTER all other options have been processed)\n+ -l number of residues per line (for Clustal, FASTA, A2M, A3M formats) \n+ '..b' $names[0],$len,$names[$k],length($seqs[$k]));\n+\t\tif ($v>=3) {\n+\t\t printf("%.20s %s\\n%.20s %s\\n\\n",$names[0],$seqs[0],$names[$k],$seqs[$k]);\n+\t\t}\n+\t\texit 1;\n+\t }\n+\t}\n+ }\n+\n+\n+ ####################################################\n+ # Remove html tags\n+ ####################################################\n+ for($k=0; $k<$n; $k++) {\t\n+\t$names[$k]=~s/<[A-Za-z\\/].*?>//g; # remove html tags\n+ }\n+\n+\n+\n+################################################################################################\n+# Output part\n+################################################################################################\n+ \n+ my $ndssp=-1;\n+ my $nsa=-1;\n+ my $npred=-1;\n+ my $nconf=-1;\n+ my $nquery=-1;\n+ for ($k=0; $k<$n; $k++) {\n+\tif ($names[$k]=~/^ss_dssp/){$ndssp=$k; }\n+\telsif ($names[$k]=~/^sa_dssp/){$nsa=$k; }\n+\telsif ($names[$k]=~/^ss_pred/){$npred=$k; }\n+\telsif ($names[$k]=~/^ss_conf/){$nconf=$k; }\n+\telsif ($nquery==-1 && $names[$k]!~/^aa_/) {$nquery=$k;}\n+ }\n+\n+ #Write sequences into output file\n+ open (OUTFILE, ">$outfile") or die ("cannot open $outfile:$!\\n");\n+ if ($outformat eq "sto" || $outformat eq "psi") {\n+\tmy $refline; \n+\tif ($outformat eq "sto") {\n+\t print(OUTFILE "# STOCKHOLM 1.0\\n\\n");\n+\n+\t # Write reference annotation line for match states (-M first)\n+\t if (!$lname) {$lname=32;}\n+\t $names[$nquery]=~/^\\S+\\s+(.*)/;\n+\t printf(OUTFILE "%-$lname.$lname"."s %s\\n","#=GF DE",$1);\n+\t $refline=$seqs[$nquery]; \n+\t $refline=~s/[a-z]/-/g;\n+\t printf(OUTFILE "%-$lname.$lname"."s %s\\n","#=GC RF",$refline);\n+\t if ($ndssp>=0) {\n+\t\tprintf(OUTFILE "%-32.32s %s\\n","#=GC SS_cons",$seqs[$ndssp]);\n+\t }\n+\t} \n+\tif ($num) {\n+\t my $num=2;\n+\t for ($k=0; $k<$n; $k++) {\n+\t\tif ($k==$ndssp || $k==$npred || $k==$nconf || $k==$nquery) {next;}\n+\t\t$names[$k]=~s/^(\\S+)\\#\\d+/$1/;\n+\t\t$names[$k]=~s/^(\\S{1,25})\\S+/$1\\#$num/;\n+\t\t$num++;\n+\t }\n+\t}\n+\tfor ($k=0; $k<$n; $k++) {\n+\t if ($k==$ndssp || $k==$npred || $k==$nconf) {next;}\n+\t $names[$k] =~ /\\s*(\\S+)/;\n+\t if (!$lname) {$lname=32;}\n+\t printf(OUTFILE "%-$lname.$lname"."s %s\\n",$1,$seqs[$k]);\n+\t}\n+\tif ($outformat eq "sto") {print(OUTFILE "//\\n");}\t\n+ } elsif ($outformat eq "clu") {\n+\tprintf(OUTFILE "CLUSTAL\\n\\n\\n");\n+\tif ($num) {\n+\t my $num=2;\n+\t for ($k=0; $k<$n; $k++) {\n+\t\tif ($k==$ndssp || $k==$npred || $k==$nconf || $k==$nquery) {next;}\n+\t\t$names[$k]=~s/^(\\S+)\\#\\d+/$1/;\n+\t\t$names[$k]=~s/^(\\S{1,10})\\S*/$1\\#$num/;\n+\t\t$num++;\n+\t }\n+\t}\n+\twhile($seqs[0] ne "") { # While there are still residues left\n+\t for ($k=0; $k<scalar(@names); $k++) { # go through all sequences\n+\t\t$names[$k] =~ s/\\s*(\\S+).*/$1/;\n+\t\t$seqs[$k]=~s/(\\S{1,$numres})//; # remove the leftmost (up to) 60 residues from sequence $nseq\n+\t\tif (!$lname) {$lname=18;}\n+\t\tprintf(OUTFILE "%-$lname.$lname"."s %s\\n",$names[$k],$1); # and print them after the sequence name\n+\t }\n+\t print(OUTFILE "\\n"); # leave a blank line after each block of 60 residues\n+\t}\n+ } else {\n+\tif ($num) {\n+\t my $num=2;\n+\t for ($k=0; $k<$n; $k++) {\n+\t\tif ($k==$ndssp || $k==$npred || $k==$nconf || $k==$nquery) {next;}\n+\t\t$names[$k]=~s/^(\\S+)\\#\\d+/$1/;\n+\t\t$names[$k]=~s/^(\\S{1,25})\\S+/$1\\#$num/;\n+#\t\t$names[$k]=~s/^(\\S+)/$1\\#$num/;\n+\t\t$num++;\n+\t }\n+\t}\n+\tif ($titleline ne "" && $outformat eq "a3m") {\n+\t printf(OUTFILE "%s\\n",$titleline);\n+\t}\n+\tfor ($k=0; $k<$n; $k++) {\n+\t $seqs[$k]=~s/(\\S{$numres})/$1\\n/g;\n+\t printf(OUTFILE ">%s\\n%s\\n",$names[$k],$seqs[$k]);\n+\t}\n+ }\n+ \n+ close OUTFILE;\n+ if ($v>=2) {\n+\tif ($nin==1) {print("Reformatted $infile with 1 sequence from $informat to $outformat and written to file $outfile\\n");}\n+\telse {\n+\t if (!$nin==$n) {printf("Removed %i sequences which contained no residues\\n",$nin-$n); }\n+\t print("Reformatted $infile with $n sequences from $informat to $outformat and written to file $outfile\\n");\n+\t}\n+ }\n+ \n+ return;\n+}\n' |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 external_tools/linux/lib/hh/scripts/splitfasta.pl --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/external_tools/linux/lib/hh/scripts/splitfasta.pl Wed Nov 01 05:54:28 2017 -0400 |
| [ |
| @@ -0,0 +1,129 @@ +#! /usr/bin/env perl +# splitfasta.pl +# Split a file with multiple, FASTA formatted sequences into many single-sequence FASTA files +# +# (C) Johannes Soeding, 2012 +# +# HHsuite version 2.0.15 (June 2012) +# +# Reference: +# Remmert M., Biegert A., Hauser A., and Soding J. +# HHblits: Lightning-fast iterative protein sequence searching by HMM-HMM alignment. +# Nat. Methods, epub Dec 25, doi: 10.1038/NMETH.1818 (2011). + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +# We are very grateful for bug reports! Please contact us at soeding@genzentrum.lmu.de + +use lib $ENV{"HHLIB"}."/scripts"; +use HHPaths; # config file with path variables for nr, blast, psipred, pdb, dssp etc. +use strict; +use warnings; + +my $ext="seq"; +my $usage=" +splitfasta.pl from HHsuite $VERSION +Split a file with multiple, FASTA formatted sequences into multiple single-sequence FASTA files. +Write files into current directory and name each file by the first word after \">\" in the name line. + +Usage: splitfasta.pl infile [option] +Option: +-fam : use family-based name (for SCOP/ASTRAL sequences +-name : use sequence name as file name (default) +-ext <ext> : extension for sequence files (default=$ext) +\n"; + +if (@ARGV<1) {die $usage;;} + +my $line; +my $infile=$ARGV[0]; +my $outfile; +my $sequence=""; +my $options=""; +my $fam=0; # option -fam? +my $famid=""; +my %numfams=(); +my $n=0; # number of name lines read in so far + +if (@ARGV>1) { + $options.=join(" ",@ARGV[1..$#ARGV]); +} + +# Set number of cpus to use +if ($options=~s/-fam//g) {$fam=1;} +if ($options=~s/-name//g) {$fam=0;} +if ($options=~s/-ext\s+(\S+)//g) {$ext=$1;} + + +open (INFILE,"<$infile") || die("ERROR: Can't open $infile: $!\n"); + +if ($fam) { + + while ($line=<INFILE>) { + if ($line=~/^>(\S+)\s+(\S+)/) { + $famid=$2; + if ($n) { + open (OUTFILE,">$outfile") || die("ERROR: Can't open $outfile: $!\n"); + print(OUTFILE $sequence); + close(OUTFILE); + } + if (defined $numfams{$fam}) {$numfams{$fam}++;} else {$numfams{$fam}=1}; + $outfile="$fam.".$numfams{$fam}.".seq"; + $sequence=$line; + $n++; + } else { + $sequence.=$line; + } + } + if ($n) { + open (OUTFILE,">$outfile") || die("ERROR: Can't open $outfile: $!\n"); + print(OUTFILE $sequence); + close(OUTFILE); + } + +} else { + + my %exists=(); + while ($line=<INFILE>) { + if ($line=~/^>(\S+)/) { + if ($n) { + open (OUTFILE,">$outfile") || die("ERROR: Can't open $outfile: $!\n"); + print(OUTFILE $sequence); + close(OUTFILE); + } + if ($exists{$1}) {print("\nWarning: id $1 appears more than once in $infile\n");} + $exists{$1}=1; + my $tmp = $1; + $tmp =~ s/\|/_/g; + $tmp =~ s/\./_/g; + $outfile="$tmp.seq"; + $sequence=$line; + $n++; + } else { + $sequence.=$line; + } + } + if ($n) { + open (OUTFILE,">$outfile") || die("ERROR: Can't open $outfile: $!\n"); + print(OUTFILE $sequence); + close(OUTFILE); + } +} + + +close(INFILE); +printf("Created %i sequence files\n",$n); + + + |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 hammock.xml --- a/hammock.xml Fri Oct 20 02:50:43 2017 -0400 +++ b/hammock.xml Wed Nov 01 05:54:28 2017 -0400 |
| b |
| @@ -1,4 +1,4 @@ -<tool id="hammock_1.0" name="Hammock - cluster peptides" version="1.1.0" hidden="false"> +<tool id="hammock_1.0" name="Hammock - cluster peptides" version="1.1.1" hidden="false"> <description>Clusters short peptide sequences</description> @@ -233,11 +233,11 @@ </when> </conditional> - <param name="min_match_states" type="integer" value="4" min="0" label="Minimal number of HMM match states." help=" Minimal number of match states maintained for each cluster's HMM throughout the computation. This parameter can be also viewed as minimal motif length. See -h, --min match states in the manual for details."/> + <param name="min_match_states" type="integer" value="4" min="0" label="Minimal number of conserved positions." help=" Minimal number of match conserved MSA positions maintained in each cluster throughout the computation. See -h, --min_conserved_positions in the manual for details."/> - <param name="max_gap_proportion" type="float" value="0.05" min="0.0" max="1.0" label="Maximal proportion of gaps allowed in a match state" help="Maximal proportion of gaps in HMM match states. Any multiple sequence alignment column containing more gaps will not be considered a match state. See -y, --max gap proportion in the manual for details."/> + <param name="max_gap_proportion" type="float" value="0.05" min="0.0" max="1.0" label="Maximal proportion of gaps allowed on a conserved position" help="Maximal proportion of gaps in HMM match states. Any multiple sequence alignment column containing more gaps will not be considered a match state. See -y, --max gap proportion in the manual for details."/> - <param name="min_ic" type="float" value="1.2" min="0.0" max="4.3219280" label="Minimal information content allowed in a match state" help="Minimal information content (In terms of Shannon information theory) of HMM match states. Any multiple sequence alignment column having lower information content will not be considered a match state. Minimum: 0.0 (any MSA column composition), maximum: 4.32 (MSA column containing the same amino acid on each line). See -k, --min ic in the manual for details."/> + <param name="min_ic" type="float" value="1.2" min="0.0" max="4.3219280" label="Minimal information content allowed on a conserved position" help="Minimal information content (In terms of Shannon information theory) of HMM match states. Any multiple sequence alignment column having lower information content will not be considered a match state. Minimum: 0.0 (any MSA column composition), maximum: 4.32 (MSA column containing the same amino acid on each line). See -k, --min ic in the manual for details."/> <conditional name="match_state_params"> @@ -280,7 +280,7 @@ <requirement type="set_environment">HHLIB</requirement> <requirement type="set_environment">HAMMOCK_JAR</requirement> <requirement type="set_environment">MATRIX_PATH</requirement> - <requirement type="package" version="1.6.0">java</requirement> + <requirement type="package" version="1.7.0">java</requirement> <requirement type="package" version="1.2.0">clustalomega</requirement> <requirement type="package" version="3.1b2">hmmer</requirement> <requirement type="package" version="2.0.16">hhsuite</requirement> @@ -308,7 +308,7 @@ <help> -**HAMMOCK version 1.1.0** +**HAMMOCK version 1.1.1** **Hammock overview** |
| b |
| diff -r b7652b7c97bd -r 2277dd59b9f9 tool_dependencies.xml --- a/tool_dependencies.xml Fri Oct 20 02:50:43 2017 -0400 +++ b/tool_dependencies.xml Wed Nov 01 05:54:28 2017 -0400 |
| b |
| b'@@ -4,22 +4,18 @@\n <install version="1.0">\n \t\t\t\t<actions_group>\n \t\t\t\t\t<actions architecture="x86_64" os="linux">\n- <action type="download_by_url">http://www.clustal.org/omega/clustalo-1.2.0-Ubuntu-x86_64</action>\n-\t\t\t\t\t\t<action type="shell_command">chmod 755 clustalo-1.2.0-Ubuntu-x86_64</action>\n \t\t\t\t\t\t<action type="move_file">\n- \t \t\t<source>clustalo-1.2.0-Ubuntu-x86_64</source>\n+ \t \t\t<source>$REPOSITORY_INSTALL_DIR/external_tools/linux/clustalo-1.2.0-Ubuntu-x86_64</source>\n \t \t\t<destination>$INSTALL_DIR</destination>\n \t\t \t</action>\n-\t\t\t\t\t\t<action type="shell_command">sed -i "s%#clustalOmegaCommand=%clustalOmegaCommand=$INSTALL_DIR/clustalo-1.2.0-Ubuntu-x86_64%g" $REPOSITORY_INSTALL_DIR/Hammock/settings/settings.prop</action>\n+\t\t\t\t\t\t<action type="shell_command">sed -i "s%clustalOmegaCommand=clustalo%clustalOmegaCommand=$INSTALL_DIR/clustalo-1.2.0-Ubuntu-x86_64%g" $REPOSITORY_INSTALL_DIR/Hammock/settings/settings.prop</action>\n \t\t\t\t\t</actions>\n \t\t\t\t\t<actions architecture="x86_64" os="darwin">\n-\t\t\t\t\t\t<action type="download_by_url">http://www.clustal.org/omega/clustal-omega-1.2.0-macosx</action>\n-\t\t\t\t\t\t<action type="shell_command">chmod 755 clustalo-1.2.0-Ubuntu-x86_64</action>\n \t\t\t\t\t\t<action type="move_file">\n- \t\t\t<source>clustalo-1.2.0-Ubuntu-x86_64</source>\n+ \t\t\t<source>$REPOSITORY_INSTALL_DIR/external_tools/darwin/clustal-omega-1.2.0-macosx</source>\n \t \t\t<destination>$INSTALL_DIR</destination>\n \t\t</action>\n-\t\t\t\t\t\t<action type="shell_command">sed -i "s%#clustalOmegaCommand=%clustalOmegaCommand=$INSTALL_DIR/clustalo-1.2.0-Ubuntu-x86_64%g" $REPOSITORY_INSTALL_DIR/Hammock/settings/settings.prop</action>\n+\t\t\t\t\t\t<action type="shell_command">sed -i "s%clustalOmegaCommand=clustalo%clustalOmegaCommand=$INSTALL_DIR/clustal-omega-1.2.0-macosx%g" $REPOSITORY_INSTALL_DIR/Hammock/settings/settings.prop</action>\n \t\t\t\t\t</actions>\n \t\t\t\t</actions_group>\n \t\t\t</install>\n@@ -29,30 +25,28 @@\n <install version="1.0">\n \t\t\t\t<actions_group>\n <actions architecture="x86_64" os="linux">\n- <action type="download_by_url">http://eddylab.org/software/hmmer3/3.1b2/hmmer-3.1b2-linux-intel-x86_64.tar.gz</action>\n \t\t\t\t\t\t<action type="move_file">\n- \t\t<source>binaries/hmmbuild</source>\n+ \t\t<source>$REPOSITORY_INSTALL_DIR/external_tools/linux/hmmbuild</source>\n \t\t<destination>$INSTALL_DIR</destination>\n \t\t</action>\n \t\t\t\t\t\t<action type="move_file">\n- \t\t<source>binaries/hmmsearch</source>\n+ \t\t<source>$REPOSITORY_INSTALL_DIR/external_tools/linux/hmmsearch</source>\n \t\t<destination>$INSTALL_DIR</destination>\n \t\t</action>\n-\t\t\t\t\t\t<action type="shell_command">sed -i "s%#hmmbuildCommand=%hmmbuildCommand=$INSTALL_DIR/hmmbuild%g" $REPOSITORY_INSTALL_DIR/Hammock/settings/settings.prop</action>\n-\t\t\t\t\t\t<action type="shell_command">sed -i "s%#hmmsearchCommand=%hmmsearchCommand=$INSTALL_DIR/hmmsearch%g" $REPOSITORY_INSTALL_DIR/Hammock/settings/settings.prop</action>\n+\t\t\t\t\t\t<action type="shell_command">sed -i "s%hmmbuildCommand=hmmbuild%hmmbuildCommand=$INSTALL_DIR/hmmbuild%g" $REPOSITORY_INSTALL_DIR/Hammock/settings/settings.prop</action>\n+\t\t\t\t\t\t<action type="shell_command">sed -i "s%hmmsearchCommand=hmmsearch%hmmsearchCommand=$INSTALL_DIR/hmmsearch%g" $REPOSITORY_INSTALL_DIR/Hammock/settings/settings.prop</action>\n \t\t\t\t\t</actions>\n <actions architecture="x86_64" os="darwin">\n- <action type="download_by_url">http://eddylab.org/software/hmmer3/3.1b2/hmmer-3.1b2-macosx-intel.tar.gz</action>\n \t\t\t\t\t\t<action type="move_file">\n- \t\t<source>binaries/hmmbuild</source>\n+ \t\t<source>$REPOSITORY_INSTALL_DIR/external_tools/darwin/hmmbuild</source'..b'ction type="move_file">\n- \t\t<source>bin/hhsearch</source>\n+ \t\t<source>$REPOSITORY_INSTALL_DIR/external_tools/linux/hhsearch</source>\n \t\t<destination>$INSTALL_DIR</destination>\n \t\t</action>\n \t\t\t\t\t\t<action type="move_file">\n- \t\t<source>lib</source>\n+ \t\t<source>$REPOSITORY_INSTALL_DIR/external_tools/linux/lib</source>\n \t\t<destination>$INSTALL_DIR</destination>\n \t\t</action>\n-\t\t\t\t\t\t<action type="shell_command">sed -i "s%#hhmakeCommand=%hhmakeCommand=$INSTALL_DIR/hhmake%g" $REPOSITORY_INSTALL_DIR/Hammock/settings/settings.prop</action>\n-\t\t\t\t\t\t<action type="shell_command">sed -i "s%#hhsearchCommand=%hhsearchCommand=$INSTALL_DIR/hhsearch%g" $REPOSITORY_INSTALL_DIR/Hammock/settings/settings.prop</action>\n-\t\t\t\t\t\t<action type="shell_command">sed -i "s%#reformatCommand=%reformatCommand=$INSTALL_DIR/lib/hh/scripts/reformat.pl%g" $REPOSITORY_INSTALL_DIR/Hammock/settings/settings.prop</action>\n+\t\t\t\t\t\t<action type="shell_command">sed -i "s%hhmakeCommand=hhmake%hhmakeCommand=$INSTALL_DIR/hhmake%g" $REPOSITORY_INSTALL_DIR/Hammock/settings/settings.prop</action>\n+\t\t\t\t\t\t<action type="shell_command">sed -i "s%hhsearchCommand=hhsearch%hhsearchCommand=$INSTALL_DIR/hhsearch%g" $REPOSITORY_INSTALL_DIR/Hammock/settings/settings.prop</action>\n+\t\t\t\t\t\t<action type="shell_command">sed -i "s%reformatCommand=reformat.pl%reformatCommand=$INSTALL_DIR/lib/hh/scripts/reformat.pl%g" $REPOSITORY_INSTALL_DIR/Hammock/settings/settings.prop</action>\n \t\t\t\t\t\t<action type="set_environment">\n \t\t\t\t\t\t\t<environment_variable name="HHLIB" action="set_to">$INSTALL_DIR/lib/hh</environment_variable> \n \t\t\t\t\t\t</action>\n \t\t\t\t\t</actions>\n <actions architecture="x86_64" os="darwin">\n- <action type="download_by_url">http://wwwuser.gwdg.de/~compbiol/data/hhsuite/releases/all/hhsuite-2.0.16-macosx.tar.gz</action>\n \t\t\t\t\t\t<action type="move_file">\n- \t\t<source>bin/hhmake</source>\n+ \t\t<source>$REPOSITORY_INSTALL_DIR/external_tools/darwin/hhmake</source>\n \t\t<destination>$INSTALL_DIR</destination>\n \t\t</action>\n \t\t\t\t\t\t<action type="move_file">\n- \t\t<source>bin/hhsearch</source>\n+ \t\t<source>$REPOSITORY_INSTALL_DIR/external_tools/darwin/hhsearch</source>\n \t\t<destination>$INSTALL_DIR</destination>\n \t\t</action>\n \t\t\t\t\t\t<action type="move_file">\n- \t\t<source>lib</source>\n+ \t\t<source>$REPOSITORY_INSTALL_DIR/external_tools/darwin/lib</source>\n \t\t<destination>$INSTALL_DIR</destination>\n \t\t</action>\n-\t\t\t\t\t\t<action type="shell_command">sed -i "s%#hhmakeCommand=%hhmakeCommand=$INSTALL_DIR/hhmake%g" $REPOSITORY_INSTALL_DIR/Hammock/settings/settings.prop</action>\n-\t\t\t\t\t\t<action type="shell_command">sed -i "s%#hhsearchCommand=%hhsearchCommand=$INSTALL_DIR/hhsearch%g" $REPOSITORY_INSTALL_DIR/Hammock/settings/settings.prop</action>\n-\t\t\t\t\t\t<action type="shell_command">sed -i "s%#reformatCommand=%reformatCommand=$INSTALL_DIR/lib/hh/scripts/reformat.pl%g" $REPOSITORY_INSTALL_DIR/Hammock/settings/settings.prop</action>\n+\t\t\t\t\t\t<action type="shell_command">sed -i "s%hhmakeCommand=hhmake%hhmakeCommand=$INSTALL_DIR/hhmake%g" $REPOSITORY_INSTALL_DIR/Hammock/settings/settings.prop</action>\n+\t\t\t\t\t\t<action type="shell_command">sed -i "s%hhsearchCommand=hhsearch%hhsearchCommand=$INSTALL_DIR/hhsearch%g" $REPOSITORY_INSTALL_DIR/Hammock/settings/settings.prop</action>\n+\t\t\t\t\t\t<action type="shell_command">sed -i "s%reformatCommand=reformat.pl%reformatCommand=$INSTALL_DIR/lib/hh/scripts/reformat.pl%g" $REPOSITORY_INSTALL_DIR/Hammock/settings/settings.prop</action>\n \t\t\t\t\t\t<action type="set_environment">\n \t\t\t\t\t\t\t<environment_variable name="HHLIB" action="set_to">$INSTALL_DIR/lib/hh</environment_variable> \n \t\t\t\t\t\t</action>\n' |