Example usage for org.apache.lucene.search.similarities NormalizationH1 NormalizationH1

List of usage examples for org.apache.lucene.search.similarities NormalizationH1 NormalizationH1

Introduction

In this page you can find the example usage for org.apache.lucene.search.similarities NormalizationH1 NormalizationH1.

Prototype

public NormalizationH1(float c) 

Source Link

Document

Creates NormalizationH1 with the supplied parameter c.

Usage

From source file:org.apache.solr.search.similarities.DFRSimilarityFactory.java

License:Apache License

static Normalization parseNormalization(String expr, String c, String mu, String z) {
    if (mu != null && !"H3".equals(expr)) {
        throw new RuntimeException("parameter mu only makes sense for normalization H3");
    }//  w w w .ja v  a 2s  . c o m
    if (z != null && !"Z".equals(expr)) {
        throw new RuntimeException("parameter z only makes sense for normalization Z");
    }
    if (c != null && !("H1".equals(expr) || "H2".equals(expr))) {
        throw new RuntimeException("parameter c only makese sense for normalizations H1 and H2");
    }
    if ("H1".equals(expr)) {
        return (c != null) ? new NormalizationH1(Float.parseFloat(c)) : new NormalizationH1();
    } else if ("H2".equals(expr)) {
        return (c != null) ? new NormalizationH2(Float.parseFloat(c)) : new NormalizationH2();
    } else if ("H3".equals(expr)) {
        return (mu != null) ? new NormalizationH3(Float.parseFloat(mu)) : new NormalizationH3();
    } else if ("Z".equals(expr)) {
        return (z != null) ? new NormalizationZ(Float.parseFloat(z)) : new NormalizationZ();
    } else if ("none".equals(expr)) {
        return new Normalization.NoNormalization();
    } else {
        throw new RuntimeException("Invalid normalization: " + expr);
    }
}

From source file:org.elasticsearch.index.similarity.AbstractSimilarityProvider.java

License:Apache License

/**
 * Parses the given Settings and creates the appropriate {@link Normalization}
 *
 * @param settings Settings to parse// www . ja va  2s. c  om
 * @return {@link Normalization} referred to in the Settings
 */
protected Normalization parseNormalization(Settings settings) {
    String normalization = settings.get("normalization");

    if ("no".equals(normalization)) {
        return NO_NORMALIZATION;
    } else if ("h1".equals(normalization)) {
        float c = settings.getAsFloat("normalization.h1.c", 1f);
        return new NormalizationH1(c);
    } else if ("h2".equals(normalization)) {
        float c = settings.getAsFloat("normalization.h2.c", 1f);
        return new NormalizationH2(c);
    } else if ("h3".equals(normalization)) {
        float c = settings.getAsFloat("normalization.h3.c", 800f);
        return new NormalizationH3(c);
    } else if ("z".equals(normalization)) {
        float z = settings.getAsFloat("normalization.z.z", 0.30f);
        return new NormalizationZ(z);
    } else {
        throw new ElasticsearchIllegalArgumentException("Unsupported Normalization [" + normalization + "]");
    }
}

From source file:org.elasticsearch.index.similarity.SimilarityProviders.java

License:Apache License

/**
 * Parses the given Settings and creates the appropriate {@link Normalization}
 *
 * @param settings Settings to parse/*  w w  w.  j  a va  2s .  c o  m*/
 * @return {@link Normalization} referred to in the Settings
 */
private static Normalization parseNormalization(Settings settings) {
    String normalization = settings.get("normalization");

    if ("no".equals(normalization)) {
        return new Normalization.NoNormalization();
    } else if ("h1".equals(normalization)) {
        float c = settings.getAsFloat("normalization.h1.c", 1f);
        return new NormalizationH1(c);
    } else if ("h2".equals(normalization)) {
        float c = settings.getAsFloat("normalization.h2.c", 1f);
        return new NormalizationH2(c);
    } else if ("h3".equals(normalization)) {
        float c = settings.getAsFloat("normalization.h3.c", 800f);
        return new NormalizationH3(c);
    } else if ("z".equals(normalization)) {
        float z = settings.getAsFloat("normalization.z.z", 0.30f);
        return new NormalizationZ(z);
    } else {
        throw new IllegalArgumentException("Unsupported Normalization [" + normalization + "]");
    }
}