MCPcopy Create free account
hub / github.com/WinVector/Logistic / LinUtil

Class LinUtil

src/com/winvector/opt/def/LinUtil.java:5–84  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

3import java.util.Formatter;
4
5public class LinUtil {
6 public static double[] copy(final double[] x) {
7 final int dim = x.length;
8 final double[] r = new double[dim];
9 for(int i=0;i<dim;++i) {
10 r[i] = x[i];
11 }
12 return r;
13 }
14
15 public static double dot(final double[] a, final double[] b) {
16 final int dim = a.length;
17 double r = 0.0;
18 for(int i=0;i<dim;++i) {
19 r += a[i]*b[i];
20 }
21 return r;
22 }
23
24 public static double[] mult(final double[][] a, final double[] x, final double[] r) {
25 final int m = a.length;
26 final int n = x.length;
27 for(int i=0;i<m;++i) {
28 double t = 0.0;
29 for(int j=0;j<n;++j) {
30 t += a[i][j]*x[j];
31 }
32 r[i] = t;
33 }
34 return r;
35 }
36
37 public static double[] mult(final double[][] a, final double[] x) {
38 final int m = a.length;
39 final double[] r = new double[m];
40 mult(a,x,r);
41 return r;
42 }
43
44 public static double[][] copy(double[][] a) {
45 final int m = a.length;
46 final int n = a[0].length;
47 final double[][] r = new double[m][n];
48 for(int i=0;i<m;++i) {
49 for(int j=0;j<n;++j) {
50 r[i][j] = a[i][j];
51 }
52 }
53 return r;
54 }
55
56 public static String toString(final double[] x) {
57 final StringBuilder b = new StringBuilder();
58 if(x!=null) {
59 final Formatter formatter = new Formatter(b);
60 for(final double xi: x) {
61 if(b.length()>0) {
62 b.append("\t");

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected