Skip to content

Feature/gravity free back sub - #649

Open
codyallard28 wants to merge 13 commits into
developfrom
feature/gravity-free-back-sub
Open

codyallard28 wants to merge 13 commits into
developfrom
feature/gravity-free-back-sub

Conversation

@codyallard28

Copy link
Copy Markdown
Collaborator

Description

Gravity is left out of the back-substitution computations. Gravity is added at the very end of the equations of motion now. The hub solves for the non-gravitational acceleration, state effectors receive it as the rDDotNonGrav_BN_N argument of computeDerivatives, and the spacecraft adds g once to the hub velocity derivative. The accumulated delta-v now integrates only the non-gravitational acceleration, replacing the two gravity-velocity states with one.

Interface changes:

  • StateEffector::updateContributions no longer takes g_N.
  • The g_N gravity property is removed.

Commits: formatting first, then gravity leaves the effectors, then the delta-v rework, then docs. Each new test lands as a strict xfail and the commit that fixes it removes the xfail.

Verification

  • Added test_hinged_rigid_body_gravity_invariance: a hub and two hinged panels at rest in free fall stay exactly at rest.
  • Added test_spacecraft_free_fall_delta_v: the accumulated delta-v comes only from the applied force, exactly.
  • Re-baselined the VSCMG JitterFullyCoupledGravity truth. (was not handling gravity properly before)

Documentation

Model descriptions updated for spacecraft, hub, gravityEffector, dual hinged rigid bodies, linear spring-mass-damper, spherical pendulum and IMU. Spacecraft and gravityEffector carry the main change.

Future work

None

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: No status

Development

Successfully merging this pull request may close these issues.

Remove gravity from the back-substitution dynamics

1 participant