I think FreeMind wants to use the Smoke simulation for this. And it appears that the smoke Domain cannot change it’s transform values (if you move the domain, the simulation continues wherever the domain was in the first place). Therefore, FreeMind would need an enormously large domain covering the train’s journey, with a smoke flow (via a particle emitter) traveling with the train. In order to get a good simulation on such a large domain, the domain resolution would have to be prohibitively high.
I like the problem FreeMind is posing. I think you could make some nice smoke using forces (like wind, turbulence, and vortex) to make the smoke behave as if it were moving (as though the camera were following the train). Of course, the smoke would have to dissipate fairly quickly. The main question I haven’t resolved yet is how you would move the smoke with the train. My best guess so far is that you’d bake the simulation with the static domain, and then find a way to animate the resulting voxel data (it would probably be an “external file” at that point) to follow the smokestack.
But I’m not sure how to do that, either. I’d love to know how to do it, though.