Gazebo_motor_model Alteration

I am currently running this version of the motor_model in my gazebo code:(
Where the pid is disabled (Why is there a pid within this motor model when pid will be handled by a separate flight controller?).

But also just recently found this:(

I am currently trying to create a parameter to set the thursters to veined thrust. There a small component of the thrust will be perpendicular to the primary flow. Delving through the code I have a few questions.

  1. The updating of forced and moments has a note that it has to be modeled better, how is it currently modeled and are there any ideas for better modeling?
  2. What is the reasoning for the scalar value that includes the comment “at 50 m/s the rotor will not produce any force anymore”
  3. How is the velocity set? The function AddRelativeForce (line 208), seems to always place the force in the third column of the array, which I am assuming is the z direction. Does this mean the force is always pushing in the Z direction for the motor model? How does this work for pusher motors?
  1. As for 3, I believe that is true. For a pusher just change the orientation of the link so the z-vector is along the intended direction. See the tiltrotor model which changes the motor direction when in fixed wing mode.