Garfield++ 5.0
A toolkit for the detailed simulation of particle detectors based on ionisation measurement in gases and semiconductors
Loading...
Searching...
No Matches
ComponentAnsys121.hh
Go to the documentation of this file.
1#ifndef G_COMPONENT_ANSYS121_H
2#define G_COMPONENT_ANSYS121_H
3
5
6namespace Garfield {
7
8/// Component for importing and interpolating two-dimensional ANSYS field maps.
9
11 public:
12 /// Constructor
14 /// Destructor
16
17 /** Import a field map.
18 * \param elist name of the file containing the list of elements
19 * \param nlist name of the file containing the list of nodes
20 * \param mplist name of the file containing the list of materials
21 * \param prnsol name of the file containing the nodal solutions
22 * \param unit length unit
23 */
24 bool Initialise(const std::string& elist = "ELIST.lis",
25 const std::string& nlist = "NLIST.lis",
26 const std::string& mplist = "MPLIST.lis",
27 const std::string& prnsol = "PRNSOL.lis",
28 const std::string& unit = "cm");
29 /// Import weighting potentials.
30 bool SetWeightingPotential(const std::string& prnsol,
31 const std::string& label) {
32 return SetWeightingField(prnsol, label);
33 }
34 bool SetWeightingField(const std::string& prnsol, const std::string& label);
35 /// Set the limits of the active region along z.
36 void SetRangeZ(const double zmin, const double zmax);
37
38 private:
39 bool LoadPotentials(const std::string& prnsol, std::vector<double>& pot);
40};
41}
42
43#endif
bool Initialise(const std::string &elist="ELIST.lis", const std::string &nlist="NLIST.lis", const std::string &mplist="MPLIST.lis", const std::string &prnsol="PRNSOL.lis", const std::string &unit="cm")
bool SetWeightingField(const std::string &prnsol, const std::string &label)
void SetRangeZ(const double zmin, const double zmax)
Set the limits of the active region along z.
bool SetWeightingPotential(const std::string &prnsol, const std::string &label)
Import weighting potentials.
ComponentFieldMap()=delete
Default constructor.