Problem:Only scalar quadratic forms can be specified in CVX

Have you checked the results of each iteration to make sure the SCA is converging? Are you looking at cvx_opt, as opposed to tr_VV_sum (which is an expressions, and might not be populated with its optimal value by CVX after cvx_end)?

As I wrote earlier, implementing and debugging the overall SCA is out of scope for this forum. I don’t have the time or energy to thoroughly check and debug your code. That would require me to essentially implement the algorithm myself, which I don’t intend to do.

I would suggest you carefully look at what is happening on each iteration, and understand exactly what is going on.

Good luck!!

I have checked the iteration for many times. SCA is converging when the iteration ends.
cvx_opt is equal to tr_VV_sum, which I have checked.
There are some issues with my statement earlier. The question I want to ask is whether the objective function value in equation (10) will change when the constraint condition Ri in equation (11) changes.
According to the Fig.1, the objective function value increases with Ri increasing.

Have you checked whether (11) is tight (satisfied (almost) with equality) for any value of i?" If you run SCA for the largest value of R, is the constraint actually satisfied (at the “optimum”) for the smallest value of R?

Also, the SCA at best converges to a local optimum, not necessarily the global optimum. Even if you have implemented the algorithm “correctly” (and quite possibly you haven’t), given your starting value for V, it might be converging to a lousy local optimum, and not necessarily the same local optimum as in the paper.

Or maybe SCA is converging to something other than a local optimum.