3#ifndef G_COMPONENT_ELMER_H
4#define G_COMPONENT_ELMER_H
15 ComponentElmer(std::string header, std::string elist, std::string nlist,
16 std::string mplist, std::string volt, std::string unit);
20 void ElectricField(
const double x,
const double y,
const double z,
double& ex,
21 double& ey,
double& ez,
Medium*& m,
int& status);
22 void ElectricField(
const double x,
const double y,
const double z,
double& ex,
23 double& ey,
double& ez,
double& v,
Medium*& m,
26 void WeightingField(
const double x,
const double y,
const double z,
27 double& wx,
double& wy,
double& wz,
28 const std::string label);
31 const std::string label);
41 bool Initialise(std::string header =
"mesh.header",
42 std::string elist =
"mesh.elements",
43 std::string nlist =
"mesh.nodes",
44 std::string mplist =
"dielectrics.dat",
45 std::string volt =
"out.result", std::string unit =
"cm");
void ElectricField(const double x, const double y, const double z, double &ex, double &ey, double &ez, Medium *&m, int &status)
bool SetWeightingField(std::string prnsol, std::string label)
bool IsInBoundingBox(const double x, const double y, const double z)
double WeightingPotential(const double x, const double y, const double z, const std::string label)
void GetAspectRatio(const int i, double &dmin, double &dmax)
bool Initialise(std::string header="mesh.header", std::string elist="mesh.elements", std::string nlist="mesh.nodes", std::string mplist="dielectrics.dat", std::string volt="out.result", std::string unit="cm")
void WeightingField(const double x, const double y, const double z, double &wx, double &wy, double &wz, const std::string label)
double GetElementVolume(const int i)
Medium * GetMedium(const double &x, const double &y, const double &z)
void UpdatePeriodicityCommon()