Skip to content

Commit cb08784

Browse files
committed
[drop] debugging nans in integrated test
1 parent 435b624 commit cb08784

File tree

2 files changed

+46
-0
lines changed

2 files changed

+46
-0
lines changed

src/simulation/dynamics/HingedRigidBodies/hingedRigidBodyStateEffector.cpp

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,45 @@ HingedRigidBodyStateEffector::HingedRigidBodyStateEffector()
4545
this->r_HB_B.setZero();
4646
this->dcm_HB.Identity();
4747

48+
// Defensive zeroing of all internal members
49+
this->r_BP_P.setZero();
50+
this->r_HP_P.setZero();
51+
this->r_SP_P.setZero();
52+
this->rPrime_SP_P.setZero();
53+
54+
this->omegaLoc_PN_P.setZero();
55+
this->omega_PN_S.setZero();
56+
this->sHat1_P.setZero();
57+
this->sHat2_P.setZero();
58+
this->sHat3_P.setZero();
59+
60+
this->rTilde_HP_P.setZero();
61+
this->rTilde_SP_P.setZero();
62+
this->rPrimeTilde_SP_P.setZero();
63+
this->ISPrimePntS_P.setZero();
64+
this->omegaTildeLoc_PN_P.setZero();
65+
66+
this->dcm_BP.setIdentity();
67+
this->dcm_HP.setIdentity();
68+
this->dcm_SH.setIdentity();
69+
this->dcm_SP.setIdentity();
70+
71+
this->aTheta.setZero();
72+
this->bTheta.setZero();
73+
this->cTheta = 0.0;
74+
75+
// Null all pointers until registered/linked
76+
this->r_SN_N = nullptr;
77+
this->v_SN_N = nullptr;
78+
this->sigma_SN = nullptr;
79+
this->omega_SN_S = nullptr;
80+
this->inertialPositionProperty = nullptr;
81+
this->inertialVelocityProperty = nullptr;
82+
this->c_B = nullptr;
83+
this->cPrime_B = nullptr;
84+
this->thetaState = nullptr;
85+
this->thetaDotState = nullptr;
86+
4887
this->nameOfThetaState = "hingedRigidBodyTheta" + std::to_string(this->effectorID);
4988
this->nameOfThetaDotState = "hingedRigidBodyThetaDot" + std::to_string(this->effectorID);
5089
this->nameOfInertialPositionProperty = "hingedRigidBodyInertialPosition" + std::to_string(this->effectorID);

src/simulation/dynamics/_GeneralModuleFiles/_UnitTestDynamics/test_effectorBranching_integrated.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -241,6 +241,7 @@ def effectorBranchingIntegratedTest(show_plots, stateEffector, isParent, dynamic
241241
scObject.hub.r_CN_NInit = [[-4020338.690396649], [7490566.741852513], [5248299.211589362]]
242242
scObject.hub.v_CN_NInit = [[-5199.77710904224], [-3436.681645356935], [1041.576797498721]]
243243
scObject.hub.omega_BN_BInit = [[0.1], [0.1], [0.1]]
244+
scObject.hub.sigma_BNInit = [[0.0], [0.0], [0.0]]
244245

245246
# Add Earth gravity to the simulation
246247
earthGravBody = gravityEffector.GravBodyData()
@@ -365,6 +366,7 @@ def effectorBranchingIntegratedTest(show_plots, stateEffector, isParent, dynamic
365366
# Grab effector's inertial position
366367
if stateEffector in ["hingedRigidBodies", "dualHingedRigidBodies", "nHingedRigidBodies"]:
367368
r_ScN_N_log = np.zeros_like(inertialPropLog.r_BN_N)
369+
print("sigma_BN: ", inertialPropLog.sigma_BN)
368370
for i in range(len(inertialPropLog.sigma_BN)):
369371
q_i = inertialPropLog.sigma_BN[i, :] # MRP at timestep i
370372
dcm_NP = np.transpose(rbk.MRP2C(q_i))
@@ -703,6 +705,11 @@ def setup_hingedRigidBodyStateEffector():
703705
stateEffProps.r_PcP_P = hingedBody.d * np.array([[-1.0],[0.0],[0.0]])
704706
stateEffProps.inertialPropLogName = "hingedRigidBodyConfigLogOutMsg"
705707

708+
print("mr_PcB_B: ", stateEffProps.mr_PcB_B)
709+
print("r_PB_B: ", stateEffProps.r_PB_B)
710+
print("r_PcP_P: ", stateEffProps.r_PcP_P)
711+
print("hingedBody.mass: ", stateEffProps.totalMass)
712+
706713
return(hingedBody, stateEffProps)
707714

708715
def setup_linearSpringMassDamper():

0 commit comments

Comments
 (0)