| 183 | } |
| 184 | |
| 185 | static NodeData |
| 186 | getNodeDataFlag(const char *dataToStore, Domain& theDomain, int* dataIndex) |
| 187 | { |
| 188 | NodeData dataFlag = NodeData::DisplTrial; // 10; |
| 189 | |
| 190 | if (dataToStore == nullptr) |
| 191 | dataFlag = NodeData::DisplTrial; // 0; |
| 192 | else if ((strcmp(dataToStore, "disp") == 0)) { |
| 193 | dataFlag = NodeData::DisplTrial; // 0 |
| 194 | } else if ((strcmp(dataToStore, "vel") == 0)) { |
| 195 | dataFlag = NodeData::VelocTrial; // 1 |
| 196 | } else if ((strcmp(dataToStore, "accel") == 0)) { |
| 197 | dataFlag = NodeData::AccelTrial; // 2 |
| 198 | } else if ((strcmp(dataToStore, "incrDisp") == 0)) { |
| 199 | dataFlag = NodeData::IncrDisp; // 3; |
| 200 | } else if ((strcmp(dataToStore, "incrDeltaDisp") == 0)) { |
| 201 | dataFlag = NodeData::IncrDeltaDisp; // 4; |
| 202 | } else if ((strcmp(dataToStore, "unbalance") == 0)) { |
| 203 | dataFlag = NodeData::UnbalancedLoad; // 5 |
| 204 | } else if ((strcmp(dataToStore, "unbalanceInclInertia") == 0) || |
| 205 | (strcmp(dataToStore, "unbalanceIncInertia") == 0) || |
| 206 | (strcmp(dataToStore, "unbalanceIncludingInertia") == 0)) { |
| 207 | dataFlag = NodeData::UnbalanceInclInertia; // 6 |
| 208 | } else if ((strcmp(dataToStore, "reaction") == 0)) { |
| 209 | dataFlag = NodeData::Reaction; // 7 |
| 210 | } else if (((strcmp(dataToStore, "reactionIncInertia") == 0)) |
| 211 | || ((strcmp(dataToStore, "reactionInclInertia") == 0)) |
| 212 | || ((strcmp(dataToStore, "reactionIncludingInertia") == 0))) { |
| 213 | dataFlag = NodeData::ReactionInclInertia; // 8; |
| 214 | } else if (((strcmp(dataToStore, "rayleighForces") == 0)) |
| 215 | || ((strcmp(dataToStore, "rayleighDampingForces") == 0))) { |
| 216 | dataFlag = NodeData::ReactionInclRayleigh; // 9; |
| 217 | |
| 218 | } else if ((strcmp(dataToStore, "dispNorm") == 0)) { |
| 219 | dataFlag = NodeData::DisplNorm; |
| 220 | |
| 221 | } else if (((strcmp(dataToStore, "nodalRayleighForces") == 0))) { |
| 222 | dataFlag = NodeData::RayleighForces; // 10001; |
| 223 | |
| 224 | } else if (((strcmp(dataToStore, "pressure") == 0))) { |
| 225 | dataFlag = NodeData::Pressure; |
| 226 | |
| 227 | } else if ((strncmp(dataToStore, "eigen",5) == 0)) { |
| 228 | int mode = atoi(&(dataToStore[5])); |
| 229 | *dataIndex = mode; |
| 230 | if (mode > 0) |
| 231 | dataFlag = NodeData::EigenVector; // 10 + mode; |
| 232 | else |
| 233 | dataFlag = NodeData::Empty; // 10; |
| 234 | } |
| 235 | |
| 236 | else if ((strncmp(dataToStore, "sensitivity",11) == 0)) { |
| 237 | int paramTag = atoi(&(dataToStore[11])); |
| 238 | Parameter *theParameter = theDomain.getParameter(paramTag); |
| 239 | int grad = -1; |
| 240 | if (theParameter != nullptr) |
| 241 | grad = theParameter->getGradIndex(); |
| 242 | *dataIndex = grad; |
no test coverage detected