matlab对1/x,1/x^2怎么表示,在cvx工具箱下

来源:互联网 发布:js获取某个元素的位置 编辑:程序博客网 时间:2024/06/14 19:02

···
m=1;
l =0;
h=100;
cvx_begin
variable f1(m)
minimize(-(rho*(T0-inv_pos(f1))-(e*c*f1^2)/(2*theta(i))))
subject to
l <= f1 <= h
cvx_end
···
原本inv_pos(x)是表示1max(x,0)
1x,x>0
的时候,是直接表示成inv_pos(x)

1x,x<0的时候,是直接表示成-inv_pos(-x)

原本pow_pos(x,p)表示max(x,0)p, for xC, and p>1, convex and nondecreasing.
想要表示
1x2,x>0,pow_pos(inv_pos(x),2)
这样的话,才能被cvx识别。

参考的网址:
http://ask.cvxr.com/t/cannot-perform-the-operation-convex-convex/727

原创粉丝点击