public void test_query_disc() throws Exception {
   System.out.println("Testing queryDisc() empirically");
   int omax = 17;
   Random rng = new Random(5);
   for (int o = 0; o <= omax; ++o) {
     int niter = Math.max(1, Math.min(nsamples / 1000, 100000 >> o));
     for (int m = 0; m < niter; ++m) {
       Pointing ptg = random_dir(rng);
       double rad = Math.PI * rng.nextDouble();
       RangeSet rs = HealpixProc.queryDiscRing(o, ptg, rad);
       long nval = rs.nval();
       rs = HealpixProc.queryDiscNest(o, ptg, rad);
       assertEquals("queryDisc problem 1", nval, rs.nval());
       rs = HealpixProc.queryDiscInclusiveRing(o, ptg, rad, 4);
       long nv1 = rs.nval();
       rs = HealpixProc.queryDiscInclusiveNest(o, ptg, rad, 4);
       long nv2 = rs.nval();
       assertTrue("queryDisc problem 2", nv1 >= nv2);
       assertTrue("queryDisc problem 3", nv2 >= nval);
     }
   }
 }