class PR235 { public static void main(String[] args) { int length = 64; double [1d] a1 = new double [ [ [0] : [length - 1] ] ]; RectDomain <1> rd = [ [0] : [length - 1] : [16] ]; double [1d] a2 = a1.translate ([-12]).restrict (rd); System.out.println("Test 1"); foreach (p in rd) { a2[p] = p[1]; } foreach (p in a2.domain()) { System.out.println("a2[" + p[1] + "] = " + a2[p] + "; " + "a1[" + (p[1] + 12) + "] = " + a1[p + [12]]); } System.out.println("Test 2"); a1 = new double [ [[1] : [19] : [2]] ]; a2 = a1.restrict([[1] : [19] : [4]]).translate([3]); foreach (p in a2.domain()) { a2[p] = p[1]; } foreach (p in a2.domain()) { System.out.println("a2[" + p[1] + "] = " + a2[p] + "; " + "a1[" + (p[1] - 3) + "] = " + a1[p - [3]]); } System.out.println("Done."); } }