All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.github.TKnudsen.ComplexDataObject.model.weighting.Integer.LinearIndexWeightingKernel Maven / Gradle / Ivy

Go to download

A library that models real-world objects in Java, referred to as ComplexDataObjects. Other features: IO and preprocessing of ComplexDataObjects.

The newest version!
package com.github.TKnudsen.ComplexDataObject.model.weighting.Integer;

/**
 * 

* Title: LinearIndexWeightingKernel *

* *

* Description: *

* *

* Copyright: Copyright (c) 2016-2017 *

* * @author Juergen Bernard * @version 1.02 */ public class LinearIndexWeightingKernel implements IIntegerWeightingKernel { private Integer reference; private Integer interval; /** * for serialization */ public LinearIndexWeightingKernel() { this.interval = 3; } public LinearIndexWeightingKernel(Integer interval) { this.interval = interval; } @Override public Integer getInterval() { return interval; } @Override public void setInterval(Integer t) { this.interval = t; } @Override public double getWeight(Integer t) { if (Math.abs(reference - t) > interval) return 0.0; if (interval == 0) return 1.0; return 1.0 - (Math.abs(reference - t) / (double) interval); } @Override public Integer getReference() { return reference; } @Override public void setReference(Integer t) { this.reference = t.intValue(); } @Override public boolean equals(Object o) { if (o == this) return true; if (!(o instanceof LinearIndexWeightingKernel)) return false; LinearIndexWeightingKernel other = (LinearIndexWeightingKernel) o; return other.interval == interval && other.reference == reference; } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy