Stability derivatives

53 views
Skip to first unread message

Carla Conejero Amarilla

unread,
Feb 13, 2026, 4:22:40 PM (9 days ago) Feb 13
to OpenVSP

I've been working on extracting stability derivatives for my aircraft model and encountered what appears to be a sign convention issue with the moment coefficients, particularly for rolling moment (CMx). I was hoping to get some clarification.

According to previous discussions in this group , I understand that:

  • VSPAERO uses body axes with +X aft, +Y right, +Z up

  • Forces and moments about body axes are output as CFx, CFy, CFz, CMx, CMy, CMz

  • The wind-axis (or conventional aviation) versions are provided as CL, CD, CS, CMl, CMm, CMn

  • And importantly: CMl = -CMx() and CMn = -CMz() 

To verify this, I performed a simple test: I created a wing with +5° dihedral (which should produce negative  in standard convention) and ran a beta sweep at .

From the .stab output, I observed that:

  • CMx_wrt_Beta was positive across all beta angles

  • This seems to confirm that CMx in VSPAERO has the opposite sign to the conventional rolling moment coefficient ()

My questions:

  1. Is my interpretation correct that all rolling moment derivatives (CMx_wrt_BetaCMx_wrt_pCMx_wrt_r, etc.) need to have their signs inverted (multiplied by -1) when converting to standard aviation conventions for use in linearized equations of motion (e.g., for MATLAB/Simulink models)?

  2. Does the same sign inversion apply consistently to all derivatives related to CMx and CMz (including the dynamic derivatives from P, Q, R analyses), or only to the static derivatives?

  3. For the yawing moment (CMz), should I also assume CMn = -CMz applies to all corresponding derivatives (CMz_wrt_BetaCMz_wrt_r, etc.)?

  4. Is there any plan to add an option in future VSPAERO releases to output derivatives directly in stability axes or with standard sign conventions, to avoid manual post-processing?

I'm building a linear state-space model for flight dynamics analysis, so I want to ensure I'm using the correct signs before proceeding. Any clarification would be greatly appreciated.

Thank you for this excellent tool and for your continued support.

Best regards,
Carla Conejero Amarilla

Rob McDonald

unread,
Feb 13, 2026, 4:55:11 PM (9 days ago) Feb 13
to OpenVSP
Only roll and yaw derivatives should have opposite sign from the corresponding body derivatives.

Pitch should have the same sign.

Here is a representative chunk from the source...

/** Inviscid rolling moment coefficient about x axis **/

double CMli(void) { return -CMix_; };

/** Inviscid pitching moment coefficient about y axis **/

double CMmi(void) { return CMiy_; };

/** Inviscid yawing moment coefficient about z axis **/

double CMni(void) { return -CMiz_; };

The stab output files should include both CM(xyz) and CM(lmn) already.

Rob

Carla Conejero Amarilla

unread,
Feb 14, 2026, 9:38:55 AM (9 days ago) Feb 14
to OpenVSP
Thanks you Rob for the help.
Reply all
Reply to author
Forward
0 new messages