I am working on a flight simulator for control algorithm testing. The issue I am facing is to come up with a relationship between CL/CD/CM and the angle of attack ($\alpha$) and the control surface deflection angle ($\delta$).

Since I'm developing a control algorithm for a flying wing, it is crucial to know how not only $\alpha$ but also $\delta$ affect the forces and moments on my flight vehicle. And I cannot afford to measure the forces and moments experimentally.

In the Gazebo simulator, the LiftDragPlugin's approach is to assume that the lift curve shifts up and down by $\delta$ times some constant. However, that is not the case, as can be seen from the numerical results from XFLR5 below.

CL vs. ⍺

CD vs. ⍺

CM vs. ⍺

Legend: "Plane Name ±δ"

Where “Plane Name $\pm\delta$” describes the curve for any $\delta$.

We can see that the curve shifts in both direction from zero-$\delta$ position. For instance, the stall angle decreases as $\delta$ increases.

My current approach is to construct a three-dimensional lookup table by using the curves at $-\delta$ and $+\delta$ as endpoints and linearly interpolate the two curves along the z-axis. When I need the aerodynamic parameter (CL, CD, or CM) at some $\alpha_0$ and $\delta_0$, I can just locate the point in this three-dimensional space from $\alpha_0$ and $\delta_0$.

Is this a valid way to determine CL/CD/CM as a function of $\alpha$ and $\delta$ numerically? If not, how should I approach this problem?

  • $\begingroup$ Where do you see stall in the data you presented? I don't see any stall. Using XFLR5 would be computational (i.e. numerical), not experimental. $\endgroup$
    – JZYL
    Commented Jun 16, 2020 at 11:51
  • $\begingroup$ I suggest that you take a look at JSBsim (jsbsim.sourceforge.net) While it is not a direct answer to your question, there are a lot of examples of JSBSim aircraft that could include some good data for you. $\endgroup$
    – Adam
    Commented Jun 16, 2020 at 13:25
  • $\begingroup$ I’m not sure if XFLR5 can capture stall for a VLM analysis. $\endgroup$
    – AlphaDoge
    Commented Jun 17, 2020 at 12:41

3 Answers 3


The graphs in the OP show fairly typical results that one would expect from linear analyses (e.g. VLM).

1. Lift

In the linear range, the lifting surface's lift coefficient ($C_L$) can be expressed as:

$$C_L = a_0 \alpha + a_1 \delta$$

where $a_0=\frac{\partial{C_L}}{\partial{\alpha}}$ is the lift curve slope and $a_1=\frac{\partial{C_L}}{\partial{\delta}}$ is the lift slope per plain-flap deflection, which are constants in the linear range and can be readily seen in your lift plot.

Conclusion: You can simplify your lookup tables to the above equations (all constants) if you are only interested in capturing the linear effect (which is all that VLM can capture anyway).

2. Pitching moment

In the linear range, you can express the pitching moment coefficient ($C_m$), which I assume is computed at quarter chord, as:

$$C_{m} = C_{m_{ac}}(\delta) + C_L\frac{l_{ac}(\delta)}{\overline{c}}$$

where $C_{m_{ac}}$ is the pitching moment at the surface's aerodynamic centre (AC) and is a function of $\delta$; $l_{ac}$ is the distance between the 1/4c and AC and is also a function of $\delta$; $\overline{c}$ is the reference chord length.

The $C_m$ plots you've shown seems to line up very close to the aerodynamic centre of the lifting surface (by the fact that there is very little change in $C_m$ with respect to AOA). Flap deflection only significantly changes the offset ($C_{m_{ac}}$). The variations in the slopes are because you do not have a full span plain-flap (you have elevons which are partial span), which changes the spanwise lift distribution and the resulting aerodynamic centre.

Conclusion: You can replace your multi-dimensional lookup table to two 1-dim tables for $C_{m_{ac}}$ and $l_{ac}$, and supplant with the above equation. You may even replace these lookup tables with constant linear relationships if your plots hold water.

3. Drag

The drag coefficient ($C_D$) is the most interesting. It seems like there is some boundary layer analysis combined with the VLM, since $C_{D_0}$ changes per flap. If the Reynolds number do not change significantly, you can attempt the following simplication:

$$C_D = C_{D_0}(\delta) + K(\delta)C_L^2$$

where C_{D_0} is the form drag and $K$ is the induced drag factor, both of which are a function of $\delta$.

Conclusion: You may again simplify your multi-dim lookup tables to two 1-dim tables.

4. Lastly...

You definitely will start to see nonlinear effects at 30 deg control deflection in real life, maybe even at 20 deg. This is obviously not captured by VLM.

  • 1
    $\begingroup$ Thank you! The wing I analyzed in XFLR5 features a full span plain flap. I have not modeled the actual wing and the elevons that I want to simulate yet. $\endgroup$
    – AlphaDoge
    Commented Jun 17, 2020 at 12:44

Ultimately, CFD (Computational Fluid Dynamics), i.e. computer simulation of the airflow and its effects on the wing, will do the job. Many such programs are available, including free ones.


For these kind of jobs VLM is nice tool or there exist some improved version of xfoil. CFD will be too advanced i think. You are in correct path


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .