diff examples/maths/GaussianForm.java @ 1:5df24c91468d

Oh my what a mess.
author samer
date Fri, 05 Apr 2019 16:26:00 +0100
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/examples/maths/GaussianForm.java	Fri Apr 05 16:26:00 2019 +0100
@@ -0,0 +1,29 @@
+package eg.maths;
+import  samer.core.*;
+import  samer.maths.*;
+
+public class GaussianForm extends QuadraticForm
+{
+	public GaussianForm() { super(); }
+	public GaussianForm(int n) { super(n); }
+
+	public double apply(double [] x) { 
+		return -Math.exp(super.apply(x));
+	}
+
+	public VectorFunctionOfVector derivative() 
+	{	
+		return new VectorFunctionOfVector() {
+			public void apply(double [] x) {
+				double z=GaussianForm.this.apply(x);
+				Mathx.copy(y,x);
+				Mathx.mul(x,-z);			
+			}
+			public void apply(double [] x, double [] v) {
+				double z=GaussianForm.this.apply(x);
+				Mathx.copy(y,v);
+				Mathx.mul(v,-z);
+			}
+		};
+	}
+}