Error using *
Incorrect dimensions for matrix multiplication. Check that the number of columns in the first matrix matches the number of rows in
the second matrix. To perform elementwise multiplication, use ‘.*’.

Error in cvxprob/eliminate (line 137)
P = P * cvx_invert_structure( xR );

Error in cvxprob/solve (line 18)
[ At, cones, sgn, Q, P, dualized ] = eliminate( prob, true, shim.dualize );

Error in cvx_end (line 88)
solve( prob );

Error in cvx_opt_alg (line 102)
cvx_end

This error comes up once in 2-3 times I run the simulation(the other times it gives me expected result) and I can’t figure out where I am going wrong. Also, in general, it is expected that CVX will print status and other stuff if not kept in quiet mode. But, for me, surprisingly, it doesn’t print anything. Is that I am using Matlab 2018b version ??

I have Block Diagonalisation Precoding(Orthogonalisation) constraints in my problem and after debugging to some level I have understood that they are causing the above error because once I remove those constraints, everything works fine. I have even tried using Mosek Solver but no improvement in the condition.

I have been using CVX 2.1 version only. PFA the code written by me for solving the convex optimisation problem.

You still have not provided a reproducible problem because you have not supplied the input data. it would be goof if you could so so wth a minimal size problem which exhibits the error.

And rather than posting images, please copy and paste your code and all the output from running it into a forum post, and apply the Preformatted text icon to it. Then try copying and pasting from yout post into a new MATLAB session and verify that you can reproduce your output.