# 3D Controller [A(v),B(v),C(v),D(v)]

Implement gain-scheduled state-space controller depending on three scheduling parameters

GNC/Control

## Description

The 3D Controller [A(v),B(v),C(v),D(v)] block implements a gain-scheduled state-space controller as defined by the equations

`$\begin{array}{l}\stackrel{˙}{x}=A\left(v\right)x+B\left(v\right)y\\ u=C\left(v\right)x+D\left(v\right)y\end{array}$`

where v is a vector of parameters over which A, B, C, and D are defined. This type of controller scheduling assumes that the matrices A, B, C, and D vary smoothly as a function of v, which is often the case in aerospace applications.

## Parameters

A-matrix(v1,v2,v3)

A-matrix of the state-space implementation. In the case of 3-D scheduling, the A-matrix should have five dimensions, the last three corresponding to scheduling variables v1, v2, and v3. Hence, for example, if the A-matrix corresponding to the first entry of v1, the first entry of v2, and the first entry of v3 is the identity matrix, then `A(:,:,1,1,1) = [1 0;0 1];`.

B-matrix(v1,v2,v3)

B-matrix of the state-space implementation. In the case of 3-D scheduling, the B-matrix should have five dimensions, the last three corresponding to scheduling variables v1, v2, and v3. Hence, for example, if the B-matrix corresponding to the first entry of v1, the first entry of v2, and the first entry of v3 is the identity matrix, then `B(:,:,1,1,1) = [1 0;0 1];`.

C-matrix(v1,v2,v3)

C-matrix of the state-space implementation. In the case of 3-D scheduling, the C-matrix should have five dimensions, the last three corresponding to scheduling variables v1, v2, and v3. Hence, for example, if the C-matrix corresponding to the first entry of v1, the first entry of v2, and the first entry of v3 is the identity matrix, then `C(:,:,1,1,1) = [1 0;0 1];`.

D-matrix(v1,v2,v3)

D-matrix of the state-space implementation. In the case of 3-D scheduling, the D-matrix should have five dimensions, the last three corresponding to scheduling variables v1, v2, and v3. Hence, for example, if the D-matrix corresponding to the first entry of v1, the first entry of v2, and the first entry of v3 is the identity matrix, then `D(:,:,1,1,1) = [1 0;0 1];`.

First scheduling variable (v1) breakpoints

Vector of the breakpoints for the first scheduling variable. The length of v1 should be same as the size of the third dimension of A, B, C, and D.

Second scheduling variable (v2) breakpoints

Vector of the breakpoints for the second scheduling variable. The length of v2 should be same as the size of the fourth dimension of A, B, C, and D.

Third scheduling variable (v3) breakpoints

Vector of the breakpoints for the third scheduling variable. The length of v3 should be same as the size of the fifth dimension of A, B, C, and D.

Initial state, x_initial

Vector of initial states for the controller, i.e., initial values for the state vector, x. It should have length equal to the size of the first dimension of A.

## Inputs and Outputs

InputDimension TypeDescription

First

Contains the measurements.

Second

Contains the scheduling variable, ordered conforming to the dimensions of the state-space matrices.

Third

Contains the scheduling variable, ordered conforming to the dimensions of the state-space matrices.

Fourth

Contains the scheduling variable, ordered conforming to the dimensions of the state-space matrices.

OutputDimension TypeDescription

First

Contains the actuator demands.

## Assumptions and Limitations

If the scheduling parameter input to the block go out of range, then they are clipped; i.e., the state-space matrices are not interpolated out of range.