|
From: <js...@ha...> - 2001-06-14 22:49:05
|
> js...@ha... writes: > So, to say the fdm is re-init'd superflously, is not entirely true, > but it appears that JSBSim is not robust to being reinited with > changed values. That's not meant as a knock on the JSBSim code. It > just means that not all the pieces are playing happily together. Yikes! Well, perhaps this is true. > Thoughts: > > 2. Perhaps what we need to do is change the interface so you have: > > An init() routine that is only called once with the FDM is > instantiated. This sounds good to me offhand... > A re-init() routine that is called when we want the FDM to reset to > some initial condition (i.e. stationary on the ground at a new > location.) Same for this one... > 4. Perhaps JSBSim should be designed so that you can: > > a) instantiate it (already done) > b) define up some initial state (position, velocity, orientation, > trimmmed/not trimmed) (I think mostly already done) > c) reset to this new initial state. (This needs to be worked on?) This sounds good. I wonder if it is already this way, though? > 5. I see that by my reading of the code there is some odd > confusion/confounding going on. > > The specific FDM interface init() routine calls the generic > FGInterface::init() routine. The FGInterface::init() calls the set_* > routines would could trigger iterations of the flight model. This > happens though before the FDM interface init() is allowed to finish > it's initializing. I could see where that could cause problems. and perhaps some wierd recursive problems? > I think you are right in saying this is a mess ... > > Jon, Tony, I encourage you to step through the program logic > carefully, I managed to do it right now. It didn't give me warm > fuzzies. I think we should take a closer look at what's going on here > and see if we can straighten things out a bit so they make more sense. OK. How about delaying the new release for a couple days? Jon |