1 package org.lcsim.geometry.field;
2
3 import hep.physics.vec.BasicHep3Vector;
4 import hep.physics.vec.Hep3Vector;
5 import junit.framework.*;
6 import org.lcsim.geometry.FieldMap;
7
8
9
10
11
12
13 public
14 {
15 public FieldTest(String testName)
16 {
17 super(testName);
18 }
19
20 void testFieldAt(FieldMap map, double x, double y, double z, double bx, double by, double bz)
21 {
22 testFieldMethod1(map,x,y,z,bx,by,bz);
23 testFieldMethod2(map,x,y,z,bx,by,bz);
24 testFieldMethod3(map,x,y,z,bx,by,bz);
25 testFieldMethod4(map,x,y,z,bx,by,bz);
26 }
27 private void testFieldMethod1(FieldMap map, double x, double y, double z, double bx, double by, double bz)
28 {
29 double[] field = map.getField(new double[]{x,y,z});
30 assertEquals("Method 1, x",bx,field[0],1e-16);
31 assertEquals("Method 1, y",by,field[1],1e-16);
32 assertEquals("Method 1, z",bz,field[2],1e-16);
33 }
34 private void testFieldMethod2(FieldMap map, double x, double y, double z, double bx, double by, double bz)
35 {
36 Hep3Vector fieldVector = map.getField(new BasicHep3Vector(x,y,z));
37 assertEquals("Method 2, x",bx,fieldVector.x(),1e-16);
38 assertEquals("Method 2, y",by,fieldVector.y(),1e-16);
39 assertEquals("Method 2, z",bz,fieldVector.z(),1e-16);
40 }
41 private void testFieldMethod3(FieldMap map, double x, double y, double z, double bx, double by, double bz)
42 {
43 double[] field = { 9,9,9 };
44 map.getField(new double[]{x,y,z},field);
45 assertEquals("Method 3, x",bx,field[0],1e-16);
46 assertEquals("Method 3, y",by,field[1],1e-16);
47 assertEquals("Method 3, z",bz,field[2],1e-16);
48 }
49 private void testFieldMethod4(FieldMap map, double x, double y, double z, double bx, double by, double bz)
50 {
51 BasicHep3Vector fieldVector = new BasicHep3Vector(9,9,9);
52 map.getField(new BasicHep3Vector(x,y,z),fieldVector);
53 assertEquals("Method 4, x",bx,fieldVector.x(),1e-16);
54 assertEquals("Method 4, y",by,fieldVector.y(),1e-16);
55 assertEquals("Method 4, z",bz,fieldVector.z(),1e-16);
56 }
57
58 public void testNothing()
59 {
60
61 }
62 }