Main Content

computeLateralDirectionalFlyingQualities

Calculate dutch roll mode, roll mode, and spiral mode characteristics of state-space model

Description

example

computeLateralDirectionalFlyingQualities(modelToAnalyze) calculates the lateral-directional flying qualities (dutch roll mode, roll mode, and spiral mode) characteristics using the linear system state-space model selected in the input dialog window and compares the results against the specified source document requirements.

lonFQOut = computeLateralDirectionalFlyingQualities(modelToAnalyze,linSys) calculates lateral-directional flying quality characteristics (dutch roll mode, roll mode, and spiral mode) using the linear system state-space model provided as an input to the function.

lonFQOut = computeLateralDirectionalFlyingQualities(modelToAnalyze,linSys,generatePlots) displays the pole-zero map for the linear system state-space model.

[lonFQOut,varNameOut] = computeLateralDirectionalFlyingQualities(___,Name,Value) returns the output results structure variable name, varNameOut, for the input argument combination in the previous syntax, according to the Name,Value arguments.

Examples

collapse all

Calculate the lateral-directional flying qualities of a Simulink® aircraft model.

asbFlightControlAnalysis('6DOF', 'DehavillandBeaverAnalysisModel');
opSpecDefault = DehavillandBeaver6DOFOpSpec('DehavillandBeaverAnalysisModel');
opTrim = trimAirframe('DehavillandBeaverAnalysisModel', opSpecDefault);
linSys = linearizeAirframe('DehavillandBeaverAnalysisModel', opTrim);
latFlyingQual = computeLateralDirectionalFlyingQualities('DehavillandBeaverAnalysisModel', linSys)
Operating point search report:
---------------------------------

 Operating point search report for the Model DehavillandBeaverAnalysisModel.
 (Time-Varying Components Evaluated at time t=0)

Operating point specifications were successfully met.
States: 
----------
(1.) phi
      x:         0.021      dx:     -1.12e-20 (0)
(2.) theta
      x:        0.0653      dx:      3.91e-22 (0)
(3.) psi
      x:             0      dx:      -1.7e-20 (0)
(4.) p
      x:        -1e-20      dx:     -7.37e-12 (0)
(5.) q
      x:      3.52e-23      dx:      3.42e-10 (0)
(6.) r
      x:     -1.69e-20      dx:      -1.2e-11 (0)
(7.) U
      x:          67.3      dx:      1.79e-13 (0)
(8.) v
      x:        0.0927      dx:     -4.63e-11 (0)
(9.) w
      x:           4.4      dx:      2.02e-11 (0)
(10.) Xe
      x:     -3.86e-13      dx:          67.5
(11.) Ye
      x:     -1.18e-12      dx:      4.21e-12 (0)
(12.) Ze
      x:      -2.2e+03      dx:      5.97e-11 (0)
(13.) DehavillandBeaverAnalysisModel/Environment Model/Dryden Wind Turbulence Model  (Continuous (+q +r))/Filters on angular rates/Hpgw/pgw_p
      x:             0      dx:             0
      x:             0      dx:             0
(14.) DehavillandBeaverAnalysisModel/Environment Model/Dryden Wind Turbulence Model  (Continuous (+q +r))/Filters on angular rates/Hqgw/qgw_p
      x:             0      dx:             0
      x:             0      dx:             0
(15.) DehavillandBeaverAnalysisModel/Environment Model/Dryden Wind Turbulence Model  (Continuous (+q +r))/Filters on angular rates/Hrgw/rgw_p
      x:             0      dx:             0
      x:             0      dx:             0
(16.) DehavillandBeaverAnalysisModel/Environment Model/Dryden Wind Turbulence Model  (Continuous (+q +r))/Filters on velocities/Hugw(s)/ug_p
      x:             0      dx:             0
      x:             0      dx:             0
(17.) DehavillandBeaverAnalysisModel/Environment Model/Dryden Wind Turbulence Model  (Continuous (+q +r))/Filters on velocities/Hvgw(s)/vg_p1
      x:             0      dx:             0
      x:             0      dx:             0
