Main Content

Aero.Aircraft.CompositeCoefficient Class

Namespace: Aero

Create composite aerodynamic coefficient

Since R2023b

Description

Aero.Aircraft.CompositeCoefficient defines an aerodynamic coefficient. You can specify this coefficient with the sum or product of multiple lookup tables and numeric values. The Aero.Aircraft.CompositeCoefficient object is used as a value for the Aero.FixedWing.Coefficient object.

Class Attributes

Abstract
false
ConstructOnLoad
false
HandleCompatible
false
Hidden
false
Sealed
true
RestrictsSubclassing
true

For information on class attributes, see Class Attributes.

Creation

Description

example

Aero.Aircraft.CompositeCoefficient(valueCell) creates a composite aerodynamic coefficient with a cell array of Simulink.LookupTable objects, scalar numeric values, or Aero.Aircraft.CompositeCoefficient objects, valueCell.

Aero.Aircraft.CompositeCoefficient(valueCell,functionHandle) uses a specification of how the cell array members are combined.

Aero.Aircraft.CompositeCoefficient(___,stateProperty) creates a composite aerodynamic coefficient with a string array of Aero.FixedWing.State properties. The object uses a specification, functionHandle, of how the valueCell array and stateProperty members are combined.

Input Arguments

expand all

Collection of Simulink.LookupTable objects, scalar numeric, Aero.Aircraft.CompositeCoefficient objects, specified as a row or column cell array.

Function handle combination action applied to valueCell cell array and stateProperty string array members, specified as @prod, @sum, @abs, @max, @min, @mean, @power, @mod, @exp, @sin, @cos, @tan, @asin, @acos, @atan, or @atan2.

Properties defined in custom Aero.FixedWing.State, specified as a string array of Aero.FixedWing.State properties.

Example: ["Alpha","DynamicPressure","P"]

Data Types: string

Properties

expand all

Collection of Simulink.LookupTable objects, scalar numeric, Aero.Aircraft.CompositeCoefficient objects, specified as a row or column cell array.

Attributes:

GetAccess
public
SetAccess
private

Function handle combination action applied to valueCell cell array and stateProperty string array members, specified as @prod, @sum, @abs, @max, @min, @mean, @power, @mod, @exp, @sin, @cos, @tan, @asin, @acos, @atan, or @atan2.

Attributes:

GetAccess
public
SetAccess
private

Properties defined in custom Aero.FixedWing.State, specified as a string array of Aero.FixedWing.State properties.

Example: ["Alpha","DynamicPressure","P"]

Attributes:

GetAccess
public
SetAccess
private

Methods

expand all

Examples

collapse all

Construct aerodynamic drag coefficient, cdAlpha, due to alpha. The draft coefficient is a product of dynamic pressure, surface area, lookup table due to ground effect, and lookup table due to alpha.

Create Simulink.LookupTable object, lutCDGE, due to ground effect.

lutCDGE = Simulink.LookupTable;

Define table data for lutCDGE.

lutCDGE.Table.Value = [1.25 1.2 1.15 1.1 1.05 1];

Define breakpoint values for lutCDGE and assign the state name 'AltitudeAGL' to the field.

lutCDGE.Breakpoints(1).Value = [0 0.2 0.4 0.6 0.8 1.0];
lutCDGE.Breakpoints(1).FieldName = 'AltitudeAGL';

Create Simulink.LookupTable object, lutCDAlpha, due to alpha.

lutCDAlpha = Simulink.LookupTable;

Define table data for lutCDAlpha.

lutCDAlpha.Table.Value = [0.005 0.004 0.003 0.002 0.001 0 0.0012 0.0035...
     0.0054 0.0075 0.01 0.015 0.02 0.026];

Define breakpoint values for lutCDAlpha and assign the state name 'Alpha' to the field.

lutCDAlpha.Breakpoints(1).Value = [-0.1 -0.08 -0.06 -0.04 -0.02 0 0.02...
     0.05 0.1 0.15 0.2 0.25 0.3 0.35]; 
lutCDAlpha.Breakpoints(1).FieldName = 'Alpha';

Create the Aero.Aircraft.CompositeCoefficient cdAlpha object as a product of the Simulink.LookupTable objects.

cdAlpha = Aero.Aircraft.CompositeCoefficient({lutCDGE,lutCDAlpha,200},...
     @prod,["DynamicPressure"])
cdAlpha = 
  CompositeCoefficient with properties:

          valueCell: {[1×1 Simulink.LookupTable]  [1×1 Simulink.LookupTable]  [200]}
    coefficientImpl: @prod
      stateProperty: "DynamicPressure"

Version History

Introduced in R2023b

expand all