prevent ctrl values from becoming NaN
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
This commit is contained in:
parent
9a8c059e05
commit
141f82d0a9
@ -273,7 +273,11 @@ void Guidance::limitReferenceRotation(const double xAxisIX[3], double quatIX[4])
|
|||||||
QuaternionOperations::multiply(quatIXtilde, quatXI, quatXXtilde);
|
QuaternionOperations::multiply(quatIXtilde, quatXI, quatXXtilde);
|
||||||
|
|
||||||
double phiResidual = 0, phiResidualVec[3] = {0, 0, 0};
|
double phiResidual = 0, phiResidualVec[3] = {0, 0, 0};
|
||||||
|
if ((phiX * phiX) > (phiMax * phiMax)) {
|
||||||
|
phiResidual = 0;
|
||||||
|
} else {
|
||||||
phiResidual = std::sqrt((phiMax * phiMax) - (phiX * phiX));
|
phiResidual = std::sqrt((phiMax * phiMax) - (phiX * phiX));
|
||||||
|
}
|
||||||
std::memcpy(phiResidualVec, quatXXtilde, sizeof(phiResidualVec));
|
std::memcpy(phiResidualVec, quatXXtilde, sizeof(phiResidualVec));
|
||||||
VectorOperations<double>::normalize(phiResidualVec, phiResidualVec, 3);
|
VectorOperations<double>::normalize(phiResidualVec, phiResidualVec, 3);
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user