(18.) DehavillandBeaverAnalysisModel/Environment Model/Dryden Wind Turbulence Model  (Continuous (+q +r))/Filters on velocities/Hvgw(s)/vgw_p2
      x:             0      dx:             0
      x:             0      dx:             0
(19.) DehavillandBeaverAnalysisModel/Environment Model/Dryden Wind Turbulence Model  (Continuous (+q +r))/Filters on velocities/Hwgw(s)/wg_p1
      x:     -8.13e-14      dx:             0
      x:      5.37e-15      dx:             0
(20.) DehavillandBeaverAnalysisModel/Environment Model/Dryden Wind Turbulence Model  (Continuous (+q +r))/Filters on velocities/Hwgw(s)/wg_p2
      x:             0      dx:             0
      x:             0      dx:             0

Inputs: 
----------
(1.) DehavillandBeaverAnalysisModel/AileronCmd
      u:       0.00234    [-0.524 0.524]
(2.) DehavillandBeaverAnalysisModel/ElevatorCmd
      u:        0.0239    [-0.524 0.524]
(3.) DehavillandBeaverAnalysisModel/RudderCmd
      u:       -0.0377    [-1.05 1.05]
(4.) DehavillandBeaverAnalysisModel/ThrottleCmd
      u:         0.493    [0 1]

Outputs: 
----------
(1.) DehavillandBeaverAnalysisModel/StatesOut
      y:     -3.86e-13    [-Inf Inf]
      y:     -1.18e-12    [-Inf Inf]
      y:      -2.2e+03    [-Inf Inf]
      y:         0.021    [-Inf Inf]
      y:        0.0653    [-Inf Inf]
      y:             0    [-Inf Inf]
      y:          67.3    [-Inf Inf]
      y:        0.0927    [-Inf Inf]
      y:           4.4    [-Inf Inf]
      y:        -1e-20    [-Inf Inf]
      y:      3.52e-23    [-Inf Inf]
      y:     -1.69e-20    [-Inf Inf]


latFlyingQual = 

  struct with fields:

    DutchRollMode: [1×1 struct]
         RollMode: [1×1 struct]
       SpiralMode: [1×1 struct]

Calculate the lateral-directional flying qualities of an Aero.FixedWing object.

