KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > contineo > searchengine > util > SquareSimilarity


1 package org.contineo.searchengine.util;
2
3 import org.apache.lucene.search.Similarity;
4
5 /**
6  * Created on 14.01.2005
7  * @author Michael Scholz
8  *
9  * Similarity class for lucene searcher classes.
10  */

11 public class SquareSimilarity extends Similarity {
12
13     /**
14      *
15      */

16     public SquareSimilarity() {
17     }
18
19     public float lengthNorm(String JavaDoc fieldName, int numTerms) {
20         return (float)(1.0D / Math.sqrt(Math.sqrt(numTerms)));
21     }
22
23     public float queryNorm(float sumOfSquaredWeights) {
24         return (float)(1.0D / Math.sqrt(sumOfSquaredWeights));
25     }
26
27     public float tf(float freq) {
28         return (float)(Math.sqrt(freq));
29     }
30
31     public float sloppyFreq(int distance) {
32         return 1.0F / (float)(distance + 1);
33     }
34
35     public float idf(int docFreq, int numDocs) {
36         return (float)(Math.sqrt(Math.log((double)numDocs / (double)(docFreq + 1)) + 1.0D));
37     }
38
39     public float coord(int overlap, int maxOverlap) {
40         return (float)overlap / (float)maxOverlap;
41     }
42 }
43
Popular Tags