12 entranceParameter1_m(0.0),
13 entranceParameter2_m(0.0),
14 entranceParameter3_m(0.0),
15 exitParameter1_m(0.0),
16 exitParameter2_m(0.0),
17 exitParameter3_m(0.0),
54 if(inputFile.good()) {
57 std::string tempString;
58 double tempDouble = 0.0;
60 bool parsingPassed = interpretLine<std::string, int, int, double>
67 parsingPassed = parsingPassed &&
68 interpretLine<double, double, double, int>
76 parsingPassed = parsingPassed &&
77 interpretLine<double, double, double, int>
85 (index < polyOrderEntry_m + polyOrderExit_m + 2) && parsingPassed;
87 parsingPassed = parsingPassed &&
88 interpretLine<double>(inputFile, tempDouble);
163 std::string tempString;
166 interpretLine<std::string, int, int, double>(inputFile,
171 interpretLine<double, double, double, int>(inputFile,
176 interpretLine<double, double, double, int>(inputFile,
183 interpretLine<double>(inputFile, tempDouble);
188 interpretLine<double>(inputFile, tempDouble);
201 if (index % 2 == 0)
continue;
208 if (index % 2 == 0)
continue;
235 double &sEnd)
const {
253 <<
" (1D Profile type 1)"
265 std::vector<double> &engeCoeffsExit) {
272 double &entranceParameter2,
273 double &entranceParameter3) {
280 double &exitParameter2,
281 double &exitParameter3) {
306 const size_t N = coefs.size();
307 double expSum = coefs.at(0);
309 for (
size_t i = 1; i < N; ++ i) {
310 expSum +=
std::pow(z, i) * coefs.at(i);
313 return 1.0 / (1.0 +
exp(expSum));
double entranceParameter2_m
std::vector< double > engeCoeffsEntry_m
Enge coefficients for map entry and exit regions.
double sEnd_m
Start of field map in s coordinates (m).
PETE_TUTree< FnAbs, typename T::PETE_Expr_t > abs(const PETE_Expr< T > &l)
double entranceParameter3_m
virtual void get1DProfile1ExitParam(double &exitParameter1, double &exitParameter2, double &exitParameter3)
double entranceParameter1_m
virtual void setFieldGap(double gap)
virtual void getInfo(Inform *)
static std::string typeset_msg(const std::string &msg, const std::string &title)
Tps< T > exp(const Tps< T > &x)
Exponential.
Inform & endl(Inform &inf)
bool interpreteEOF(std::ifstream &in)
virtual void setFrequency(double freq)
int polyOrderExit_m
Enge function order for entry region.
virtual void get1DProfile1EntranceParam(double &entranceParameter1, double &entranceParameter2, double &entranceParameter3)
virtual bool getFieldDerivative(const Vector_t &X, Vector_t &E, Vector_t &B, const DiffDirection &dir) const
_FM1DProfile1(const std::string &filename)
Constructor with field map file name.
virtual double getFrequency() const
double gapHeight_m
Enge function order for entry region.
void disableFieldmapWarning()
double computeExitFringe(double z) const
virtual void get1DProfile1EngeCoeffs(std::vector< double > &engeCoeffsEntry, std::vector< double > &engeCoeffsExit)
virtual bool getFieldstrength(const Vector_t &X, Vector_t &strength, Vector_t &info) const
double sBegin_m
Full gap height of field map.
std::vector< double > engeCoeffsExit_m
std::shared_ptr< _FM1DProfile1 > FM1DProfile1
static FM1DProfile1 create(const std::string &filename)
virtual void getFieldDimensions(double &zBegin, double &zEnd) const
Inform & level3(Inform &inf)
virtual double getFieldGap()
double computeFringe(const std::vector< double > &coefs, double z) const
Tps< T > pow(const Tps< T > &x, int y)
Integer power.
double computeEntranceFringe(double z) const