Beispiel #1
0
void AcceleratorConfig::populate(INIReader &reader) {
  datDirectory_ = reader.Get("accelerator", "dat_directory", "~");
  nElectrodes_ = reader.GetInteger("accelerator", "n_electrodes", 36);
  PAname_ = reader.Get("accelerator", "pa_name", "cylinder");
  x_ = reader.GetInteger("accelerator", "x", 54) - 2;
  y_ = reader.GetInteger("accelerator", "y", 54) - 2;
  z_ = reader.GetInteger("accelerator", "z", 200) - 2;
}
Beispiel #2
0
void ParticlesConfig::populate(INIReader &reader) {
  nParticles_ = static_cast<int>(reader.GetReal("particles", "n_particles",
                                                50000));
  k_ = reader.GetInteger("particles", "k", 20);
  kDist_ = reader.Get("particles", "k_dist", "single");
  if (kDist_ != "single" && kDist_ != "uniform" && kDist_ != "triangle") {
    try {
      throw "Invalid k distribution value!";
    } catch (const char* e) {
      std::cout << e << std::endl;
      std::terminate();
    }
  }

  n_ = reader.GetInteger("particles", "n", 25);
  positionDist_ = reader.Get("particles", "position_dist", "full");
  distRadius_ = (float) reader.GetReal("particles", "dist_radius", 0.5);
  distLength_ = (float) reader.GetReal("particles", "dist_length", 5);
  distOffset_ = (float) reader.GetReal("particles", "dist_offset", 22);
  temperature_ = (float) reader.GetReal("particles", "temperature", 1.0);
}
Beispiel #3
0
void StorageConfig::populate(INIReader &reader) {
  storeCollisions_ = reader.GetBoolean("storage", "store_collisions", true);
  storeTrajectories_ = reader.GetBoolean("storage", "store_trajectories", true);
  compression_ = reader.GetInteger("storage", "compression", 0);
}