org.apache.lucene.search.similarities

## Class BasicModel

- java.lang.Object
- - org.apache.lucene.search.similarities.BasicModel

Direct Known Subclasses:
  BasicModelBE, BasicModelD, BasicModelG, BasicModelIF, BasicModelIn, BasicModelIne, BasicModelP

    public abstract class BasicModel
    extends Object

This class acts as the base class for the specific basic model implementations in the DFR framework. Basic models compute the informative content Inf1 = -log2Prob1 .

See Also:
  `DFRSimilarity`
WARNING: This API is experimental and might change in incompatible ways in the next release.

### Constructor Summary

Constructors
Constructor and Description
`BasicModel()` Sole constructor.

### Method Summary

All Methods Instance Methods Abstract Methods Concrete Methods
`Explanation` `explain(BasicStats stats, float tfn)` Returns an explanation for the score.
`abstract float` `score(BasicStats stats, float tfn)` Returns the informative content score.
`abstract String` `toString()` Subclasses must override this method to return the code of the basic model formula.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Constructor Detail

#### BasicModel

    public BasicModel()

Sole constructor. (For invocation by subclass constructors, typically implicit.)

### Method Detail

#### score

    public abstract float score(BasicStats stats,
                                float tfn)

Returns the informative content score.

#### explain

    public Explanation explain(BasicStats stats,
                               float tfn)

Returns an explanation for the score.

Most basic models use the number of documents and the total term frequency to compute Inf1. This method provides a generic explanation for such models. Subclasses that use other statistics must override this method.

#### toString

    public abstract String toString()

Subclasses must override this method to return the code of the basic model formula. Refer to the original paper for the list.

Overrides:
  `toString` in class `Object`