Documentation Center

  • Trial Software
  • Product Updates

sdo.requirements.SignalBound class

Package: sdo.requirements

Piecewise-linear amplitude bound

Description

Specify piecewise-linear upper or lower amplitude bounds on a time-domain signal. You can then optimize the model response to meet these bounds using sdo.optimize.

You can include multiple linear edges, and extend to + or –inf.

Construction

sig_req = sdo.requirements.SignalBound creates an sdo.requirements.SignalBound object and assigns default values to its properties.

sig_req = sdo.requirements.SignalBound(Name,Value) uses additional options specified by one or more Name,Value pair arguments. Name is a property name and Value is the corresponding value. Name must appear inside single quotes (''). You can specify several name-value pair arguments in any order as Name1,Value1,...,NameN,ValueN.

Input Arguments

Name-Value Pair Arguments

Specify optional comma-separated pairs of Name,Value arguments. Name is the argument name and Value is the corresponding value. Name must appear inside single quotes (' '). You can specify several name and value pair arguments in any order as Name1,Value1,...,NameN,ValueN.

'BoundMagnitudes'

Magnitude values for the piecewise-linear bound.

Specify the start and end magnitude values for all edges in the bound. The property must be a nx2 array of finite doubles, where each row specifies the start and end magnitude values of an edge. The number of rows must match the number of rows of the BoundTimes property.

Use set to set this and BoundTimes properties simultaneously.

Default: [1 1]

'BoundTimes'

Time values of the piecewise-linear bound.

Specify the start and end times for all the edges in the piecewise-linear bound. The property must be a nx2 array of finite doubles where each row specifies the start and end times of an edge. The start and end times must define a positive length. The number of rows must match the number of rows of the BoundMagnitudes property.

Use set to set this and BoundMagnitudes properties simultaneously.

Default: [0 10]

'Description'

Requirement description. Must be a string.

Default: ''

'Name'

Requirement name. Must be a string.

Default: ''

'OpenEnd'

Extend bound in a negative or positive time direction.

Specify whether the first and last edge of the bound extends to –inf and +inf respectively. Use to bound signals that extend beyond the time values specified by the BoundTimes property.

Must be a 1x2 logical array. If true, the first or last edge of the bound is extended in a negative or positive direction, respectively.

Default: [0 0]

'TimeUnits'

Time units of the requirement. Must be one of the following strings:

  • 'nanoseconds'

  • 'microseconds'

  • 'milliseconds'

  • 'seconds'

  • 'minutes'

  • 'hours'

  • 'days'

  • 'weeks'

  • 'months'

  • 'years'

Default: 'second'

'Type'

Bound type.

Specify whether the piecewise-linear requirement is an upper or lower bound. Must be one of the following strings:

  • '<=' — Upper bound

  • '>=' — Lower bound

Default: '<='

Properties

BoundMagnitudes

Magnitude values for the piecewise-linear bound.

Specify the start and end magnitude values for all edges in the bound. The property must be a nx2 array of finite doubles, where each row specifies the start and end magnitude values of an edge. The number of rows must match the number of rows of the BoundTimes property.

Use set to set this and BoundTimes properties simultaneously.

Default: [1 1]

BoundTimes

Time values of the piecewise-linear bound.

Specify the start and end times for all the edges in the piecewise-linear bound. The property must be a nx2 array of finite doubles where each row specifies the start and end times of an edge. The start and end times must define a positive length. The number of rows must match the number of rows of the BoundMagnitudes property.

Use set to set this and BoundMagnitudes properties simultaneously.

Default: [0 10]

Description

Requirement description. Must be a string.

Default: ''

Name

Requirement name. Must be a string.

Default: ''

OpenEnd

Extend bound in a negative or positive time direction.

Specify whether the first and last edge of the bound extends to –inf and +inf respectively. Use to bound signals that extend beyond the time values specified by the BoundTimes property.

Must be a 1x2 logical array. If true, the first or last edge of the bound is extended in a negative or positive direction, respectively.

Default: [0 0]

TimeUnits

Time units of the requirement. Must be one of the following strings:

  • 'nanoseconds'

  • 'microseconds'

  • 'milliseconds'

  • 'seconds'

  • 'minutes'

  • 'hours'

  • 'days'

  • 'weeks'

  • 'months'

  • 'years'

Default: 'second'

Type

Bound type.

Specify whether the piecewise-linear requirement is an upper or lower bound. Must be one of the following strings:

  • '<=' — Upper bound

  • '>=' — Lower bound

Default: '<='

Methods

evalRequirementEvaluate piecewise-linear bound

Examples

Construct a signal bound object and specify piecewise-linear bounds.

r = sdo.requirements.SignalBound;
set(r,'BoundTimes', [0 10; 10 20],...
      'BoundMagnitudes', [1.1 1.1; 1.01 1.01])

Alternatively, you can specify the bounds during construction:

r = sdo.requirements.SignalBound(...
    'BoundTimes',[0 10; 10 20],...
    'BoundMagnitudes',[1.1 1.1; 1.01 1.01]);

Alternatives

Use getbounds to get the bounds specified in a Check Custom Bounds block.

See Also

| |

How To

Was this topic helpful?