| 100 |
|
|
| 101 |
|
EF_ = V3Zero; |
| 102 |
|
|
| 103 |
< |
if (info_->getSimParams()->haveElectricField()) |
| 104 |
< |
EF_ = info_->getSimParams()->getElectricField(); |
| 103 |
> |
std::vector<RealType> ef; |
| 104 |
> |
bool efSpec = false; |
| 105 |
|
|
| 106 |
+ |
if (info_->getSimParams()->haveElectricField()) { |
| 107 |
+ |
efSpec = true; |
| 108 |
+ |
ef = info_->getSimParams()->getElectricField(); |
| 109 |
+ |
} |
| 110 |
+ |
if (info_->getSimParams()->haveUniformField()) { |
| 111 |
+ |
efSpec = true; |
| 112 |
+ |
ef = info_->getSimParams()->getUniformField(); |
| 113 |
+ |
} |
| 114 |
+ |
if (efSpec) { |
| 115 |
+ |
if (ef.size() != 3) { |
| 116 |
+ |
sprintf(painCave.errMsg, |
| 117 |
+ |
"NitrileFrequencyMap: Incorrect number of parameters specified for uniformField.\n" |
| 118 |
+ |
"\tthere should be 3 parameters, but %lu were specified.\n", ef.size()); |
| 119 |
+ |
painCave.isFatal = 1; |
| 120 |
+ |
simError(); |
| 121 |
+ |
} |
| 122 |
+ |
EF_.x() = ef[0]; |
| 123 |
+ |
EF_.y() = ef[1]; |
| 124 |
+ |
EF_.z() = ef[2]; |
| 125 |
+ |
} |
| 126 |
+ |
|
| 127 |
|
excludesForAtom.clear(); |
| 128 |
|
excludesForAtom.resize(nAtoms); |
| 129 |
|
|