cylinder static method

SearchSpace cylinder({
  1. num rhoMin = 0,
  2. num rhoMax = 1,
  3. num phiMin = 0,
  4. num phiMax = 2 * pi,
  5. num zMin = 0,
  6. num zMax = 1,
})

Returns a search space with cylindrical geometry.

Implementation

static SearchSpace cylinder({
  num rhoMin = 0,
  num rhoMax = 1,
  num phiMin = 0,
  num phiMax = 2 * pi,
  num zMin = 0,
  num zMax = 1,
}) {
  // Define intervals.
  final r = FixedInterval(rhoMin, rhoMax, inverseCdf: InverseCdfs.rho);

  late final FixedInterval phi;
  if ((phiMax - phiMin) == 2 * pi) {
    print('Periodic...');
    phi = PeriodicInterval(phiMin, phiMax);
  } else {
    phi = FixedInterval(phiMin, phiMax);
  }
  final z = FixedInterval(zMin, zMax);
  // Defining a spherical search space.
  return SearchSpace.fixed([r, phi, z]);
}