lyapunov.cpp
Go to the documentation of this file.
00001 /*
00002  *    This file is part of ACADO Toolkit.
00003  *
00004  *    ACADO Toolkit -- A Toolkit for Automatic Control and Dynamic Optimization.
00005  *    Copyright (C) 2008-2014 by Boris Houska, Hans Joachim Ferreau,
00006  *    Milan Vukov, Rien Quirynen, KU Leuven.
00007  *    Developed within the Optimization in Engineering Center (OPTEC)
00008  *    under supervision of Moritz Diehl. All rights reserved.
00009  *
00010  *    ACADO Toolkit is free software; you can redistribute it and/or
00011  *    modify it under the terms of the GNU Lesser General Public
00012  *    License as published by the Free Software Foundation; either
00013  *    version 3 of the License, or (at your option) any later version.
00014  *
00015  *    ACADO Toolkit is distributed in the hope that it will be useful,
00016  *    but WITHOUT ANY WARRANTY; without even the implied warranty of
00017  *    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00018  *    Lesser General Public License for more details.
00019  *
00020  *    You should have received a copy of the GNU Lesser General Public
00021  *    License along with ACADO Toolkit; if not, write to the Free Software
00022  *    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
00023  *
00024  */
00025 
00026 
00027 
00034 #include <acado/symbolic_expression/lyapunov.hpp>
00035 
00036 BEGIN_NAMESPACE_ACADO
00037 
00038 
00039 Lyapunov::Lyapunov(){
00040 }
00041 
00042 Lyapunov::Lyapunov(const Expression &rhs1_,                                                        const Expression &A_,                                                           const Expression &B_,                                                           const Expression &P_,                                                           const Expression &x1_,                                                          const Expression &u_,                                                           const Expression &p_){
00043 
00044     rhs1=rhs1_;
00045     A=A_;
00046     B=B_;
00047     P=P_;
00048     x1=x1_;
00049     u=u_;
00050     p=p_;
00051 }
00052 
00053 Lyapunov::Lyapunov(const Expression &rhs1_,                                                        const Expression &rhs2_,                                                        const Expression &A_,                                                           const Expression &B_,                                                           const Expression &P_,                                                           const Expression &x1_,                                                          const Expression &x2_,                                                          const Expression &u_,                                                           const Expression &p_){
00054 
00055     rhs1=rhs1_;
00056     rhs2=rhs2_;
00057     A=A_;
00058     B=B_;
00059     P=P_;
00060     x1=x1_;
00061     x2=x2_;
00062     u=u_;
00063     p=p_;
00064 }
00065 
00066 Lyapunov::Lyapunov(const Expression &rhs1_,                                                        const Expression &rhs2_,                                                        const Expression &A_,                                                           const Expression &B_,                                                           const Expression &P_,                                                           const Expression &x1_,                                                          const Expression &x2_,                                                          const Expression &u_,                                                           const Expression &p_,                                                           const Expression &useed_,                                                       const Expression &pseed_,                                                       const Expression &Yx1_,                                                         const Expression &Yx2_,                                                         const Expression &YP_){
00067 
00068     rhs1=rhs1_;
00069     rhs2=rhs2_;
00070     A=A_;
00071     B=B_;
00072     P=P_;
00073     x1=x1_;
00074     x2=x2_;
00075     u=u_;
00076     p=p_;
00077     useed=useed_;
00078     pseed=pseed_;
00079     Yx1=Yx1_;
00080     Yx2=Yx2_;
00081     YP=YP_;
00082 }
00083 
00084 
00085 Lyapunov::Lyapunov(const Expression &rhs1_,                                                        const Expression &A_,                                                           const Expression &B_,                                                           const Expression &P_,                                                           const Expression &x1_,                                                          const Expression &u_,                                                           const Expression &p_,                                                           const Expression &w_){
00086 
00087     rhs1=rhs1_;
00088     A=A_;
00089     B=B_;
00090     P=P_;
00091     x1=x1_;
00092     u=u_;
00093     p=p_;
00094     w=w_;
00095 }
00096 
00097 Lyapunov::Lyapunov(const Expression &rhs1_,                                                        const Expression &rhs2_,                                                        const Expression &A_,                                                           const Expression &B_,                                                           const Expression &P_,                                                           const Expression &x1_,                                                          const Expression &x2_,                                                          const Expression &u_,                                                           const Expression &p_,                                                           const Expression &w_){
00098 
00099     rhs1=rhs1_;
00100     rhs2=rhs2_;
00101     A=A_;
00102     B=B_;
00103     P=P_;
00104     x1=x1_;
00105     x2=x2_;
00106     u=u_;
00107     p=p_;
00108     w=w_;
00109 }
00110 
00111 Lyapunov::Lyapunov(const Expression &rhs1_,                                                        const Expression &rhs2_,                                                        const Expression &A_,                                                           const Expression &B_,                                                           const Expression &P_,                                                           const Expression &x1_,                                                          const Expression &x2_,                                                          const Expression &u_,                                                           const Expression &p_,                                                           const Expression &w_,                                                           const Expression &useed_,                                                       const Expression &pseed_,                                                       const Expression &Yx1_,                                                         const Expression &Yx2_,                                                         const Expression &YP_){
00112 
00113     rhs1=rhs1_;
00114     rhs2=rhs2_;
00115     A=A_;
00116     B=B_;
00117     P=P_;
00118     x1=x1_;
00119     x2=x2_;
00120     u=u_;
00121     p=p_;
00122     w=w_;
00123     useed=useed_;
00124     pseed=pseed_;
00125     Yx1=Yx1_;
00126     Yx2=Yx2_;
00127     YP=YP_;
00128 }
00129 
00130 
00131 Lyapunov::Lyapunov( const Lyapunov &arg ){
00132 
00133 
00134     rhs1=arg.rhs1;
00135     rhs2=arg.rhs2;
00136     A=arg.A;
00137     B=arg.B;
00138     P=arg.P;
00139     x1=arg.x1;
00140     x2=arg.x2;
00141     u=arg.u;
00142     p=arg.p;
00143     w=arg.w;
00144     useed=arg.useed;
00145     pseed=arg.pseed;
00146     Yx1=arg.Yx1;
00147     Yx2=arg.Yx2;
00148     YP=arg.YP;
00149 }
00150 
00151 
00152 Lyapunov::~Lyapunov(){ }
00153 
00154 
00155 Lyapunov& Lyapunov::operator=( const Lyapunov &arg ){
00156 
00157     if( this != &arg ){
00158 
00159         rhs1=arg.rhs1;
00160         rhs2=arg.rhs2;
00161         A=arg.A;
00162         B=arg.B;
00163         P=arg.P;
00164         x1=arg.x1;
00165         x2=arg.x2;
00166         u=arg.u;
00167         p=arg.p;
00168         w=arg.w;
00169         useed=arg.useed;
00170         pseed=arg.pseed;
00171         Yx1=arg.Yx1;
00172         Yx2=arg.Yx2;
00173         YP=arg.YP;
00174     }
00175     return *this;
00176 }
00177 
00178 BooleanType Lyapunov::isEmpty() const{
00179   if ((P).getDim() == 0)  return BT_TRUE;
00180   return BT_FALSE;
00181 }
00182 
00183 
00184 //}
00185 
00186 
00187 CLOSE_NAMESPACE_ACADO
00188 
00189 // end of file.


acado
Author(s): Milan Vukov, Rien Quirynen
autogenerated on Sat Jun 8 2019 19:37:54