When adding Equinoctial elements in addition to Keplerian and Cartesian elements, keeping track of which ones are valid and which need updating is more involved, and may require a bit of thought before diving into implementation.
Also, since the Keplerian elements are singular whenever i=0 or e=0, the approach in the present code (always converting to/from Keplerian elements) defeats the purpose of using non-singular elements in the first place. This must be revisited also, if non-singular elements are to add value.
When adding Equinoctial elements in addition to Keplerian and Cartesian elements, keeping track of which ones are valid and which need updating is more involved, and may require a bit of thought before diving into implementation.
Also, since the Keplerian elements are singular whenever i=0 or e=0, the approach in the present code (always converting to/from Keplerian elements) defeats the purpose of using non-singular elements in the first place. This must be revisited also, if non-singular elements are to add value.