Welcome to SpaceRoots
This site is devoted to distribute some open-source and free components concerning mathematics and space dynamics.
It was brought to life by passionated people which are already involved in space topics and computer science as their business life. Space systems are extremely difficult to validate and extremely expensive. A number of decade-old techniques (fortran language, fixed format flat data files, 4th order integrators from nineteenth century, historical rules of thumb ...) have been validated for such systems since the golden ages of discovery of this new humankind frontier. These two facts imply that these old techniques are still widely used today in space dynamics, where budget and available time are scarce : contrary to popular belief, operational rocket science does not always deals with bleeding edge technology, it is quite the opposite. This constrained situation implied that in their business life, the people behind SpaceRoots could not always put new ideas and techniques into practice.
SpaceRoots has been set up as a way to explore some ideas without arbitrary schedule or cost constraints. It is also a proof of concept experiment to show that object-oriented design and the java language are well suited for numerical computing and space dynamics.
What will you find there ?
The main component is Mantissa (Mathematical Algorithms for Numerical Tasks In Space System Applications). It is a collection of various mathematical tools developed for simulation purposes. It contains some linear algebra, estimation and geometrical features, and a set of state of the art algorithms for Ordinary Differential Equations solving, all of them supporting multiple switching functions and dense output, as well as some other features.
A tool to check the order of any Runge-Kutta or Runge-Kutta-Fehlberg method using exact arithmetic if possible is also available.
A tiny collection of streams filters implementing ASCII armors for converting binary data into ASCII.
Some mathematically oriented papers are also published on this site, mainly as reference material for practical algorithms implementation
Still there after several years
Spaceroots experiment was started at the beginning of year 2002. What results did it provide ?
The main observation is that the site is still there, up and running. At the beginning of 2006, there are about 130 different visits and 1000 hits each day. It is still a small site with a slowly and steadily increasing popularity. It is easy to find using the main search engines and a few unrelated sites link to it.
The main component, Mantissa is downloaded about 150 times each month. It has been reused in different fields ranging from teaching to studies (universe expansion, ocean currents simulation, greenhouse gases storage, astronomy calibration, biological waste process) and other open-source and free software. Parts of it have also been ported to other languages in operational space systems related to the International Space Station. All the feedbacks from users have been very positive. Very few bugs have been found, and they were all fixed in a few hours. The part which seems to be the most interesting for people is the ODE package. All users reports it as an easy to use but very powerful package. The least squares package, the 3D rotation class and the Mersenne-Twister random generator are also common entry points. 21 versions of Mantissa have been published in four years, the publication rate beeing very irregular (from a few days to a few months between updates).
The two ellipse related documents are also regularly read online or downloaded, many people seem to find the site from these documents.
The experiment is therefore quite positive. People are interested in the components. Java is doing well in numerical and mathematical fields and several very mathematics oriented users told me they found Mantissa because they already searched explicitely for Java libraries, this language being a main criterion for them. I was surprised to learn this, as from my experience in the space industry (I do work in this field since about 20 years), Java is very seldom used in the number crunching community. Rocket science is not what many people think it is.
The downsides are that feedback is very limited. A few mails asking for help in using some package, some bug reports concerning the libraries or the documents. External contributions or requests for changes are extremelly rare (in fact, only one change request was ever received, from someone who did not realized that what he asked for was already implemented in a more generic way, and who was happy to learn he could already handle his problem in an elegant way with tips and examples). One user who already found some bugs proposed to provide a very interesting and important new feature to Mantissa I have always wanted to add myself. I hope this will happen soon as what I have seen is promising.
The site is therefore here to remain. Mantissa will still evolve and new documents will be added.
by Luc Maisonobe