Mercurial > repos > deepakjadmin > mayatool3_test3
diff mayachemtools/docs/modules/man3/FingerprintsBitVector.3 @ 0:73ae111cf86f draft
Uploaded
author | deepakjadmin |
---|---|
date | Wed, 20 Jan 2016 11:55:01 -0500 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mayachemtools/docs/modules/man3/FingerprintsBitVector.3 Wed Jan 20 11:55:01 2016 -0500 @@ -0,0 +1,739 @@ +.\" Automatically generated by Pod::Man 2.25 (Pod::Simple 3.22) +.\" +.\" Standard preamble: +.\" ======================================================================== +.de Sp \" Vertical space (when we can't use .PP) +.if t .sp .5v +.if n .sp +.. +.de Vb \" Begin verbatim text +.ft CW +.nf +.ne \\$1 +.. +.de Ve \" End verbatim text +.ft R +.fi +.. +.\" Set up some character translations and predefined strings. \*(-- will +.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left +.\" double quote, and \*(R" will give a right double quote. \*(C+ will +.\" give a nicer C++. Capital omega is used to do unbreakable dashes and +.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, +.\" nothing in troff, for use with C<>. +.tr \(*W- +.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' +.ie n \{\ +. ds -- \(*W- +. ds PI pi +. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch +. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch +. ds L" "" +. ds R" "" +. ds C` "" +. ds C' "" +'br\} +.el\{\ +. ds -- \|\(em\| +. ds PI \(*p +. ds L" `` +. ds R" '' +'br\} +.\" +.\" Escape single quotes in literal strings from groff's Unicode transform. +.ie \n(.g .ds Aq \(aq +.el .ds Aq ' +.\" +.\" If the F register is turned on, we'll generate index entries on stderr for +.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index +.\" entries marked with X<> in POD. Of course, you'll have to process the +.\" output yourself in some meaningful fashion. +.ie \nF \{\ +. de IX +. tm Index:\\$1\t\\n%\t"\\$2" +.. +. nr % 0 +. rr F +.\} +.el \{\ +. de IX +.. +.\} +.\" +.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). +.\" Fear. Run. Save yourself. No user-serviceable parts. +. \" fudge factors for nroff and troff +.if n \{\ +. ds #H 0 +. ds #V .8m +. ds #F .3m +. ds #[ \f1 +. ds #] \fP +.\} +.if t \{\ +. ds #H ((1u-(\\\\n(.fu%2u))*.13m) +. ds #V .6m +. ds #F 0 +. ds #[ \& +. ds #] \& +.\} +. \" simple accents for nroff and troff +.if n \{\ +. ds ' \& +. ds ` \& +. ds ^ \& +. ds , \& +. ds ~ ~ +. ds / +.\} +.if t \{\ +. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" +. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' +. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' +. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' +. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' +. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' +.\} +. \" troff and (daisy-wheel) nroff accents +.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' +.ds 8 \h'\*(#H'\(*b\h'-\*(#H' +.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] +.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' +.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' +.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] +.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] +.ds ae a\h'-(\w'a'u*4/10)'e +.ds Ae A\h'-(\w'A'u*4/10)'E +. \" corrections for vroff +.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' +.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' +. \" for low resolution devices (crt and lpr) +.if \n(.H>23 .if \n(.V>19 \ +\{\ +. ds : e +. ds 8 ss +. ds o a +. ds d- d\h'-1'\(ga +. ds D- D\h'-1'\(hy +. ds th \o'bp' +. ds Th \o'LP' +. ds ae ae +. ds Ae AE +.\} +.rm #[ #] #H #V #F C +.\" ======================================================================== +.\" +.IX Title "FINGERPRINTSBITVECTOR 1" +.TH FINGERPRINTSBITVECTOR 1 "2015-03-29" "perl v5.14.2" "MayaChemTools" +.\" For nroff, turn off justification. Always turn off hyphenation; it makes +.\" way too many mistakes in technical documents. +.if n .ad l +.nh +.SH "NAME" +FingerprintsBitVector +.SH "SYNOPSIS" +.IX Header "SYNOPSIS" +use Fingerprints::FingerprintsBitVector; +.PP +use Fingerprints::FingerprintsBitVector qw(:coefficients); +.PP +use Fingerprints::FingerprintsBitVector qw(:all); +.SH "DESCRIPTION" +.IX Header "DESCRIPTION" +\&\fBFingerprintsBitVector\fR class provides the following methods: +.PP +new, BaroniUrbaniSimilarityCoefficient, BuserSimilarityCoefficient, +CosineSimilarityCoefficient, DennisSimilarityCoefficient, +DiceSimilarityCoefficient, FoldFingerprintsBitVectorByDensity, +FoldFingerprintsBitVectorBySize, ForbesSimilarityCoefficient, +FossumSimilarityCoefficient, GetBitsAsBinaryString, GetBitsAsDecimalString, +GetBitsAsHexadecimalString, GetBitsAsOctalString, GetBitsAsRawBinaryString, +GetDescription, GetFingerprintsBitDensity, GetID, GetSpecifiedSize, +GetSupportedSimilarityCoefficients, GetVectorType, HamannSimilarityCoefficient, +IsFingerprintsBitVector, IsSubSet, JacardSimilarityCoefficient, +Kulczynski1SimilarityCoefficient, Kulczynski2SimilarityCoefficient, +MatchingSimilarityCoefficient, McConnaugheySimilarityCoefficient, +NewFromBinaryString, NewFromDecimalString, NewFromHexadecimalString, +NewFromOctalString, NewFromRawBinaryString, OchiaiSimilarityCoefficient, +PearsonSimilarityCoefficient, RogersTanimotoSimilarityCoefficient, +RussellRaoSimilarityCoefficient, SetDescription, SetID, SetSpecifiedSize, +SetVectorType, SimpsonSimilarityCoefficient, SkoalSneath1SimilarityCoefficient, +SkoalSneath2SimilarityCoefficient, SkoalSneath3SimilarityCoefficient, +StringifyFingerprintsBitVector, TanimotoSimilarityCoefficient, +TverskySimilarityCoefficient, WeightedTanimotoSimilarityCoefficient, +WeightedTverskySimilarityCoefficient, YuleSimilarityCoefficient +.PP +The methods available to create fingerprints bit vector from strings and to calculate similarity +coefficient between two bit vectors can also be invoked as class functions. +.PP +\&\fBFingerprintsBitVector\fR class is derived from \fBBitVector\fR class which provides the functionality +to manipulate bits. +.PP +For two fingerprints bit vectors A and B of same size, let: +.PP +.Vb 4 +\& Na = Number of bits set to "1" in A +\& Nb = Number of bits set to "1" in B +\& Nc = Number of bits set to "1" in both A and B +\& Nd = Number of bits set to "0" in both A and B +\& +\& Nt = Number of bits set to "1" or "0" in A or B (Size of A or B) +\& Nt = Na + Nb \- Nc + Nd +\& +\& Na \- Nc = Number of bits set to "1" in A but not in B +\& Nb \- Nc = Number of bits set to "1" in B but not in A +.Ve +.PP +Then, various similarity coefficients [ Ref. 40 \- 42 ] for a pair of bit vectors A and B are +defined as follows: +.PP +BaroniUrbani: ( \s-1SQRT\s0( Nc * Nd ) + Nc ) / ( \s-1SQRT\s0 ( Nc * Nd ) + Nc + ( Na \- Nc ) + ( Nb \- Nc ) ) ( same as Buser ) +.PP +Buser: ( \s-1SQRT\s0 ( Nc * Nd ) + Nc ) / ( \s-1SQRT\s0 ( Nc * Nd ) + Nc + ( Na \- Nc ) + ( Nb \- Nc ) ) ( same as BaroniUrbani ) +.PP +Cosine: Nc / \s-1SQRT\s0 ( Na * Nb ) (same as Ochiai) +.PP +Dice: (2 * Nc) / ( Na + Nb ) +.PP +Dennis: ( Nc * Nd \- ( ( Na \- Nc ) * ( Nb \- Nc ) ) ) / \s-1SQRT\s0 ( Nt * Na * Nb) +.PP +Forbes: ( Nt * Nc ) / ( Na * Nb ) +.PP +Fossum: ( Nt * ( ( Nc \- 1/2 ) ** 2 ) / ( Na * Nb ) +.PP +Hamann: ( ( Nc + Nd ) \- ( Na \- Nc ) \- ( Nb \- Nc ) ) / Nt +.PP +Jaccard: Nc / ( ( Na \- Nc) + ( Nb \- Nc ) + Nc ) = Nc / ( Na + Nb \- Nc ) (same as Tanimoto) +.PP +Kulczynski1: Nc / ( ( Na \- Nc ) + ( Nb \- Nc) ) = Nc / ( Na + Nb \- 2Nc ) +.PP +Kulczynski2: ( ( Nc / 2 ) * ( 2 * Nc + ( Na \- Nc ) + ( Nb \- Nc) ) ) / ( ( Nc + ( Na \- Nc ) ) * ( Nc + ( Nb \- Nc ) ) ) += 0.5 * ( Nc / Na + Nc / Nb ) +.PP +Matching: ( Nc + Nd ) / Nt +.PP +McConnaughey: ( Nc ** 2 \- ( Na \- Nc ) * ( Nb \- Nc) ) / ( Na * Nb ) +.PP +Ochiai: Nc / \s-1SQRT\s0 ( Na * Nb ) (same as Cosine) +.PP +Pearson: ( ( Nc * Nd ) \- ( ( Na \- Nc ) * ( Nb \- Nc ) ) / \s-1SQRT\s0 ( Na * Nb * ( Na \- Nc + Nd ) * ( Nb \- Nc + Nd ) ) +.PP +RogersTanimoto: ( Nc + Nd ) / ( ( Na \- Nc) + ( Nb \- Nc) + Nt) = ( Nc + Nd ) / ( Na + Nb \- 2Nc + Nt) +.PP +RussellRao: Nc / Nt +.PP +Simpson: Nc / \s-1MIN\s0 ( Na, Nb) +.PP +SkoalSneath1: Nc / ( Nc + 2 * ( Na \- Nc) + 2 * ( Nb \- Nc) ) = Nc / ( 2 * Na + 2 * Nb \- 3 * Nc ) +.PP +SkoalSneath2: ( 2 * Nc + 2 * Nd ) / ( Nc + Nd + Nt ) +.PP +SkoalSneath3: ( Nc + Nd ) / ( ( Na \- Nc ) + ( Nb \- Nc ) ) = ( Nc + Nd ) / ( Na + Nb \- 2 * Nc ) +.PP +Tanimoto: Nc / ( ( Na \- Nc) + ( Nb \- Nc ) + Nc ) = Nc / ( Na + Nb \- Nc ) (same as Jaccard) +.PP +Tversky: Nc / ( alpha * ( Na \- Nc ) + ( 1 \- alpha) * ( Nb \- Nc) + Nc ) = Nc / ( alpha * ( Na \- Nb ) + Nb) +.PP +Yule: ( ( Nc * Nd ) \- ( ( Na \- Nc ) * ( Nb \- Nc ) ) ) / ( ( Nc * Nd ) + ( ( Na \- Nc ) * ( Nb \- Nc ) ) ) +.PP +The values of Tanimoto/Jaccard and Tversky coefficients are dependent on only those bit which +are set to \*(L"1\*(R" in both A and B. In order to take into account all bit positions, modified versions +of Tanimoto [ Ref. 42 ] and Tversky [ Ref. 43 ] have been developed. +.PP +Let: +.PP +.Vb 3 +\& Na\*(Aq = Number of bits set to "0" in A +\& Nb\*(Aq = Number of bits set to "0" in B +\& Nc\*(Aq = Number of bits set to "0" in both A and B +.Ve +.PP +Tanimoto': Nc' / ( ( Na' \- Nc') + ( Nb' \- Nc' ) + Nc' ) = Nc' / ( Na' + Nb' \- Nc' ) +.PP +Tversky': Nc' / ( alpha * ( Na' \- Nc' ) + ( 1 \- alpha) * ( Nb' \- Nc' ) + Nc' ) = Nc' / ( alpha * ( Na' \- Nb' ) + Nb') +.PP +Then: +.PP +WeightedTanimoto = beta * Tanimoto + (1 \- beta) * Tanimoto' +.PP +WeightedTversky = beta * Tversky + (1 \- beta) * Tversky' +.SS "\s-1METHODS\s0" +.IX Subsection "METHODS" +.IP "\fBnew\fR" 4 +.IX Item "new" +.Vb 1 +\& $NewFPBitVector = new Fingerprints::FingerprintsBitVector($Size); +.Ve +.Sp +Creates a new \fIFingerprintsBitVector\fR object of size \fISize\fR and returns newly created +\&\fBFingerprintsBitVector\fR. Bit numbers range from 0 to 1 less than \fISize\fR. +.IP "\fBBaroniUrbaniSimilarityCoefficient\fR" 4 +.IX Item "BaroniUrbaniSimilarityCoefficient" +.Vb 5 +\& $Value = $FingerprintsBitVector\->BaroniUrbaniSimilarityCoefficient( +\& $OtherFingerprintBitVector); +\& $Value = Fingerprints::FingerprintsBitVector:: +\& BaroniUrbaniSimilarityCoefficient( +\& $FingerprintsBitVectorA, $FingerprintBitVectorB); +.Ve +.Sp +Returns value of \fIBaroniUrbani\fR similarity coefficient between two same size \fIFingerprintsBitVectors\fR. +.IP "\fBBuserSimilarityCoefficient\fR" 4 +.IX Item "BuserSimilarityCoefficient" +.Vb 4 +\& $Value = $FingerprintsBitVector\->BuserSimilarityCoefficient( +\& $OtherFingerprintBitVector); +\& $Value = Fingerprints::FingerprintsBitVector::BuserSimilarityCoefficient( +\& $FingerprintsBitVectorA, $FingerprintBitVectorB); +.Ve +.Sp +Returns value of \fIBuser\fR similarity coefficient between two same size \fIFingerprintsBitVectors\fR. +.IP "\fBCosineSimilarityCoefficient\fR" 4 +.IX Item "CosineSimilarityCoefficient" +.Vb 4 +\& $Value = $FingerprintsBitVector\->CosineSimilarityCoefficient( +\& $OtherFingerprintBitVector); +\& $Value = Fingerprints::FingerprintsBitVector::CosineSimilarityCoefficient( +\& $FingerprintsBitVectorA, $FingerprintBitVectorB); +.Ve +.Sp +Returns value of \fICosine\fR similarity coefficient between two same size \fIFingerprintsBitVectors\fR. +.IP "\fBDennisSimilarityCoefficient\fR" 4 +.IX Item "DennisSimilarityCoefficient" +.Vb 4 +\& $Value = $FingerprintsBitVector\->DennisSimilarityCoefficient( +\& $OtherFingerprintBitVector); +\& $Value = Fingerprints::FingerprintsBitVector::DennisSimilarityCoefficient( +\& $FingerprintsBitVectorA, $FingerprintBitVectorB); +.Ve +.Sp +Returns value of \fIDennis\fR similarity coefficient between two same size \fIFingerprintsBitVectors\fR. +.IP "\fBDiceSimilarityCoefficient\fR" 4 +.IX Item "DiceSimilarityCoefficient" +.Vb 4 +\& $Value = $FingerprintsBitVector\->DiceSimilarityCoefficient( +\& $OtherFingerprintBitVector); +\& $Value = Fingerprints::FingerprintsBitVector::DiceSimilarityCoefficient( +\& $FingerprintsBitVectorA, $FingerprintBitVectorB); +.Ve +.Sp +Returns value of \fIDice\fR similarity coefficient between two same size \fIFingerprintsBitVectors\fR. +.IP "\fBFoldFingerprintsBitVectorByDensity\fR" 4 +.IX Item "FoldFingerprintsBitVectorByDensity" +.Vb 1 +\& $FingerprintsBitVector\->FoldFingerprintsBitVectorByDensity($Density); +.Ve +.Sp +Folds \fIFingerprintsBitVector\fR by recursively reducing its size by half until bit density of set bits is +greater than or equal to specified \fIDensity\fR and returns folded \fIFingerprintsBitVector\fR. +.IP "\fBFoldFingerprintsBitVectorBySize\fR" 4 +.IX Item "FoldFingerprintsBitVectorBySize" +.Vb 1 +\& $FingerprintsBitVector\->FoldFingerprintsBitVectorBySize($Size); +.Ve +.Sp +Folds \fIFingerprintsBitVector\fR by recursively reducing its size by half until size is less than or equal to +specified \fISize\fR and returns folded \fIFingerprintsBitVector\fR. +.IP "\fBForbesSimilarityCoefficient\fR" 4 +.IX Item "ForbesSimilarityCoefficient" +.Vb 4 +\& $Value = $FingerprintsBitVector\->ForbesSimilarityCoefficient( +\& $OtherFingerprintBitVector); +\& $Value = Fingerprints::FingerprintsBitVector::ForbesSimilarityCoefficient( +\& $FingerprintsBitVectorA, $FingerprintBitVectorB); +.Ve +.Sp +Returns value of \fIForbes\fR similarity coefficient between two same size \fIFingerprintsBitVectors\fR. +.IP "\fBFossumSimilarityCoefficient\fR" 4 +.IX Item "FossumSimilarityCoefficient" +.Vb 4 +\& $Value = $FingerprintsBitVector\->FossumSimilarityCoefficient( +\& $OtherFingerprintBitVector); +\& $Value = Fingerprints::FingerprintsBitVector::FossumSimilarityCoefficient( +\& $FingerprintsBitVectorA, $FingerprintBitVectorB); +.Ve +.Sp +Returns value of \fIFossum\fR similarity coefficient between two same size \fIFingerprintsBitVectors\fR. +.IP "\fBGetBitsAsBinaryString\fR" 4 +.IX Item "GetBitsAsBinaryString" +.Vb 1 +\& $BinaryASCIIString = $FingerprintsBitVector\->GetBitsAsBinaryString(); +.Ve +.Sp +Returns fingerprints as a binary \s-1ASCII\s0 string containing 0s and 1s. +.IP "\fBGetBitsAsHexadecimalString\fR" 4 +.IX Item "GetBitsAsHexadecimalString" +.Vb 1 +\& $HexadecimalString = $FingerprintsBitVector\->GetBitsAsHexadecimalString(); +.Ve +.Sp +Returns fingerprints as a hexadecimal string. +.IP "\fBGetBitsAsRawBinaryString\fR" 4 +.IX Item "GetBitsAsRawBinaryString" +.Vb 1 +\& $RawBinaryString = $FingerprintsBitVector\->GetBitsAsRawBinaryString(); +.Ve +.Sp +Returns fingerprints as a raw binary string containing packed bit values for each byte. +.IP "\fBGetDescription\fR" 4 +.IX Item "GetDescription" +.Vb 1 +\& $Description = $FingerprintsBitVector\->GetDescription(); +.Ve +.Sp +Returns a string containing description of fingerprints bit vector. +.IP "\fBGetFingerprintsBitDensity\fR" 4 +.IX Item "GetFingerprintsBitDensity" +.Vb 1 +\& $BitDensity = $FingerprintsBitVector\->GetFingerprintsBitDensity(); +.Ve +.Sp +Returns \fIBitDensity\fR of \fIFingerprintsBitVector\fR corresponding to bits set to 1s. +.IP "\fBGetID\fR" 4 +.IX Item "GetID" +.Vb 1 +\& $ID = $FingerprintsBitVector\->GetID(); +.Ve +.Sp +Returns \fI\s-1ID\s0\fR of \fIFingerprintsBitVector\fR. +.IP "\fBGetVectorType\fR" 4 +.IX Item "GetVectorType" +.Vb 1 +\& $VectorType = $FingerprintsBitVector\->GetVectorType(); +.Ve +.Sp +Returns \fIVectorType\fR of \fIFingerprintsBitVector\fR. +.IP "\fBGetSpecifiedSize\fR" 4 +.IX Item "GetSpecifiedSize" +.Vb 1 +\& $Size = $FingerprintsBitVector\->GetSpecifiedSize(); +.Ve +.Sp +Returns value of specified size for bit vector. +.IP "\fBGetSupportedSimilarityCoefficients\fR" 4 +.IX Item "GetSupportedSimilarityCoefficients" +.Vb 2 +\& @SimilarityCoefficient = +\& Fingerprints::FingerprintsBitVector::GetSupportedSimilarityCoefficients(); +.Ve +.Sp +Returns an array containing names of supported similarity coefficients. +.IP "\fBHamannSimilarityCoefficient\fR" 4 +.IX Item "HamannSimilarityCoefficient" +.Vb 4 +\& $Value = $FingerprintsBitVector\->HamannSimilarityCoefficient( +\& $OtherFingerprintBitVector); +\& $Value = Fingerprints::FingerprintsBitVector::HamannSimilarityCoefficient( +\& $FingerprintsBitVectorA, $FingerprintBitVectorB); +.Ve +.Sp +Returns value of \fIHamann\fR similarity coefficient between two same size \fIFingerprintsBitVectors\fR. +.IP "\fBIsFingerprintsBitVector\fR" 4 +.IX Item "IsFingerprintsBitVector" +.Vb 2 +\& $Status = Fingerprints::FingerprintsBitVector:: +\& IsFingerprintsBitVector($Object); +.Ve +.Sp +Returns 1 or 0 based on whether \fIObject\fR is a \fBFingerprintsBitVector\fR object. +.IP "\fBIsSubSet\fR" 4 +.IX Item "IsSubSet" +.Vb 3 +\& $Status = $FingerprintsBitVector\->IsSubSet($OtherFPBitVector); +\& $Status = Fingerprints::FingerprintsBitVector::IsSubSet( +\& $FPBitVectorA, $FPBitVectorB); +.Ve +.Sp +Returns 1 or 0 based on whether first firngerprints bit vector is a subset of second +fingerprints bit vector. +.Sp +For a bit vector to be a subset of another bit vector, both vectors must be of +the same size and the bit positions set in first vector must also be set in the +second bit vector. +.IP "\fBJacardSimilarityCoefficient\fR" 4 +.IX Item "JacardSimilarityCoefficient" +.Vb 4 +\& $Value = $FingerprintsBitVector\->JacardSimilarityCoefficient( +\& $OtherFingerprintBitVector); +\& $Value = Fingerprints::FingerprintsBitVector::JacardSimilarityCoefficient( +\& $FingerprintsBitVectorA, $FingerprintBitVectorB); +.Ve +.Sp +Returns value of \fIJacard\fR similarity coefficient between two same size \fIFingerprintsBitVectors\fR. +.IP "\fBKulczynski1SimilarityCoefficient\fR" 4 +.IX Item "Kulczynski1SimilarityCoefficient" +.Vb 5 +\& $Value = $FingerprintsBitVector\->Kulczynski1SimilarityCoefficient( +\& $OtherFingerprintBitVector); +\& $Value = Fingerprints::FingerprintsBitVector:: +\& Kulczynski1SimilarityCoefficient( +\& $FingerprintsBitVectorA, $FingerprintBitVectorB); +.Ve +.Sp +Returns value of \fIKulczynski1\fR similarity coefficient between two same size \fIFingerprintsBitVectors\fR. +.IP "\fBKulczynski2SimilarityCoefficient\fR" 4 +.IX Item "Kulczynski2SimilarityCoefficient" +.Vb 5 +\& $Value = $FingerprintsBitVector\->Kulczynski2SimilarityCoefficient( +\& $OtherFingerprintBitVector); +\& $Value = Fingerprints::FingerprintsBitVector:: +\& Kulczynski2SimilarityCoefficient( +\& $FingerprintsBitVectorA, $FingerprintBitVectorB); +.Ve +.Sp +Returns value of \fIKulczynski2\fR similarity coefficient between two same size \fIFingerprintsBitVectors\fR. +.IP "\fBMatchingSimilarityCoefficient\fR" 4 +.IX Item "MatchingSimilarityCoefficient" +.Vb 5 +\& $Value = $FingerprintsBitVector\->MatchingSimilarityCoefficient( +\& $OtherFingerprintBitVector); +\& $Value = Fingerprints::FingerprintsBitVector:: +\& MatchingSimilarityCoefficient( +\& $FingerprintsBitVectorA, $FingerprintBitVectorB); +.Ve +.Sp +Returns value of \fIMatching\fR similarity coefficient between two same size \fIFingerprintsBitVectors\fR. +.IP "\fBMcConnaugheySimilarityCoefficient\fR" 4 +.IX Item "McConnaugheySimilarityCoefficient" +.Vb 5 +\& $Value = $FingerprintsBitVector\->McConnaugheySimilarityCoefficient( +\& $OtherFingerprintBitVector); +\& $Value = Fingerprints::FingerprintsBitVector:: +\& McConnaugheySimilarityCoefficient( +\& $FingerprintsBitVectorA, $FingerprintBitVectorB); +.Ve +.Sp +Returns value of \fIMcConnaughey\fR similarity coefficient between two same size \fIFingerprintsBitVectors\fR. +.IP "\fBNewFromBinaryString\fR" 4 +.IX Item "NewFromBinaryString" +.Vb 4 +\& $NewFPBitVector = $FingerprintsBitVector\->NewFromBinaryString( +\& $BinaryString); +\& $NewFPBitVector = Fingerprints::FingerprintsBitVector::NewFromBinaryString( +\& $BinaryString); +.Ve +.Sp +Creates a new \fIFingerprintsBitVector\fR using \fIBinaryString\fR and returns new +\&\fBFingerprintsBitVector\fR object. +.IP "\fBNewFromHexadecimalString\fR" 4 +.IX Item "NewFromHexadecimalString" +.Vb 5 +\& $NewFPBitVector = $FingerprintsBitVector\->NewFromHexadecimalString( +\& $HexdecimalString); +\& $NewFPBitVector = Fingerprints::FingerprintsBitVector:: +\& NewFromHexadecimalString( +\& $HexdecimalString); +.Ve +.Sp +Creates a new \fIFingerprintsBitVector\fR using \fIHexdecimalString\fR and returns new +\&\fBFingerprintsBitVector\fR object. +.IP "\fBNewFromRawBinaryString\fR" 4 +.IX Item "NewFromRawBinaryString" +.Vb 5 +\& $NewFPBitVector = $FingerprintsBitVector\->NewFromRawBinaryString( +\& $RawBinaryString); +\& $NewFPBitVector = Fingerprints::FingerprintsBitVector:: +\& NewFromRawBinaryString( +\& $RawBinaryString); +.Ve +.Sp +Creates a new \fIFingerprintsBitVector\fR using \fIRawBinaryString\fR and returns new +\&\fBFingerprintsBitVector\fR object. +.IP "\fBOchiaiSimilarityCoefficient\fR" 4 +.IX Item "OchiaiSimilarityCoefficient" +.Vb 4 +\& $Value = $FingerprintsBitVector\->OchiaiSimilarityCoefficient( +\& $OtherFingerprintBitVector); +\& $Value = Fingerprints::FingerprintsBitVector::OchiaiSimilarityCoefficient( +\& $FingerprintsBitVectorA, $FingerprintBitVectorB); +.Ve +.Sp +Returns value of \fIOchiai\fR similarity coefficient between two same size \fIFingerprintsBitVectors\fR. +.IP "\fBPearsonSimilarityCoefficient\fR" 4 +.IX Item "PearsonSimilarityCoefficient" +.Vb 4 +\& $Value = $FingerprintsBitVector\->PearsonSimilarityCoefficient( +\& $OtherFingerprintBitVector); +\& $Value = Fingerprints::FingerprintsBitVector::PearsonSimilarityCoefficient( +\& $FingerprintsBitVectorA, $FingerprintBitVectorB); +.Ve +.Sp +Returns value of \fIPearson\fR similarity coefficient between two same size \fIFingerprintsBitVectors\fR. +.IP "\fBRogersTanimotoSimilarityCoefficient\fR" 4 +.IX Item "RogersTanimotoSimilarityCoefficient" +.Vb 5 +\& $Value = $FingerprintsBitVector\->RogersTanimotoSimilarityCoefficient( +\& $OtherFingerprintBitVector); +\& $Value = Fingerprints::FingerprintsBitVector:: +\& RogersTanimotoSimilarityCoefficient( +\& $FingerprintsBitVectorA, $FingerprintBitVectorB); +.Ve +.Sp +Returns value of \fIRogersTanimoto\fR similarity coefficient between two same size \fIFingerprintsBitVectors\fR. +.IP "\fBRussellRaoSimilarityCoefficient\fR" 4 +.IX Item "RussellRaoSimilarityCoefficient" +.Vb 5 +\& $Value = $FingerprintsBitVector\->RussellRaoSimilarityCoefficient( +\& $OtherFingerprintBitVector); +\& $Value = Fingerprints::FingerprintsBitVector:: +\& RussellRaoSimilarityCoefficient( +\& $FingerprintsBitVectorA, $FingerprintBitVectorB); +.Ve +.Sp +Returns value of \fIRussellRao\fR similarity coefficient between two same size \fIFingerprintsBitVectors\fR. +.IP "\fBSetSpecifiedSize\fR" 4 +.IX Item "SetSpecifiedSize" +.Vb 1 +\& $FingerprintsBitVector\->SetSpecifiedSize($Size); +.Ve +.Sp +Sets specified size for fingerprints bit vector. +.Sp +Irrespective of specified size, Perl functions used to handle bit data in \fBBitVector\fR class +automatically sets the size to the next nearest power of 2. \fISpecifiedSize\fR is used by +\&\fBFingerprintsBitVector\fR class to process any aribitray size during similarity coefficient calculations. +.IP "\fBSetDescription\fR" 4 +.IX Item "SetDescription" +.Vb 1 +\& $FingerprintsBitVector\->SetDescription($Description); +.Ve +.Sp +Sets \fIDescription\fR of fingerprints bit vector and returns \fIFingerprintsBitVector\fR. +.IP "\fBSetID\fR" 4 +.IX Item "SetID" +.Vb 1 +\& $FingerprintsBitVector\->SetID($ID); +.Ve +.Sp +Sets \fI\s-1ID\s0\fR of fingerprints bit vector and returns \fIFingerprintsBitVector\fR. +.IP "\fBSetVectorType\fR" 4 +.IX Item "SetVectorType" +.Vb 1 +\& $FingerprintsBitVector\->SetVectorType($VectorType); +.Ve +.Sp +Sets \fIVectorType\fR of fingerprints bit vector and returns \fIFingerprintsBitVector\fR. +.IP "\fBSimpsonSimilarityCoefficient\fR" 4 +.IX Item "SimpsonSimilarityCoefficient" +.Vb 4 +\& $Value = $FingerprintsBitVector\->SimpsonSimilarityCoefficient( +\& $OtherFingerprintBitVector); +\& $Value = Fingerprints::FingerprintsBitVector::SimpsonSimilarityCoefficient( +\& $FingerprintsBitVectorA, $FingerprintBitVectorB); +.Ve +.Sp +Returns value of \fISimpson\fR similarity coefficient between two same size \fIFingerprintsBitVectors\fR. +.IP "\fBSkoalSneath1SimilarityCoefficient\fR" 4 +.IX Item "SkoalSneath1SimilarityCoefficient" +.Vb 5 +\& $Value = $FingerprintsBitVector\->SkoalSneath1SimilarityCoefficient( +\& $OtherFingerprintBitVector); +\& $Value = Fingerprints::FingerprintsBitVector:: +\& SkoalSneath1SimilarityCoefficient( +\& $FingerprintsBitVectorA, $FingerprintBitVectorB); +.Ve +.Sp +Returns value of \fISkoalSneath1\fR similarity coefficient between two same size \fIFingerprintsBitVectors\fR. +.IP "\fBSkoalSneath2SimilarityCoefficient\fR" 4 +.IX Item "SkoalSneath2SimilarityCoefficient" +.Vb 5 +\& $Value = $FingerprintsBitVector\->SkoalSneath2SimilarityCoefficient( +\& $OtherFingerprintBitVector); +\& $Value = Fingerprints::FingerprintsBitVector:: +\& SkoalSneath2SimilarityCoefficient( +\& $FingerprintsBitVectorA, $FingerprintBitVectorB); +.Ve +.Sp +Returns value of \fISkoalSneath2\fR similarity coefficient between two same size \fIFingerprintsBitVectors\fR. +.IP "\fBSkoalSneath3SimilarityCoefficient\fR" 4 +.IX Item "SkoalSneath3SimilarityCoefficient" +.Vb 5 +\& $Value = $FingerprintsBitVector\->SkoalSneath3SimilarityCoefficient( +\& $OtherFingerprintBitVector); +\& $Value = Fingerprints::FingerprintsBitVector:: +\& SkoalSneath3SimilarityCoefficient( +\& $FingerprintsBitVectorA, $FingerprintBitVectorB); +.Ve +.Sp +Returns value of \fISkoalSneath3\fR similarity coefficient between two same size \fIFingerprintsBitVectors\fR +.IP "\fBStringifyFingerprintsBitVector\fR" 4 +.IX Item "StringifyFingerprintsBitVector" +.Vb 1 +\& $String = $FingerprintsBitVector\->StringifyFingerprintsBitVector(); +.Ve +.Sp +Returns a string containing information about \fIFingerprintsBitVector\fR object. +.IP "\fBTanimotoSimilarityCoefficient\fR" 4 +.IX Item "TanimotoSimilarityCoefficient" +.Vb 5 +\& $Value = $FingerprintsBitVector\->TanimotoSimilarityCoefficient( +\& $OtherFingerprintBitVector); +\& $Value = Fingerprints::FingerprintsBitVector:: +\& TanimotoSimilarityCoefficient( +\& $FingerprintsBitVectorA, $FingerprintBitVectorB); +.Ve +.Sp +Returns value of \fITanimoto\fR similarity coefficient between two same size \fIFingerprintsBitVectors\fR. +.IP "\fBTverskySimilarityCoefficient\fR" 4 +.IX Item "TverskySimilarityCoefficient" +.Vb 5 +\& $Value = $FingerprintsBitVector\->TverskySimilarityCoefficient( +\& $OtherFingerprintBitVector, $Alpha); +\& $Value = Fingerprints::FingerprintsBitVector:: +\& TverskySimilarityCoefficient( +\& $FingerprintsBitVectorA, $FingerprintBitVectorB, $Alpha); +.Ve +.Sp +Returns value of \fITversky\fR similarity coefficient between two same size \fIFingerprintsBitVectors\fR. +.IP "\fBWeightedTanimotoSimilarityCoefficient\fR" 4 +.IX Item "WeightedTanimotoSimilarityCoefficient" +.Vb 7 +\& $Value = +\& $FingerprintsBitVector\->WeightedTanimotoSimilarityCoefficient( +\& $OtherFingerprintBitVector, $Beta); +\& $Value = +\& Fingerprints::FingerprintsBitVector:: +\& WeightedTanimotoSimilarityCoefficient( +\& $FingerprintsBitVectorA, $FingerprintBitVectorB, $Beta); +.Ve +.Sp +Returns value of \fIWeightedTanimoto\fR similarity coefficient between two same size \fIFingerprintsBitVectors\fR. +.IP "\fBWeightedTverskySimilarityCoefficient\fR" 4 +.IX Item "WeightedTverskySimilarityCoefficient" +.Vb 7 +\& $Value = +\& $FingerprintsBitVector\->WeightedTverskySimilarityCoefficient( +\& $OtherFingerprintBitVector, $Alpha, $Beta); +\& $Value = +\& Fingerprints::FingerprintsBitVector:: +\& WeightedTverskySimilarityCoefficient( +\& $FingerprintsBitVectorA, $FingerprintBitVectorB, $Alpha, $Beta); +.Ve +.Sp +Returns value of \fIWeightedTversky\fR similarity coefficient between two same size \fIFingerprintsBitVectors\fR. +.IP "\fBYuleSimilarityCoefficient\fR" 4 +.IX Item "YuleSimilarityCoefficient" +.Vb 4 +\& $Value = $FingerprintsBitVector\->YuleSimilarityCoefficient( +\& $OtherFingerprintBitVector); +\& $Value = Fingerprints::FingerprintsBitVector::YuleSimilarityCoefficient( +\& $FingerprintsBitVectorA, $FingerprintBitVectorB); +.Ve +.Sp +Returns value of \fIYule\fR similarity coefficient between two same size \fIFingerprintsBitVectors\fR. +.SH "AUTHOR" +.IX Header "AUTHOR" +Manish Sud <msud@san.rr.com> +.SH "SEE ALSO" +.IX Header "SEE ALSO" +BitVector.pm, FingerprintsStringUtil.pm, FingerprintsVector.pm, Vector.pm +.SH "COPYRIGHT" +.IX Header "COPYRIGHT" +Copyright (C) 2015 Manish Sud. All rights reserved. +.PP +This file is part of MayaChemTools. +.PP +MayaChemTools is free software; you can redistribute it and/or modify it under +the terms of the \s-1GNU\s0 Lesser General Public License as published by the Free +Software Foundation; either version 3 of the License, or (at your option) +any later version.