DynamicSystems
EquilibriumPoint
find the local equilibrium point of system satisfying constraints
Calling Sequence
Parameters
Options
Description
Examples
Compatibility
EquilibriumPoint(eqs, u, opts)
eqs
-
equation, expression, or set or list of equations or expressions. If you specify an expression expr, it is interpreted as the equation expr=0
u
list or set; input variables
opts
(optional) equation(s) of the form option = value; specify options for the EquilibriumPoint command
constraints = list or set of equations and inequalities
The constraints imposed on the states, derivatives of the states, inputs, or outputs of the system that must be satisfied at the equilibrium point.
evaluationlimit = posint
Sets the maximum number of objective function evaluations. The default is 100.
functions = list of lists
The user-defined functions present in the system. Each function is described in a list of the form: [name, input argument type list, output type, Maple procedure].
initialpoint = list or set of equations
The operating point in the state-input space at which the local search for an equilibrium point should start. The EquilibriumPoint returns the equilibrium point closest to the initialpoint.
If only some of the states and inputs are specified by the initialpoint, the EquilibriumPoint command sets the rest of the states and inputs equal to zero.
If the initialpoint is not given, the EquilibriumPoint command chooses the initial point randomly.
simplify = truefalse
Specifies whether the given equations need to be simplified (true), or not (false). The default is true.
The EquilibriumPoint command finds the equilibrium point of eqs such that constraints, if specified by the constraints option, are satisfied, and returns four lists of equations specifying the values of states, derivatives of states, inputs, and outputs at the equilibrium point, respectively.
The equilibrium point of a system is a point at which derivatives of the states vanish. The EquilibriumPoint command performs a local search and returns an equilibrium point closest to the initial point, either specified by the initialpoint parameter or chosen randomly.
If the EquilibriumPoint command cannot find a point at which derivatives are zero, it returns a point that minimizes the derivatives. It is possible to prescribe a non-zero value to the derivatives using the optional parameter constraints.
with⁡DynamicSystems:
sys1≔diff⁡x1⁡t,t=x2⁡t2−4,diff⁡x2⁡t,t=x1⁡t−1+u⁡t,y⁡t=x1⁡t+x2⁡t
sys1≔ⅆⅆtx1⁡t=x2⁡t2−4,ⅆⅆtx2⁡t=x1⁡t−1+u⁡t,y⁡t=x1⁡t+x2⁡t
EquilibriumPoint⁡sys1,u⁡t,constraints=0<x1⁡t,initialpoint=u⁡t=0,x1⁡t=2,x2⁡t=4
x1⁡t=1.49999999768708,x2⁡t=−2.00000001053627,ⅆⅆtx1⁡t=4.21450963017378×10−8,ⅆⅆtx2⁡t=−4.62584648364128×10−9,u⁡t=−0.500000002312923,y⁡t=−0.500000012849197
sys2 := {piecewise(x[1](t)<0, x[1](t), x[2](t) + x[1](t)^2) * piecewise(u(t)<0, cos(y(t)), sin(y(t))) = sin(x[1](t)^2) + 5 * y(t) + diff(x[1](t), t, t), y(t) - x[1](t)^2 + u(t)*x[1](t), diff(x[2](t), t) = f(x[1](t), u(t))}; user_function := [ f, [float, float], float, proc(x, y) local d1, d2; d1 := cos(x)+x^2; d2 := y*d1 + y^2; return d1*x+d2*y- exp(d1); end proc ];
sys2≔y⁡t−x1⁡t2+u⁡t⁢x1⁡t,x1⁡tx1⁡t<0x2⁡t+x1⁡t2otherwise⁢cos⁡y⁡tu⁡t<0sin⁡y⁡totherwise=sin⁡x1⁡t2+5⁢y⁡t+ⅆ2ⅆt2x1⁡t,ⅆⅆtx2⁡t=f⁡x1⁡t,u⁡t
user_function≔f,float,float,float,procx,ylocald1,d2;d1 ≔ cos⁡x+x^2;d2 ≔ y*d1+y^2;returnx*d1+d2*y − exp⁡d1end proc
EquilibriumPoint⁡sys2,u⁡t,functions=user_function,initialpoint=x1⁡t=1,x2⁡t=1,u⁡t=1
x1⁡t=0.853420831346895,x2⁡t=0.687832129312234,ⅆ2ⅆt2x1⁡t=2.43748043970982×10−9,ⅆⅆtx1⁡t=0.,ⅆⅆtx2⁡t=−1.14152598484907×10−9,u⁡t=1.07055911392119,y⁡t=−0.185310333631790
The evaluationlimit option was introduced in Maple 15.
For more information on Maple 15 changes, see Updates in Maple 15.
See Also
DynamicSystems[Linearize]
Download Help Document