view src/samer/mds/Minkowski.java @ 8:5e3cbbf173aa tip

Reorganise some more
author samer
date Fri, 05 Apr 2019 22:41:58 +0100
parents bf79fb79ee13
children
line wrap: on
line source
package samer.mds;
import samer.core.types.*;
import samer.maths.*;

/** Minkowski metric */

public class Minkowski implements MDS.Metric {
	VDouble exponent=new VDouble("exponent",1);
	public Minkowski(double p) { exponent.set(p); }
	public double d(double [] x, double [] y, double [] r) {
		Mathx.sub(r,y,x);
		double q=0, p=exponent.value;
		for (int i=0; i<r.length; i++) q+=Math.pow(r[i],p);
		return Math.pow(q,1/p);
	}
}