[aircraft, state] = astDehavillandBeaver();
linSys = linearize(aircraft, state)
latFlyingQual = computeLateralDirectionalFlyingQualities('', linSys)
linSys =
 
  A = 
                  XN          XE          XD           U           V
   XN              0           0           0      0.9896           0
   XE              0           0           0           0           1
   XD              0           0           0     -0.1439           0
   U               0           0           0    -0.01339  -0.0004123
   V               0           0           0   -0.004288    -0.02862
   W               0           0           0     -0.1996    0.001044
   P               0           0           0  -0.0006608    -0.08777
   Q               0           0           0     0.03146   -0.002583
   R               0           0           0   0.0008302    0.003697
   Phi             0           0           0           0           0
   Theta           0           0           0           0           0
   Psi             0           0           0           0           0
 
                   W           P           Q           R         Phi
   XN         0.1439           0           0           0           0
   XE              0           0           0           0       6.475
   XD         0.9896           0           0           0   3.238e-05
   U           0.287           0     -0.2437           0      0.1845
   V       -0.006164     -0.2064           0      -44.39       9.621
   W          -1.262           0       43.92           0     -0.7921
   P       -0.001175      -5.218   -0.003787       1.771      -0.569
   Q         -0.1426  -1.697e-07      -2.947     -0.2721     -0.1121
   R       0.0001093     -0.8464      0.1728     -0.5366     0.02393
   Phi             0           1           0      0.1454   4.142e-22
   Theta           0           0           1           0   -2.99e-19
   Psi             0           0           0       1.011   2.878e-21
 
               Theta         Psi
   XN         -6.476  -0.0002227
   XE              0          45
   XD         -44.53   3.238e-05
   U           -9.89    0.008391
   V         0.03322       1.388
   W           1.043      0.1316
   P         0.00533    -0.08135
   Q         -0.0687      -0.023
   R       -0.005422    0.002902
   Phi     3.053e-19           0
   Theta           0           0
   Psi     4.394e-20           0
 
  B = 
            Aileron       Flap   Elevator     Rudder  Propeller
   XN             0          0          0          0          0
   XE             0          0          0          0          0
   XD             0          0          0          0          0
   U              0     0.6608          0     0.3456      5.018
   V           -0.3          0          0       1.94          0
   W              0      -15.8     -4.068          0          0
   P         -7.019          0          0      0.491          0
   Q              0      2.163     -10.21          0          0
   R        -0.1925          0          0     -2.509          0
   Phi            0          0          0          0          0
   Theta          0          0          0          0          0
   Psi            0          0          0          0          0
 
  C = 
             XN     XE     XD      U      V      W      P      Q      R
   XN         1      0      0      0      0      0      0      0      0
   XE         0      1      0      0      0      0      0      0      0
   XD         0      0      1      0      0      0      0      0      0
   U          0      0      0      1      0      0      0      0      0
   V          0      0      0      0      1      0      0      0      0
   W          0      0      0      0      0      1      0      0      0
   P          0      0      0      0      0      0      1      0      0
   Q          0      0      0      0      0      0      0      1      0
   R          0      0      0      0      0      0      0      0      1
   Phi        0      0      0      0      0      0      0      0      0
   Theta      0      0      0      0      0      0      0      0      0
   Psi        0      0      0      0      0      0      0      0      0
 
            Phi  Theta    Psi
   XN         0      0      0
   XE         0      0      0
   XD         0      0      0
   U          0      0      0
   V          0      0      0
   W          0      0      0
   P          0      0      0
   Q          0      0      0
   R          0      0      0
   Phi        1      0      0
   Theta      0      1      0
   Psi        0      0      1
 
  D = 
            Aileron       Flap   Elevator     Rudder  Propeller
   XN             0          0          0          0          0
   XE             0          0          0          0          0
   XD             0          0          0          0          0
   U              0          0          0          0          0
   V              0          0          0          0          0
   W              0          0          0          0          0
   P              0          0          0          0          0
   Q              0          0          0          0          0
   R              0          0          0          0          0
   Phi            0          0          0          0          0
   Theta          0          0          0          0          0
   Psi            0          0          0          0          0
 
Continuous-time state-space model.


latFlyingQual = 

  struct with fields:

    DutchRollMode: [1×1 struct]
         RollMode: [1×1 struct]
       SpiralMode: [1×1 struct]

Input Arguments

collapse all

Model on which to perform flight control analysis using the linear state-space model linSys. To use a state-space model directly, set the model name to an empty string, ''.

Data Types: char | string

State-space model object used to perform flight control analysis on modelToAnalyze. To create the state-space model from the input dialog menu, set linSys to an empty string, ''. To create a valid state-space model, see linearizeAirframe.

The state-space model must have these state names:

  • U

  • W

  • Q

  • theta

Data Types: char | string

Set to on to display pole-zero map for the linear system state-space model. Otherwise, set to off.

Data Types: char | string

Name-Value Arguments

Specify optional pairs of arguments as Name1=Value1,...,NameN=ValueN, where Name is the argument name and Value is the corresponding value. Name-value arguments must appear after other arguments, but the order of the pairs does not matter.

Before R2021a, use commas to separate each name and value, and enclose Name in quotes.

Example: 'SourceDocument','MIL1797A'

Document for flying qualities requirements verification, specified as:

  • MIL8785C — Flying qualities of piloted airlines

  • MIL1797A — Flying qualities of piloted aircraft

Data Types: char | string

Flying qualities level, specified as:

  • Lowest — Returns the verified requirements closest to level 1 for each requirement in the selected source document.

  • All — Returns a struct vector with all requirement levels and their verification status.

  • 1, 2, or 3 — Returns the desired requirement level, regardless of the verification status.

Data Types: char | string

Output Arguments

collapse all

Dutch roll, roll, and spiral lateral-directional flying qualities, returned as a structure vector.

If a linear system is selected through the input dialog, varNameOut returns the results structure variable name. Otherwise, varNameOut returns an empty string.

Limitations

This function requires the Simulink Control Design™ license.

Version History

Introduced in R2019a