So how exactly are we going to "add" a centrifuge? Well, we are "adding" a centrifuge because centrifuges don't deal well with the fine grain levels of motion simulation and current simulators don't deal well with the larger sustained forces. So we'll need a method of combining the two.
The first thing to look at is how angular velocity will shift in the various applications and infer a best case geometry for the simulator. Obviously we'll need to spin the thing. So that is at the top of the hierarchy. Why? Because with all that weight moving around we probably shouldn't try to compensate for detailed changes in force at this level. The centrifuge will handle the larger waves of force, more about this later. We'll also need a way of vectoring, or changing the angle of, the force. We'll call this:
Ok,so let's say you're flying around in Elite Dangerous...you crank up your thrusters and at the end you want to slow down fast. The G's will roll from behind you, thruster, to your front, deceleration. Likewise, if you turn sharply, then the vector of the force rotates from below/behind you to your flank.
In order to simulate this shifting angle, we'll need to alter the vector of our centripetal force.
Orientation of the passenger allows the proper recreation of force. Let's now consider from where this rotation may originate.
If we were to rotate the passenger from the seats center of gravity our inner ear would detect the centripetal velocity changes due to this sub rotation. There may need to be some experiments performed to determine the best placement of the pivot, however I am going to run with the ear as being the best bet.
The detail level of simulation then rides beneath this centrifugal system. These systems have been explored and implemented to a high degree, and as such I will skim over the technical side of their implementation. Suffice to say that if the centrifuge is handling large, "push you into the back of your seat" forces then the detail stage is handling the bumps in the road and the rumbling of the engine.
Implementation of the these two stages requires some very simple math to extract the detail from the larger forces. The first step involves a gaussion filter that smoothes the input data to a level suited to the centrifuge. Sudden changes in rotation speed would require significant reinforcements, not to mention they're also probably dangerous.
After the smooth data for the centrifuge has been created it is subtracted from the original data to create the detailed data. These two stages are then synchronized to create a true simulation of moving.