It depends what sort of object you are tracking and whether you need
absolute or just relative positions.
If you just have a single IMU moving freely in space, then in general
you cannot track its position from accel/gyro/mag data alone. You can
only obtain an estimate of its orientation, based on some assumptions
about its movements. IMUSim has several algorithms for doing this,
and their documentation includes references to the papers describing
the theory behind them. See:
http://www.imusim.org/docs/api/imusim.algorithms.orientation-module.html
If you have multiple IMUs on different parts of a jointed rigid body
system, e.g. a human body, then you can obtain relative positions
between them by forward kinematics - basically, putting the segments of
the model together in the orientations reported by the IMUs. This is
fairly simple vector math, and is implemented in IMUSim by the
InheritedForwardKinematics class. A bit more explanation is given in
Alex's thesis, see section 3.2.1 on page 37:
http://homepages.inf.ed.ac.uk/ayoung9/papers/Young_PhD.pdf
To get movements of the body as a whole - like walking around - you have
to make further assumptions, e.g. that the subject is on a flat floor.
Then we can try to estimate, from the reconstructed postures, the steps
that the subject must be making. Alex published a paper about methods
for doing this:
A. D. Young. From Posture to Motion: The Challenge for Real Time
Wireless Inertial Motion Capture. In Proceedings of the 5th
International Conference on Body Area Networks, September 2010.
http://homepages.inf.ed.ac.uk/ayoung9/papers/Young_BodyNets_2010.pdf
Two of the algorithms discussed in that paper (lowest point, and a
contact tracking Kalman filter) are implemented in IMUSim:
http://www.imusim.org/docs/api/imusim.algorithms.position-module.html
Note that unless you're explicitly calling these algorithms, IMUSim
isn't doing any position estimation from (accel, mag, gyro) data. The
trajectory you assign to the IMU, which includes position data, is an
*input* to the simulation, from which the sensor data is eventually
obtained.
Martin