package edu.hawaii.jmotif.experiment.cbf; import java.io.BufferedWriter; import java.io.File; import java.io.FileWriter; import java.io.IOException; import java.util.ArrayList; import java.util.Arrays; import java.util.HashMap; import java.util.Map; import java.util.Map.Entry; public class MakeDatasets { private static final int[] sets = { 50, 100, 200, 400, 800, 1600, 3200, 6400, 10000 }; public static void main(String[] args) throws IOException { for (int num : sets) { Map<String, ArrayList<double[]>> set = makeSet(num); save("cbf_" + num + ".csv", set); } } private static Map<String, ArrayList<double[]>> makeSet(int num) { // ticks - i.e. time int[] t = new int[128]; for (int i = 0; i < 128; i++) { t[i] = i; } Map<String, ArrayList<double[]>> set = new HashMap<String, ArrayList<double[]>>(); ArrayList<double[]> c = new ArrayList<double[]>(); for (int i = 0; i < num; i++) { c.add(CBFGenerator.cylinder(t)); } ArrayList<double[]> b = new ArrayList<double[]>(); for (int i = 0; i < num; i++) { b.add(CBFGenerator.bell(t)); } ArrayList<double[]> f = new ArrayList<double[]>(); for (int i = 0; i < num; i++) { f.add(CBFGenerator.funnel(t)); } set.put("1", c); set.put("2", b); set.put("3", f); return set; } private static void save(String fname, Map<String, ArrayList<double[]>> set) throws IOException { BufferedWriter bw = new BufferedWriter(new FileWriter(new File(fname))); for (Entry<String, ArrayList<double[]>> e : set.entrySet()) { for (double[] a : e.getValue()) { bw.write(e.getKey() + " " + Arrays.toString(a).replace("[", "").replace("]", "").replaceAll(" ", "") .replace(",", " ") + "\n"); } } bw.close(); } }