Hi Tomas,
Sorry for the delay... it took me a while to figure out a
good answer to this problem.
In the previous version, I did some things to make the
initial orbit determination (IOD) a little "smarter". But as
you found, in some cases (mostly involving very short arcs),
it actually resulted in _worse_ orbits.
I've managed to fix most of this, and have posted an
"in development" version at
http://www.projectpluto.com/pluto/devel/find_orb.htm
(NOTE that this isn't the previous site for "in development"
versions, at
http://home.gwi.net/~pluto/devel/find_orb.htm .
I'm in the process of discontinuing that site.)
Please let me know what you find. In a way, this bug turned
out to be a Good Thing; it caused me to think a little bit
differently about how IOD should be handled, and has led to
some ideas for further improvement. The code is a little easier
to follow now, which is a _really_ good thing; it had become
sufficiently complicated that it was hard to make improvements.
-- Bill