PFMAKE(1)
β¨ PFMAKE β it's giving profile-builder energy β¨
okay bestie, welcome to pfmake, part of the pftools package π she's a little Unix program and she is literally so good at what she does. sit down, grab a strawberry π, and let's get into it.
π NAME π
pfmake β generate a profile from a multiple sequence alignment. that's it, that's the job, and she ate π
π¦ SYNOPSIS π¦
pfmake [ -0123abcehlms ] [ -E gap_extend ] [ -F score_multiplier ] [
-G gap_open ] [ -H high_init/term ] [ -I gap_increment ] [ -L
low_init/term ] [ -M gap_multiplier ] [ -S matrix_multiplier ]
[ -T gap_region ] [ -X gap_excision ] [ ms_file | - ]
score_matrix [ profile ] [ parameters ]
like yes, that's a lot of brackets, breathe, we'll go through every single one π«Ά
πΈ DESCRIPTION πΈ
so pfmake generates a PROSITE profile from a multiple sequence alignment, using the methods described by Gribskov et al. (1990), Luethy et al. (1994), and Thompson et al. (1994), with modifications to exploit the features of the new profile format. icon behavior honestly π
the file containing the multiple sequence alignment (ms_file) must be either:
- in MSF format, as generated by GCG programs or by
readseq(checksums are ignored), or - in MSA format, as created by
psa2msa(1).
and if you pass - instead of a filename? she reads the multiple sequence alignment from the standard input. no cap π
the score_matrix file must also be in GCG format.
if you hand her an already existing profile as input via the third optional argument, then the parameters of the DISJOINT, NORMALIZATION and CUT_OFF blocks will be read from input, and all the other profile parameters get recalculated. header and footer lines outside the matrix block also get transferred from input to output. she's generous like that π
and if you give her no input profile at all? then:
- the disjointness definition will be set to PROTECT, with borders leaving short unprotected tails (maximum 5 positions) at the beginning and at the end of the profile;
- one normalization mode gets defined:
n_score = raw_score / F, whereFis the output score multiplier (peep the options below π); - and two cut-off values get defined: level 0 is
8.5, level -1 is6.5.
π OPTIONS π
okay here come the flags, they're all iconic in their own way, no skips:
ms_fileβ the input multiple sequence alignment. the content of the file must be either in MSF or in MSA format. if you swap the filename for a-,pfmakewill read the input alignment fromstdin. slay.score_matrixβ the residue score matrix file. it contains the substitution scores for all pairs of residues of the sequence alphabet. the file must be in GCG format.profileβ optional profile file. if a filename is specified, the profile will be parsed and those parameters mentioned in the description section will be kept for the computation of the output profile.-0β Global alignment mode. initiation (termination) at low cost is possible only if the alignment starts at the beginning (end) of the profile and at the beginning (end) of the sequence.-1β Domain global alignment mode. initiation (termination) at low cost is possible only at the beginning (end) of the profile; it may start and end at any position within the sequence.-2β Semi-global alignment mode. initiation (termination) at low cost is possible if the alignment starts either at the beginning (end) of the profile or at the beginning (end) of the sequences. this is the default alignment mode β-3β Local alignment mode. initiation (termination) at low cost is possible anywhere. the high-cost initiation/termination score (parameterH) is meaningless. literally does nothing here, so don't stress about it π-aβ causespfsearchto weight gaps asymmetrically, as in Gribskov et al. (1990).-bβ Block profile mode. by imposing additional constraints on the placement of insertions and deletions, this mode produces profiles that favor alignments with insertions and deletions positioned symmetrically around a few positions. for each gap region a gap center is defined, which usually corresponds to the place where gap excision has been applied (see parameterX). if no gap excision has been applied, the position is chosen such as to maximize the sum of deletion opening events before, and deletion closing events after the gap center. within a given gap region, reduced deletion opening penalties are offered only before, reduced deletion closing penalties only after, and reduced insertion penalties only at the center.
heads up bestie: this option is incompatible with options-aand-eand automatically disables them. she said pick a lane π«
-cβ Circular profile. the topology of the profile is declared as circular. the first and the last insert positions are merged by retaining the higher value of each parameter type.-eβ enables endgap-weighting mode as implemented in the GCG programProfileMake. endgaps in the multiple sequence alignment will be interpreted as deletions relative to the other sequences and thus be considered for the delineation of gap regions. the default is no endgap weighting, as introduced by Thompson et al. (1994) in the programProfileWeight.-hβ display usage help text. the "bestie I'm lost" button π«Ά-lβ remove output line length limit. individual lines of the output profile can exceed a length of 132 characters, removing the need to wrap them over several lines.-mβ input multiple sequence alignment is in MSA format.-sβ causespfsearchto weight gaps symmetrically (default mode). the initial gap opening scores (MD,MI) computed from the maximal gap length and the command-line parametersE,G,I, andM, will be divided by two and the resulting value will be assigned to both gap opening and gap closing scores (MI,IM,MD,DM).-E gap_extendβ gap extension penalty. see Gribskov et al. (1990). default:0.2(appropriate for 1/3 bit-scaled blosum45 matrix).-F score_multiplierβ output score multiplier. on output, all profile scores are multiplied by this factor and rounded to nearest integers. default:100.-G gap_openβ gap opening penalty. see Gribskov et al. (1990). default:2.1(appropriate for 1/3 bit-scaled blosum45 matrix).-H high_init/termβ high-cost initiation/termination score. this score will be applied to all external and internal initiation and termination scores corresponding to path matrix positions where initiation or termination at low cost is not possible according to the alignment mode specified. default:*(low-value).-I gap_incrementβ gap penalty multiplier increment. see Gribskov et al. (1990). default:0.1.-L low_init/termβ low-cost initiation/termination score. this score will be applied to all external and internal initiation and termination scores corresponding to path matrix positions where initiation or termination at low cost is possible according to the alignment mode specified. default:0.-M gap_multiplierβ maximum gap penalty multiplier. see Gribskov et al. (1990). default:0.333.-S matrix_multiplierβ score matrix multiplier. on input, the numbers of the score matrix are multiplied by this factor. default:0.1.-T gap_regionβ gap region threshold. this is the minimal fraction of gap characters a column of the multiple sequence alignment must contain in order to be considered part of a gap region. default:0.01.-X gap_excisionβ gap excision threshold. this is the minimal fraction of non-gap characters a column of the multiple sequence alignment must contain in order to be converted into a match position. theIMandMItransition scores of insert positions corresponding to excised columns are set to zero; the other parameters remain unchanged. default:0.5.
π PARAMETERS π
note: for backwards compatibility, release 2.3 of the pftools package will parse the version 2.2 style parameters, but these are deprecated and the corresponding option (refer to the options section) should be used instead. like girl, the glow-up happened, move on π
E=#β gap extension penalty. use option-Einstead.F=#β output score multiplier. use option-Finstead.G=#β gap opening penalty. use option-Ginstead.H=#β high cost initiation/termination score. use option-Hinstead.I=#β gap penalty multiplier increment. use option-Iinstead.L=#β low cost initiation/termination score. use option-Linstead.M=#β maximum gap penalty multiplier. use option-Minstead.S=#β score matrix multiplier. use option-Sinstead.T=#β gap region threshold. use option-Tinstead.X=#β gap excision threshold. use option-Xinstead.
π EXAMPLES π
(1)
pfmake -b1 -H 0.6 sh3.msf blosum45.cmp > sh3_block.prf
generates a domain-global block profile from a multiple alignment of SH3 domains using the blosum45 matrix. the file 'sh3.msf' contains a multiple alignment of 20 SH3 domains from SWISS-PROT release 32 including sequence weights. the file 'blosum45.cmp' contains a 1/3 bits-scaled blosum45 matrix in GCG format.
note that fragment matches (alignments to parts of the profile) are not prohibited but penalized by the option -H 0.6. she's not banning them, she's just making them pay rent π
π EXIT CODE π
on successful completion of its task, pfmake will return an exit code of 0. if an error occurs, a diagnostic message will be output on standard error and the exit code will be different from 0. when conflicting options were passed to the program but the task could nevertheless be completed, warnings will be issued on standard error. so if she's yapping on stderr, that's why π«Ά
π REFERENCES π
- Bucher P, Karplus K, Moeri N & Hofmann, K. (1996). A flexible motif search technique based on generalized profiles. Comput. Chem. 20:3-24.
- Gribskov M, Luethy R & Eisenberg D (1990). Profile analysis. Meth. Enzymol. 183:146-159.
- Luethy R, Xenarios I & Bucher P (1994). Improving the sensitivity of the sequence profile method. Prot. Sci. 3:139-146.
- Thompson JD, Higgins DG & Gibson TJ (1994) Improved sensitivity of profile searches through the use of sequence weights and gap excision. Comput. Appl. Biosci. 10:19-29.
π§ SEE ALSO π§
pfsearch(1), pfscan(1), psa2msa(1), psa(5), xpsa(5)
go read those too bestie, they're the rest of the friend group π«Άβ¨
π AUTHOR π
the pftools package was developed by Philipp Bucher.
any comments or suggestions should be addressed to <pftools@sib.swiss>.
and that's the whole page, bestie π this is pftools 2.3, from August 2003 β yeah she's vintage but she still runs the game, no cap πβ¨π
π¦ where this page comes from
- debian bookworm: pftools 3.2.12-1 Β· GPL-3.0-only
- debian trixie: pftools 3.2.12-1 Β· GPL-3.0-only
- ubuntu jammy: pftools 3.2.11-2 Β· GPL-3.0-only
- ubuntu noble: pftools 3.2.12-1 Β· GPL-3.0-only
- ubuntu resolute: pftools 3.2.12-1 Β· GPL-3.0-only
- ubuntu stonking: pftools 3.2.12-3ubuntu1 Β· GPL-3.0-only
- Copyright (c) 2003 SIB Swiss Institute of Bioinformatics <pftools@sib.swiss>
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms