I am working on a spaceflight simulator where I can assemble rockets from parts (Newton objects) and launch them into orbit. Some parts have rocket engines, so I can then de-orbit them for return to Earth. All is working well, more or less. Now, I'd like to add the parachute recovery functionality. For that, I have implemented the following:
- A functioning atmosphere model, with gradual transitions between vacuum to full density and pressure.
- Drag and restoring torque properties on rocket body returning to Earth (capsule)
- "parachute" Newton object, a Newton body with high drag properties along its longitudinal axis (axis of motion).
The idea is to re-enter the atmosphere at high velocity and let the drag slow down the capsule. Then, when the capsule is slowed down, in the lower atmosphere, "deploy" the parachute system by loading and attaching a "parachute" Newton body to the capsule. The high drag of the parachute body should further slow down the capsule - just like in real life.
The first part - "aerobraking" - is working ok... the capsule enters the atmosphere and the drag slows it from Mach ~8 to about 300 m/s at an altitude of ~5 km. Then, I add a parachute object. Both objects get connected, but they start spinning wildly around each other, and never settle down into what would be their equilibrium state if they weren't conected. Just to note, adding the parachute object WITHOUT the drag force active goes without problem - the parachute object gets attached to the capsule but serves no purpose except for visuals - the capsule keeps dropping at terminal velocity:
Any thoughts on what I might be doing wrong? Or if there is a better way of accomplishing this?
[EDIT]: One thing I think is worth trying is, when the parachute object is attached, the drag load is instantaneous... As in real life, that would tear the parachute apart. In reality, when the parachute is deployed, it is slowly inflated for some time - in effect, applying the drag gradually.