![]() |
Garfield 0.3
Toolkit for the detailed simulation of particle detectors based on ionization measurement in gases and semiconductors
|
Component with constant electric field. More...
#include <ComponentConstant.hh>
Public Member Functions | |
ComponentConstant () | |
Constructor. | |
~ComponentConstant () | |
Destructor. | |
void | SetElectricField (const double ex, const double ey, const double ez) |
Set the components of the electric field [V / cm]. | |
void | SetPotential (const double x, const double y, const double z, const double v=0.) |
Specify the potential at a given point. | |
void | SetWeightingField (const double wx, const double wy, const double wz, const std::string label) |
Set the components of the weighting field [1 / cm]. | |
void | SetWeightingPotential (const double x, const double y, const double z, const double v=0.) |
Specify the weighting potential at a given point. | |
void | SetArea (const double xmin, const double ymin, const double zmin, const double xmax, const double ymax, const double zmax) |
Set the limits of the active area explicitly (instead of using a Geometry object). | |
void | UnsetArea () |
Remove the explicit limits of the active area. | |
void | SetMedium (Medium *medium) |
Set the medium in the active area. | |
Medium * | GetMedium (const double x, const double y, const double z) override |
void | ElectricField (const double x, const double y, const double z, double &ex, double &ey, double &ez, Medium *&m, int &status) override |
void | ElectricField (const double x, const double y, const double z, double &ex, double &ey, double &ez, double &v, Medium *&m, int &status) override |
bool | GetVoltageRange (double &vmin, double &vmax) override |
void | WeightingField (const double x, const double y, const double z, double &wx, double &wy, double &wz, const std::string &label) override |
double | WeightingPotential (const double x, const double y, const double z, const std::string &label) override |
bool | GetBoundingBox (double &xmin, double &ymin, double &zmin, double &xmax, double &ymax, double &zmax) override |
Private Member Functions | |
void | Reset () override |
void | UpdatePeriodicity () override |
bool | InArea (const double x, const double y, const double z) |
Private Attributes | |
std::array< double, 3 > | m_efield = {{0., 0., 0.}} |
bool | m_hasPotential = false |
double | m_x0 = 0. |
double | m_y0 = 0. |
double | m_z0 = 0. |
double | m_v0 = 0. |
bool | m_hasWeightingField = false |
std::string | m_label = "" |
std::array< double, 3 > | m_wfield = {{0., 0., 0.}} |
bool | m_hasWeightingPotential = false |
double | m_wx0 = 0. |
double | m_wy0 = 0. |
double | m_wz0 = 0. |
double | m_w0 = 0. |
std::array< double, 3 > | m_xmin = {{0., 0., 0.}} |
std::array< double, 3 > | m_xmax = {{0., 0., 0.}} |
bool | m_hasArea = false |
Medium * | m_medium = nullptr |
Component with constant electric field.
Definition at line 13 of file ComponentConstant.hh.
Garfield::ComponentConstant::ComponentConstant | ( | ) |
Constructor.
|
inline |
|
override |
|
override |
|
override |
|
override |
|
override |
|
inlineprivate |
Definition at line 94 of file ComponentConstant.hh.
|
overrideprivate |
void Garfield::ComponentConstant::SetArea | ( | const double | xmin, |
const double | ymin, | ||
const double | zmin, | ||
const double | xmax, | ||
const double | ymax, | ||
const double | zmax ) |
Set the limits of the active area explicitly (instead of using a Geometry object).
void Garfield::ComponentConstant::SetElectricField | ( | const double | ex, |
const double | ey, | ||
const double | ez ) |
Set the components of the electric field [V / cm].
|
inline |
Set the medium in the active area.
Definition at line 40 of file ComponentConstant.hh.
void Garfield::ComponentConstant::SetPotential | ( | const double | x, |
const double | y, | ||
const double | z, | ||
const double | v = 0. ) |
Specify the potential at a given point.
void Garfield::ComponentConstant::SetWeightingField | ( | const double | wx, |
const double | wy, | ||
const double | wz, | ||
const std::string | label ) |
Set the components of the weighting field [1 / cm].
void Garfield::ComponentConstant::SetWeightingPotential | ( | const double | x, |
const double | y, | ||
const double | z, | ||
const double | v = 0. ) |
Specify the weighting potential at a given point.
void Garfield::ComponentConstant::UnsetArea | ( | ) |
Remove the explicit limits of the active area.
|
overrideprivate |
|
override |
|
override |
|
private |
Definition at line 61 of file ComponentConstant.hh.
|
private |
Definition at line 87 of file ComponentConstant.hh.
|
private |
Definition at line 64 of file ComponentConstant.hh.
|
private |
Definition at line 71 of file ComponentConstant.hh.
|
private |
Definition at line 77 of file ComponentConstant.hh.
|
private |
Definition at line 73 of file ComponentConstant.hh.
|
private |
Definition at line 89 of file ComponentConstant.hh.
|
private |
Definition at line 68 of file ComponentConstant.hh.
|
private |
Definition at line 81 of file ComponentConstant.hh.
|
private |
Definition at line 75 of file ComponentConstant.hh.
|
private |
Definition at line 79 of file ComponentConstant.hh.
|
private |
Definition at line 79 of file ComponentConstant.hh.
|
private |
Definition at line 79 of file ComponentConstant.hh.
|
private |
Definition at line 66 of file ComponentConstant.hh.
|
private |
Definition at line 85 of file ComponentConstant.hh.
|
private |
Definition at line 84 of file ComponentConstant.hh.
|
private |
Definition at line 66 of file ComponentConstant.hh.
|
private |
Definition at line 66 of file ComponentConstant.hh.