blob: 31bb09e657b4cec603464770ebc53df6f69ee92d [file] [log] [blame]
<!DOCTYPE html>
<!--[if IE]><![endif]-->
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Class DefaultSimilarity
| Apache Lucene.NET 4.8.0-beta00010 Documentation </title>
<meta name="viewport" content="width=device-width">
<meta name="title" content="Class DefaultSimilarity
| Apache Lucene.NET 4.8.0-beta00010 Documentation ">
<meta name="generator" content="docfx 2.56.0.0">
<link rel="shortcut icon" href="https://lucenenet.apache.org/docs/4.8.0-beta00009/logo/favicon.ico">
<link rel="stylesheet" href="https://lucenenet.apache.org/docs/4.8.0-beta00009/styles/docfx.vendor.css">
<link rel="stylesheet" href="https://lucenenet.apache.org/docs/4.8.0-beta00009/styles/docfx.css">
<link rel="stylesheet" href="https://lucenenet.apache.org/docs/4.8.0-beta00009/styles/main.css">
<meta property="docfx:navrel" content="toc.html">
<meta property="docfx:tocrel" content="core/toc.html">
<meta property="docfx:rel" content="https://lucenenet.apache.org/docs/4.8.0-beta00009/">
</head>
<body data-spy="scroll" data-target="#affix" data-offset="120">
<div id="wrapper">
<header>
<nav id="autocollapse" class="navbar ng-scope" role="navigation">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="/">
<img id="logo" class="svg" src="https://lucenenet.apache.org/docs/4.8.0-beta00009/logo/lucene-net-color.png" alt="">
</a>
</div>
<div class="collapse navbar-collapse" id="navbar">
<form class="navbar-form navbar-right" role="search" id="search">
<div class="form-group">
<input type="text" class="form-control" id="search-query" placeholder="Search" autocomplete="off">
</div>
</form>
</div>
</div>
</nav>
<div class="subnav navbar navbar-default">
<div class="container hide-when-search">
<ul class="level0 breadcrumb">
<li>
<a href="https://lucenenet.apache.org/docs/4.8.0-beta00009/">API</a>
<span id="breadcrumb">
<ul class="breadcrumb">
<li></li>
</ul>
</span>
</li>
</ul>
</div>
</div>
</header>
<div class="container body-content">
<div id="search-results">
<div class="search-list"></div>
<div class="sr-items">
<p><i class="glyphicon glyphicon-refresh index-loading"></i></p>
</div>
<ul id="pagination"></ul>
</div>
</div>
<div role="main" class="container body-content hide-when-search">
<div class="sidenav hide-when-search">
<a class="btn toc-toggle collapse" data-toggle="collapse" href="#sidetoggle" aria-expanded="false" aria-controls="sidetoggle">Show / Hide Table of Contents</a>
<div class="sidetoggle collapse" id="sidetoggle">
<div id="sidetoc"></div>
</div>
</div>
<div class="article row grid-right">
<div class="col-md-10">
<article class="content wrap" id="_content" data-uid="Lucene.Net.Search.Similarities.DefaultSimilarity">
<h1 id="Lucene_Net_Search_Similarities_DefaultSimilarity" data-uid="Lucene.Net.Search.Similarities.DefaultSimilarity" class="text-break">Class DefaultSimilarity
</h1>
<div class="markdown level0 summary"><p>Expert: Default scoring implementation which encodes (<a class="xref" href="Lucene.Net.Search.Similarities.DefaultSimilarity.html#Lucene_Net_Search_Similarities_DefaultSimilarity_EncodeNormValue_System_Single_">EncodeNormValue(Single)</a>)
norm values as a single byte before being stored. At search time,
the norm byte value is read from the index
<a class="xref" href="Lucene.Net.Store.Directory.html">Directory</a> and
decoded (<a class="xref" href="Lucene.Net.Search.Similarities.DefaultSimilarity.html#Lucene_Net_Search_Similarities_DefaultSimilarity_DecodeNormValue_System_Int64_">DecodeNormValue(Int64)</a>) back to a float <em>norm</em> value.
this encoding/decoding, while reducing index size, comes with the price of
precision loss - it is not guaranteed that <em>Decode(Encode(x)) = x</em>. For
instance, <em>Decode(Encode(0.89)) = 0.75</em>.
<p>
Compression of norm values to a single byte saves memory at search time,
because once a field is referenced at search time, its norms - for all
documents - are maintained in memory.
<p>
The rationale supporting such lossy compression of norm values is that given
the difficulty (and inaccuracy) of users to express their true information
need by a query, only big differences matter.
<p>
Last, note that search time is too late to modify this <em>norm</em> part of
scoring, e.g. by using a different <a class="xref" href="Lucene.Net.Search.Similarities.Similarity.html">Similarity</a> for search.</p>
</div>
<div class="markdown level0 conceptual"></div>
<div class="inheritance">
<h5>Inheritance</h5>
<div class="level0"><span class="xref">System.Object</span></div>
<div class="level1"><a class="xref" href="Lucene.Net.Search.Similarities.Similarity.html">Similarity</a></div>
<div class="level2"><a class="xref" href="Lucene.Net.Search.Similarities.TFIDFSimilarity.html">TFIDFSimilarity</a></div>
<div class="level3"><span class="xref">DefaultSimilarity</span></div>
</div>
<div class="inheritedMembers">
<h5>Inherited Members</h5>
<div>
<a class="xref" href="Lucene.Net.Search.Similarities.TFIDFSimilarity.html#Lucene_Net_Search_Similarities_TFIDFSimilarity_IdfExplain_Lucene_Net_Search_CollectionStatistics_Lucene_Net_Search_TermStatistics_">TFIDFSimilarity.IdfExplain(CollectionStatistics, TermStatistics)</a>
</div>
<div>
<a class="xref" href="Lucene.Net.Search.Similarities.TFIDFSimilarity.html#Lucene_Net_Search_Similarities_TFIDFSimilarity_IdfExplain_Lucene_Net_Search_CollectionStatistics_Lucene_Net_Search_TermStatistics___">TFIDFSimilarity.IdfExplain(CollectionStatistics, TermStatistics[])</a>
</div>
<div>
<a class="xref" href="Lucene.Net.Search.Similarities.TFIDFSimilarity.html#Lucene_Net_Search_Similarities_TFIDFSimilarity_ComputeNorm_Lucene_Net_Index_FieldInvertState_">TFIDFSimilarity.ComputeNorm(FieldInvertState)</a>
</div>
<div>
<a class="xref" href="Lucene.Net.Search.Similarities.TFIDFSimilarity.html#Lucene_Net_Search_Similarities_TFIDFSimilarity_ComputeWeight_System_Single_Lucene_Net_Search_CollectionStatistics_Lucene_Net_Search_TermStatistics___">TFIDFSimilarity.ComputeWeight(Single, CollectionStatistics, TermStatistics[])</a>
</div>
<div>
<a class="xref" href="Lucene.Net.Search.Similarities.TFIDFSimilarity.html#Lucene_Net_Search_Similarities_TFIDFSimilarity_GetSimScorer_Lucene_Net_Search_Similarities_Similarity_SimWeight_Lucene_Net_Index_AtomicReaderContext_">TFIDFSimilarity.GetSimScorer(Similarity.SimWeight, AtomicReaderContext)</a>
</div>
<div>
<span class="xref">System.Object.Equals(System.Object)</span>
</div>
<div>
<span class="xref">System.Object.Equals(System.Object, System.Object)</span>
</div>
<div>
<span class="xref">System.Object.GetHashCode()</span>
</div>
<div>
<span class="xref">System.Object.GetType()</span>
</div>
<div>
<span class="xref">System.Object.MemberwiseClone()</span>
</div>
<div>
<span class="xref">System.Object.ReferenceEquals(System.Object, System.Object)</span>
</div>
</div>
<h6><strong>Namespace</strong>: <a class="xref" href="Lucene.Net.Search.Similarities.html">Lucene.Net.Search.Similarities</a></h6>
<h6><strong>Assembly</strong>: Lucene.Net.dll</h6>
<h5 id="Lucene_Net_Search_Similarities_DefaultSimilarity_syntax">Syntax</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public class DefaultSimilarity : TFIDFSimilarity</code></pre>
</div>
<h3 id="constructors">Constructors
</h3>
<span class="small pull-right mobile-hide">
<span class="divider">|</span>
<a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00010/websites/apidocs/apiSpec/new?filename=Lucene_Net_Search_Similarities_DefaultSimilarity__ctor.md&amp;value=---%0Auid%3A%20Lucene.Net.Search.Similarities.DefaultSimilarity.%23ctor%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
</span>
<span class="small pull-right mobile-hide">
<a href="https://github.com/NightOwl888/lucenenet/blob/release/Lucene.Net_4_8_0_beta00010/src/Lucene.Net/Search/Similarities/DefaultSimilarity.cs/#L65">View Source</a>
</span>
<a id="Lucene_Net_Search_Similarities_DefaultSimilarity__ctor_" data-uid="Lucene.Net.Search.Similarities.DefaultSimilarity.#ctor*"></a>
<h4 id="Lucene_Net_Search_Similarities_DefaultSimilarity__ctor" data-uid="Lucene.Net.Search.Similarities.DefaultSimilarity.#ctor">DefaultSimilarity()</h4>
<div class="markdown level1 summary"><p>Sole constructor: parameter-free </p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public DefaultSimilarity()</code></pre>
</div>
<h3 id="fields">Fields
</h3>
<span class="small pull-right mobile-hide">
<span class="divider">|</span>
<a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00010/websites/apidocs/apiSpec/new?filename=Lucene_Net_Search_Similarities_DefaultSimilarity_m_discountOverlaps.md&amp;value=---%0Auid%3A%20Lucene.Net.Search.Similarities.DefaultSimilarity.m_discountOverlaps%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
</span>
<span class="small pull-right mobile-hide">
<a href="https://github.com/NightOwl888/lucenenet/blob/release/Lucene.Net_4_8_0_beta00010/src/Lucene.Net/Search/Similarities/DefaultSimilarity.cs/#L167">View Source</a>
</span>
<h4 id="Lucene_Net_Search_Similarities_DefaultSimilarity_m_discountOverlaps" data-uid="Lucene.Net.Search.Similarities.DefaultSimilarity.m_discountOverlaps">m_discountOverlaps</h4>
<div class="markdown level1 summary"><p><code>True</code> if overlap tokens (tokens with a position of increment of zero) are
discounted from the document&apos;s length.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">protected bool m_discountOverlaps</code></pre>
</div>
<h5 class="fieldValue">Field Value</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">System.Boolean</span></td>
<td></td>
</tr>
</tbody>
</table>
<h3 id="properties">Properties
</h3>
<span class="small pull-right mobile-hide">
<span class="divider">|</span>
<a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00010/websites/apidocs/apiSpec/new?filename=Lucene_Net_Search_Similarities_DefaultSimilarity_DiscountOverlaps.md&amp;value=---%0Auid%3A%20Lucene.Net.Search.Similarities.DefaultSimilarity.DiscountOverlaps%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
</span>
<span class="small pull-right mobile-hide">
<a href="https://github.com/NightOwl888/lucenenet/blob/release/Lucene.Net_4_8_0_beta00010/src/Lucene.Net/Search/Similarities/DefaultSimilarity.cs/#L178">View Source</a>
</span>
<a id="Lucene_Net_Search_Similarities_DefaultSimilarity_DiscountOverlaps_" data-uid="Lucene.Net.Search.Similarities.DefaultSimilarity.DiscountOverlaps*"></a>
<h4 id="Lucene_Net_Search_Similarities_DefaultSimilarity_DiscountOverlaps" data-uid="Lucene.Net.Search.Similarities.DefaultSimilarity.DiscountOverlaps">DiscountOverlaps</h4>
<div class="markdown level1 summary"><p>Determines whether overlap tokens (Tokens with
0 position increment) are ignored when computing
norm. By default this is true, meaning overlap
tokens do not count when computing norms.
<p>
<div class="lucene-block lucene-experimental">This is a Lucene.NET EXPERIMENTAL API, use at your own risk</div></div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual bool DiscountOverlaps { get; set; }</code></pre>
</div>
<h5 class="propertyValue">Property Value</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">System.Boolean</span></td>
<td></td>
</tr>
</tbody>
</table>
<h5 id="Lucene_Net_Search_Similarities_DefaultSimilarity_DiscountOverlaps_seealso">See Also</h5>
<div class="seealso">
<div><a class="xref" href="Lucene.Net.Search.Similarities.TFIDFSimilarity.html#Lucene_Net_Search_Similarities_TFIDFSimilarity_ComputeNorm_Lucene_Net_Index_FieldInvertState_">ComputeNorm</a>(<a class="xref" href="Lucene.Net.Index.FieldInvertState.html">FieldInvertState</a>)</div>
</div>
<h3 id="methods">Methods
</h3>
<span class="small pull-right mobile-hide">
<span class="divider">|</span>
<a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00010/websites/apidocs/apiSpec/new?filename=Lucene_Net_Search_Similarities_DefaultSimilarity_Coord_System_Int32_System_Int32_.md&amp;value=---%0Auid%3A%20Lucene.Net.Search.Similarities.DefaultSimilarity.Coord(System.Int32%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
</span>
<span class="small pull-right mobile-hide">
<a href="https://github.com/NightOwl888/lucenenet/blob/release/Lucene.Net_4_8_0_beta00010/src/Lucene.Net/Search/Similarities/DefaultSimilarity.cs/#L71">View Source</a>
</span>
<a id="Lucene_Net_Search_Similarities_DefaultSimilarity_Coord_" data-uid="Lucene.Net.Search.Similarities.DefaultSimilarity.Coord*"></a>
<h4 id="Lucene_Net_Search_Similarities_DefaultSimilarity_Coord_System_Int32_System_Int32_" data-uid="Lucene.Net.Search.Similarities.DefaultSimilarity.Coord(System.Int32,System.Int32)">Coord(Int32, Int32)</h4>
<div class="markdown level1 summary"><p>Implemented as <code>overlap / maxOverlap</code>. </p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public override float Coord(int overlap, int maxOverlap)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">System.Int32</span></td>
<td><span class="parametername">overlap</span></td>
<td></td>
</tr>
<tr>
<td><span class="xref">System.Int32</span></td>
<td><span class="parametername">maxOverlap</span></td>
<td></td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">System.Single</span></td>
<td></td>
</tr>
</tbody>
</table>
<h5 class="overrides">Overrides</h5>
<div><a class="xref" href="Lucene.Net.Search.Similarities.TFIDFSimilarity.html#Lucene_Net_Search_Similarities_TFIDFSimilarity_Coord_System_Int32_System_Int32_">TFIDFSimilarity.Coord(Int32, Int32)</a></div>
<span class="small pull-right mobile-hide">
<span class="divider">|</span>
<a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00010/websites/apidocs/apiSpec/new?filename=Lucene_Net_Search_Similarities_DefaultSimilarity_DecodeNormValue_System_Int64_.md&amp;value=---%0Auid%3A%20Lucene.Net.Search.Similarities.DefaultSimilarity.DecodeNormValue(System.Int64)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
</span>
<span class="small pull-right mobile-hide">
<a href="https://github.com/NightOwl888/lucenenet/blob/release/Lucene.Net_4_8_0_beta00010/src/Lucene.Net/Search/Similarities/DefaultSimilarity.cs/#L105">View Source</a>
</span>
<a id="Lucene_Net_Search_Similarities_DefaultSimilarity_DecodeNormValue_" data-uid="Lucene.Net.Search.Similarities.DefaultSimilarity.DecodeNormValue*"></a>
<h4 id="Lucene_Net_Search_Similarities_DefaultSimilarity_DecodeNormValue_System_Int64_" data-uid="Lucene.Net.Search.Similarities.DefaultSimilarity.DecodeNormValue(System.Int64)">DecodeNormValue(Int64)</h4>
<div class="markdown level1 summary"><p>Decodes the norm value, assuming it is a single byte.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public override sealed float DecodeNormValue(long norm)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">System.Int64</span></td>
<td><span class="parametername">norm</span></td>
<td></td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">System.Single</span></td>
<td></td>
</tr>
</tbody>
</table>
<h5 class="overrides">Overrides</h5>
<div><a class="xref" href="Lucene.Net.Search.Similarities.TFIDFSimilarity.html#Lucene_Net_Search_Similarities_TFIDFSimilarity_DecodeNormValue_System_Int64_">TFIDFSimilarity.DecodeNormValue(Int64)</a></div>
<h5 id="Lucene_Net_Search_Similarities_DefaultSimilarity_DecodeNormValue_System_Int64__seealso">See Also</h5>
<div class="seealso">
<div><a class="xref" href="Lucene.Net.Search.Similarities.DefaultSimilarity.html#Lucene_Net_Search_Similarities_DefaultSimilarity_EncodeNormValue_System_Single_">EncodeNormValue(Single)</a></div>
</div>
<span class="small pull-right mobile-hide">
<span class="divider">|</span>
<a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00010/websites/apidocs/apiSpec/new?filename=Lucene_Net_Search_Similarities_DefaultSimilarity_EncodeNormValue_System_Single_.md&amp;value=---%0Auid%3A%20Lucene.Net.Search.Similarities.DefaultSimilarity.EncodeNormValue(System.Single)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
</span>
<span class="small pull-right mobile-hide">
<a href="https://github.com/NightOwl888/lucenenet/blob/release/Lucene.Net_4_8_0_beta00010/src/Lucene.Net/Search/Similarities/DefaultSimilarity.cs/#L96">View Source</a>
</span>
<a id="Lucene_Net_Search_Similarities_DefaultSimilarity_EncodeNormValue_" data-uid="Lucene.Net.Search.Similarities.DefaultSimilarity.EncodeNormValue*"></a>
<h4 id="Lucene_Net_Search_Similarities_DefaultSimilarity_EncodeNormValue_System_Single_" data-uid="Lucene.Net.Search.Similarities.DefaultSimilarity.EncodeNormValue(System.Single)">EncodeNormValue(Single)</h4>
<div class="markdown level1 summary"><p>Encodes a normalization factor for storage in an index.
<p>
The encoding uses a three-bit mantissa, a five-bit exponent, and the
zero-exponent point at 15, thus representing values from around 7x10^9 to
2x10^-9 with about one significant decimal digit of accuracy. Zero is also
represented. Negative numbers are rounded up to zero. Values too large to
represent are rounded down to the largest representable value. Positive
values too small to represent are rounded up to the smallest positive
representable value.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public override sealed long EncodeNormValue(float f)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">System.Single</span></td>
<td><span class="parametername">f</span></td>
<td></td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">System.Int64</span></td>
<td></td>
</tr>
</tbody>
</table>
<h5 class="overrides">Overrides</h5>
<div><a class="xref" href="Lucene.Net.Search.Similarities.TFIDFSimilarity.html#Lucene_Net_Search_Similarities_TFIDFSimilarity_EncodeNormValue_System_Single_">TFIDFSimilarity.EncodeNormValue(Single)</a></div>
<h5 id="Lucene_Net_Search_Similarities_DefaultSimilarity_EncodeNormValue_System_Single__seealso">See Also</h5>
<div class="seealso">
<div><a class="xref" href="Lucene.Net.Documents.Field.html#Lucene_Net_Documents_Field_Boost">Boost</a></div>
<div><a class="xref" href="Lucene.Net.Util.SmallSingle.html">SmallSingle</a></div>
</div>
<span class="small pull-right mobile-hide">
<span class="divider">|</span>
<a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00010/websites/apidocs/apiSpec/new?filename=Lucene_Net_Search_Similarities_DefaultSimilarity_Idf_System_Int64_System_Int64_.md&amp;value=---%0Auid%3A%20Lucene.Net.Search.Similarities.DefaultSimilarity.Idf(System.Int64%2CSystem.Int64)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
</span>
<span class="small pull-right mobile-hide">
<a href="https://github.com/NightOwl888/lucenenet/blob/release/Lucene.Net_4_8_0_beta00010/src/Lucene.Net/Search/Similarities/DefaultSimilarity.cs/#L158">View Source</a>
</span>
<a id="Lucene_Net_Search_Similarities_DefaultSimilarity_Idf_" data-uid="Lucene.Net.Search.Similarities.DefaultSimilarity.Idf*"></a>
<h4 id="Lucene_Net_Search_Similarities_DefaultSimilarity_Idf_System_Int64_System_Int64_" data-uid="Lucene.Net.Search.Similarities.DefaultSimilarity.Idf(System.Int64,System.Int64)">Idf(Int64, Int64)</h4>
<div class="markdown level1 summary"><p>Implemented as <code>log(numDocs/(docFreq+1)) + 1</code>. </p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public override float Idf(long docFreq, long numDocs)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">System.Int64</span></td>
<td><span class="parametername">docFreq</span></td>
<td></td>
</tr>
<tr>
<td><span class="xref">System.Int64</span></td>
<td><span class="parametername">numDocs</span></td>
<td></td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">System.Single</span></td>
<td></td>
</tr>
</tbody>
</table>
<h5 class="overrides">Overrides</h5>
<div><a class="xref" href="Lucene.Net.Search.Similarities.TFIDFSimilarity.html#Lucene_Net_Search_Similarities_TFIDFSimilarity_Idf_System_Int64_System_Int64_">TFIDFSimilarity.Idf(Int64, Int64)</a></div>
<span class="small pull-right mobile-hide">
<span class="divider">|</span>
<a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00010/websites/apidocs/apiSpec/new?filename=Lucene_Net_Search_Similarities_DefaultSimilarity_LengthNorm_Lucene_Net_Index_FieldInvertState_.md&amp;value=---%0Auid%3A%20Lucene.Net.Search.Similarities.DefaultSimilarity.LengthNorm(Lucene.Net.Index.FieldInvertState)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
</span>
<span class="small pull-right mobile-hide">
<a href="https://github.com/NightOwl888/lucenenet/blob/release/Lucene.Net_4_8_0_beta00010/src/Lucene.Net/Search/Similarities/DefaultSimilarity.cs/#L121">View Source</a>
</span>
<a id="Lucene_Net_Search_Similarities_DefaultSimilarity_LengthNorm_" data-uid="Lucene.Net.Search.Similarities.DefaultSimilarity.LengthNorm*"></a>
<h4 id="Lucene_Net_Search_Similarities_DefaultSimilarity_LengthNorm_Lucene_Net_Index_FieldInvertState_" data-uid="Lucene.Net.Search.Similarities.DefaultSimilarity.LengthNorm(Lucene.Net.Index.FieldInvertState)">LengthNorm(FieldInvertState)</h4>
<div class="markdown level1 summary"><p>Implemented as
<code>state.Boost * LengthNorm(numTerms)</code>, where
<code>numTerms</code> is <a class="xref" href="Lucene.Net.Index.FieldInvertState.html#Lucene_Net_Index_FieldInvertState_Length">Length</a> if
<a class="xref" href="Lucene.Net.Search.Similarities.DefaultSimilarity.html#Lucene_Net_Search_Similarities_DefaultSimilarity_DiscountOverlaps">DiscountOverlaps</a> is <code>false</code>, else it&apos;s
<a class="xref" href="Lucene.Net.Index.FieldInvertState.html#Lucene_Net_Index_FieldInvertState_Length">Length</a> -
<a class="xref" href="Lucene.Net.Index.FieldInvertState.html#Lucene_Net_Index_FieldInvertState_NumOverlap">NumOverlap</a>.</p>
<p><p>
<div class="lucene-block lucene-experimental">This is a Lucene.NET EXPERIMENTAL API, use at your own risk</div></div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public override float LengthNorm(FieldInvertState state)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><a class="xref" href="Lucene.Net.Index.FieldInvertState.html">FieldInvertState</a></td>
<td><span class="parametername">state</span></td>
<td></td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">System.Single</span></td>
<td></td>
</tr>
</tbody>
</table>
<h5 class="overrides">Overrides</h5>
<div><a class="xref" href="Lucene.Net.Search.Similarities.TFIDFSimilarity.html#Lucene_Net_Search_Similarities_TFIDFSimilarity_LengthNorm_Lucene_Net_Index_FieldInvertState_">TFIDFSimilarity.LengthNorm(FieldInvertState)</a></div>
<span class="small pull-right mobile-hide">
<span class="divider">|</span>
<a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00010/websites/apidocs/apiSpec/new?filename=Lucene_Net_Search_Similarities_DefaultSimilarity_QueryNorm_System_Single_.md&amp;value=---%0Auid%3A%20Lucene.Net.Search.Similarities.DefaultSimilarity.QueryNorm(System.Single)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
</span>
<span class="small pull-right mobile-hide">
<a href="https://github.com/NightOwl888/lucenenet/blob/release/Lucene.Net_4_8_0_beta00010/src/Lucene.Net/Search/Similarities/DefaultSimilarity.cs/#L78">View Source</a>
</span>
<a id="Lucene_Net_Search_Similarities_DefaultSimilarity_QueryNorm_" data-uid="Lucene.Net.Search.Similarities.DefaultSimilarity.QueryNorm*"></a>
<h4 id="Lucene_Net_Search_Similarities_DefaultSimilarity_QueryNorm_System_Single_" data-uid="Lucene.Net.Search.Similarities.DefaultSimilarity.QueryNorm(System.Single)">QueryNorm(Single)</h4>
<div class="markdown level1 summary"><p>Implemented as <code>1/sqrt(sumOfSquaredWeights)</code>. </p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public override float QueryNorm(float sumOfSquaredWeights)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">System.Single</span></td>
<td><span class="parametername">sumOfSquaredWeights</span></td>
<td></td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">System.Single</span></td>
<td></td>
</tr>
</tbody>
</table>
<h5 class="overrides">Overrides</h5>
<div><a class="xref" href="Lucene.Net.Search.Similarities.TFIDFSimilarity.html#Lucene_Net_Search_Similarities_TFIDFSimilarity_QueryNorm_System_Single_">TFIDFSimilarity.QueryNorm(Single)</a></div>
<span class="small pull-right mobile-hide">
<span class="divider">|</span>
<a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00010/websites/apidocs/apiSpec/new?filename=Lucene_Net_Search_Similarities_DefaultSimilarity_ScorePayload_System_Int32_System_Int32_System_Int32_Lucene_Net_Util_BytesRef_.md&amp;value=---%0Auid%3A%20Lucene.Net.Search.Similarities.DefaultSimilarity.ScorePayload(System.Int32%2CSystem.Int32%2CSystem.Int32%2CLucene.Net.Util.BytesRef)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
</span>
<span class="small pull-right mobile-hide">
<a href="https://github.com/NightOwl888/lucenenet/blob/release/Lucene.Net_4_8_0_beta00010/src/Lucene.Net/Search/Similarities/DefaultSimilarity.cs/#L151">View Source</a>
</span>
<a id="Lucene_Net_Search_Similarities_DefaultSimilarity_ScorePayload_" data-uid="Lucene.Net.Search.Similarities.DefaultSimilarity.ScorePayload*"></a>
<h4 id="Lucene_Net_Search_Similarities_DefaultSimilarity_ScorePayload_System_Int32_System_Int32_System_Int32_Lucene_Net_Util_BytesRef_" data-uid="Lucene.Net.Search.Similarities.DefaultSimilarity.ScorePayload(System.Int32,System.Int32,System.Int32,Lucene.Net.Util.BytesRef)">ScorePayload(Int32, Int32, Int32, BytesRef)</h4>
<div class="markdown level1 summary"><p>The default implementation returns <code>1</code> </p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public override float ScorePayload(int doc, int start, int end, BytesRef payload)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">System.Int32</span></td>
<td><span class="parametername">doc</span></td>
<td></td>
</tr>
<tr>
<td><span class="xref">System.Int32</span></td>
<td><span class="parametername">start</span></td>
<td></td>
</tr>
<tr>
<td><span class="xref">System.Int32</span></td>
<td><span class="parametername">end</span></td>
<td></td>
</tr>
<tr>
<td><a class="xref" href="Lucene.Net.Util.BytesRef.html">BytesRef</a></td>
<td><span class="parametername">payload</span></td>
<td></td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">System.Single</span></td>
<td></td>
</tr>
</tbody>
</table>
<h5 class="overrides">Overrides</h5>
<div><a class="xref" href="Lucene.Net.Search.Similarities.TFIDFSimilarity.html#Lucene_Net_Search_Similarities_TFIDFSimilarity_ScorePayload_System_Int32_System_Int32_System_Int32_Lucene_Net_Util_BytesRef_">TFIDFSimilarity.ScorePayload(Int32, Int32, Int32, BytesRef)</a></div>
<span class="small pull-right mobile-hide">
<span class="divider">|</span>
<a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00010/websites/apidocs/apiSpec/new?filename=Lucene_Net_Search_Similarities_DefaultSimilarity_SloppyFreq_System_Int32_.md&amp;value=---%0Auid%3A%20Lucene.Net.Search.Similarities.DefaultSimilarity.SloppyFreq(System.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
</span>
<span class="small pull-right mobile-hide">
<a href="https://github.com/NightOwl888/lucenenet/blob/release/Lucene.Net_4_8_0_beta00010/src/Lucene.Net/Search/Similarities/DefaultSimilarity.cs/#L144">View Source</a>
</span>
<a id="Lucene_Net_Search_Similarities_DefaultSimilarity_SloppyFreq_" data-uid="Lucene.Net.Search.Similarities.DefaultSimilarity.SloppyFreq*"></a>
<h4 id="Lucene_Net_Search_Similarities_DefaultSimilarity_SloppyFreq_System_Int32_" data-uid="Lucene.Net.Search.Similarities.DefaultSimilarity.SloppyFreq(System.Int32)">SloppyFreq(Int32)</h4>
<div class="markdown level1 summary"><p>Implemented as <code>1 / (distance + 1)</code>. </p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public override float SloppyFreq(int distance)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">System.Int32</span></td>
<td><span class="parametername">distance</span></td>
<td></td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">System.Single</span></td>
<td></td>
</tr>
</tbody>
</table>
<h5 class="overrides">Overrides</h5>
<div><a class="xref" href="Lucene.Net.Search.Similarities.TFIDFSimilarity.html#Lucene_Net_Search_Similarities_TFIDFSimilarity_SloppyFreq_System_Int32_">TFIDFSimilarity.SloppyFreq(Int32)</a></div>
<span class="small pull-right mobile-hide">
<span class="divider">|</span>
<a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00010/websites/apidocs/apiSpec/new?filename=Lucene_Net_Search_Similarities_DefaultSimilarity_Tf_System_Single_.md&amp;value=---%0Auid%3A%20Lucene.Net.Search.Similarities.DefaultSimilarity.Tf(System.Single)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
</span>
<span class="small pull-right mobile-hide">
<a href="https://github.com/NightOwl888/lucenenet/blob/release/Lucene.Net_4_8_0_beta00010/src/Lucene.Net/Search/Similarities/DefaultSimilarity.cs/#L137">View Source</a>
</span>
<a id="Lucene_Net_Search_Similarities_DefaultSimilarity_Tf_" data-uid="Lucene.Net.Search.Similarities.DefaultSimilarity.Tf*"></a>
<h4 id="Lucene_Net_Search_Similarities_DefaultSimilarity_Tf_System_Single_" data-uid="Lucene.Net.Search.Similarities.DefaultSimilarity.Tf(System.Single)">Tf(Single)</h4>
<div class="markdown level1 summary"><p>Implemented as <code>Math.Sqrt(freq)</code>. </p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public override float Tf(float freq)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">System.Single</span></td>
<td><span class="parametername">freq</span></td>
<td></td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">System.Single</span></td>
<td></td>
</tr>
</tbody>
</table>
<h5 class="overrides">Overrides</h5>
<div><a class="xref" href="Lucene.Net.Search.Similarities.TFIDFSimilarity.html#Lucene_Net_Search_Similarities_TFIDFSimilarity_Tf_System_Single_">TFIDFSimilarity.Tf(Single)</a></div>
<span class="small pull-right mobile-hide">
<span class="divider">|</span>
<a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00010/websites/apidocs/apiSpec/new?filename=Lucene_Net_Search_Similarities_DefaultSimilarity_ToString.md&amp;value=---%0Auid%3A%20Lucene.Net.Search.Similarities.DefaultSimilarity.ToString%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
</span>
<span class="small pull-right mobile-hide">
<a href="https://github.com/NightOwl888/lucenenet/blob/release/Lucene.Net_4_8_0_beta00010/src/Lucene.Net/Search/Similarities/DefaultSimilarity.cs/#L184">View Source</a>
</span>
<a id="Lucene_Net_Search_Similarities_DefaultSimilarity_ToString_" data-uid="Lucene.Net.Search.Similarities.DefaultSimilarity.ToString*"></a>
<h4 id="Lucene_Net_Search_Similarities_DefaultSimilarity_ToString" data-uid="Lucene.Net.Search.Similarities.DefaultSimilarity.ToString">ToString()</h4>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public override string ToString()</code></pre>
</div>
<h5 class="returns">Returns</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">System.String</span></td>
<td></td>
</tr>
</tbody>
</table>
<h5 class="overrides">Overrides</h5>
<div><span class="xref">System.Object.ToString()</span></div>
</article>
</div>
<div class="hidden-sm col-md-2" role="complementary">
<div class="sideaffix">
<div class="contribution">
<ul class="nav">
<li>
<a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00010/websites/apidocs/apiSpec/new?filename=Lucene_Net_Search_Similarities_DefaultSimilarity.md&amp;value=---%0Auid%3A%20Lucene.Net.Search.Similarities.DefaultSimilarity%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A" class="contribution-link">Improve this Doc</a>
</li>
<li>
<a href="https://github.com/apache/lucenenet/blob/release/Lucene.Net_4_8_0_beta00010/src/Lucene.Net/Search/Similarities/DefaultSimilarity.cs/#L47" class="contribution-link">View Source</a>
</li>
</ul>
</div>
<nav class="bs-docs-sidebar hidden-print hidden-xs hidden-sm affix" id="affix">
<!-- <p><a class="back-to-top" href="#top">Back to top</a><p> -->
</nav>
</div>
</div>
</div>
</div>
<footer>
<div class="grad-bottom"></div>
<div class="footer">
<div class="container">
<span class="pull-right">
<a href="#top">Back to top</a>
</span>
Copyright © 2020 Licensed to the Apache Software Foundation (ASF)
</div>
</div>
</footer>
</div>
<script type="text/javascript" src="https://lucenenet.apache.org/docs/4.8.0-beta00009/styles/docfx.vendor.js"></script>
<script type="text/javascript" src="https://lucenenet.apache.org/docs/4.8.0-beta00009/styles/docfx.js"></script>
<script type="text/javascript" src="https://lucenenet.apache.org/docs/4.8.0-beta00009/styles/main.js"></script>
</body>
</html>