function calculateOutput input Real H[:, :] "Hessian matrix"; input Real GhT[:, :]; input Real A[:, :] "discrete time control system matrix A, inaugmented"; input Real B[:, :] "discrete time control system matrix B, inaugmented"; input Real C[:, :] "discrete time control system matrix C, inaugmented"; input Real D[:, :] "discrete time control system matrix D, inaugmented"; input Real F[:, :]; input Real E[:, :]; input Real Ac[:, :]; input Real r[:] "reference trajectory"; input Real x[:] "current values of state variables, augmented"; input Real u_pre[:] "last controller output u(k-1)"; input Real d[:] "measurable disturbances"; input Integer Nl "lower prediction horizon"; input Integer Np "upper prediction horizon"; input Integer Nu "control horizon"; input Integer p "number of controlled variables"; input Integer m "number of manipulated variables"; input Integer n "number of state variables"; input Basic.ConstraintsRecord rcdC; input Basic.QPSolverRecord SolverParams; output Real deltaU[m*Nu]; end calculateOutput;