Hello, I’m trying to exress x*log(1+1/y) in cvx with rel_entr( ). Can anyone please help me? Thanks a lot.

It is not convex, so it can’t be done.

Thanks. But I think it’s a concave function.

It is not concave either. Because, when x=1, log(1+1/y) is convex . When y=x, ylog(1+1/y) is concave( x>0,y>0).

As @Michal_Adamaszek has shown,

`x*log(1+x/y) = rel_entr(x+y,y) + rel_entr(y,x+y)`

, which is convex (not concave).

So if your post has a typo and is supposed to have `x/y`

rather than `1/y`

, here is the formulation to use. Otherwise, you’re out of luck with CVX, as @jackfsuia says.