| 215 | |
| 216 | |
| 217 | void Foam::dimensionSet::round(const scalar tol) |
| 218 | { |
| 219 | for (int i=0; i < dimensionSet::nDimensions; ++i) |
| 220 | { |
| 221 | scalar integralPart; |
| 222 | scalar fractionalPart = std::modf(exponents_[i], &integralPart); |
| 223 | |
| 224 | if (mag(fractionalPart-1.0) <= tol) |
| 225 | { |
| 226 | exponents_[i] = 1.0+integralPart; |
| 227 | } |
| 228 | else if (mag(fractionalPart+1.0) <= tol) |
| 229 | { |
| 230 | exponents_[i] = -1.0+integralPart; |
| 231 | } |
| 232 | else if (mag(fractionalPart) <= tol) |
| 233 | { |
| 234 | exponents_[i] = integralPart; |
| 235 | } |
| 236 | } |
| 237 | } |
| 238 | |
| 239 | |
| 240 | Foam::dimensionedScalar Foam::dimensionSet::parse |
no test coverage detected