i found a strange behaviour of NASTRAN using Body Loads.
a mass point (mass=1 ton) ist rotating with f=0.318Hz on a circle with radius R=1000mm.
Thereby the centrifugal force should be: F=mass*(2*Pi*f)^2*R=4000N
Doing this in FEMAP with bodyload as single value(0.31847) creates the correct result.
Defining a Function within bodyloads defining a constant velocity leads to a Force of F=2000N
i can not find out why and how!
On the RFORCE entry, Nastran expects you to input rev/time, and then it converts to omega properly internally and then omega is used to calculate the force. The function that you referenced is not used in this calculation, it is intended to be the load vs time.
The RFORCE entry below has no reference to a function(see the QRG), it is not allowed, the force is based only on the information on this entry
RFORCE 102 0 0 .15915 0. 0. 1.
The function you referenced shows up on the combination of the TABLED2 entry and is referenced on the TLOAD1,DLOAD combination:
$ Femap with NX Nastran Function 1 : Omega 2
TABLED2 1 0. +
+ 0. 2. 100. 2.ENDT
TLOAD1 101 102 LOAD 1
DLOAD 1 1. 2. 101
Your issue is really an incorrect use of the function in Femap. When creating transient loading, the function should be the loading vs time function. This is just a scale factor on the load applied it is not a scale factor on the rotational velocity, it is used outside of the loop where the rotational velocity is used to calculate a force.
In your run where you define a function with a constant value of 2.0; this gets applied after the force due to the rotational velocity is calculated. If you look in the f06 file and compare the OLOAD Resultant(not scaled by time function) and applied load vector(scaled by time function), you will see the OLOAD Resultant is correct for the rotational velocity that you input. This force is then multiplied by the scale factor(your function).