Get G4Track by trackID

No. Generally speaking, tracks are transient objects. They are created and stacked in a buffer (e.g., when a process creates a secondary), and when the particle is stopped-and-killed, the G4Track object is deleted from memory.

Using find on the entire contents of $G4INCLUDE, there is no interface anywhere which returns a G4Track* based on its assigned ID. The underlying G4TrackStack objects are not accessible to any code. They are private data members of G4StackManager, which means not even a custom subclass can get to them for inspection or query.