X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=forester%2Fjava%2Fsrc%2Forg%2Fforester%2Fsurfacing%2FCountsBasedPairwiseDomainSimilarity.java;h=8439f4c5ba1e8f4d83fa84d9baf6f3fa217c57aa;hb=eae9b4d545845ccc94c1465c1664086b22188ad1;hp=a037ed5bea25d008399a75d172c27601a2b27017;hpb=03e51d179caedf757b09e2872f9500318bd85a53;p=jalview.git diff --git a/forester/java/src/org/forester/surfacing/CountsBasedPairwiseDomainSimilarity.java b/forester/java/src/org/forester/surfacing/CountsBasedPairwiseDomainSimilarity.java index a037ed5..8439f4c 100644 --- a/forester/java/src/org/forester/surfacing/CountsBasedPairwiseDomainSimilarity.java +++ b/forester/java/src/org/forester/surfacing/CountsBasedPairwiseDomainSimilarity.java @@ -23,14 +23,14 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA // // Contact: phylosoft @ gmail . com -// WWW: www.phylosoft.org/forester +// WWW: https://sites.google.com/site/cmzmasek/home/software/forester package org.forester.surfacing; public class CountsBasedPairwiseDomainSimilarity implements PairwiseDomainSimilarity { - private final double _score; - private final int _copy_number_difference; + private final short _copy_number_difference; + private final short _counts_sum; /** * counts_difference: (counts for domain 1) minus (counts for domain 2). @@ -39,16 +39,15 @@ public class CountsBasedPairwiseDomainSimilarity implements PairwiseDomainSimila * @param counts_difference value of domain_1 minus value of domain_2 * @param counts_sum */ - public CountsBasedPairwiseDomainSimilarity( final int counts_difference, final int counts_sum ) { + public CountsBasedPairwiseDomainSimilarity( final short counts_difference, final short counts_sum ) { if ( counts_sum <= 0 ) { throw new IllegalArgumentException( "attempt to use copy sum of less than or equal to 0: " + counts_sum ); } - _copy_number_difference = counts_difference; - final int abs_copy_number_difference = Math.abs( counts_difference ); - if ( abs_copy_number_difference > counts_sum ) { + if ( Math.abs( counts_difference ) > counts_sum ) { throw new IllegalArgumentException( "attempt to use absolute copy number difference larger than copy number sum" ); } - _score = 1.0 - ( ( double ) abs_copy_number_difference / counts_sum ); + _copy_number_difference = counts_difference; + _counts_sum = counts_sum; } /** @@ -62,6 +61,6 @@ public class CountsBasedPairwiseDomainSimilarity implements PairwiseDomainSimila @Override public double getSimilarityScore() { - return _score; + return ( 1.0 - ( ( double ) Math.abs( _copy_number_difference ) / _counts_sum ) ); } }