Hello, guys. My question is the topic. I know it might be a Matlab question but it error occurs in cvx, which is shown as

I wonder if I met this kind of question, how to go to the cvx codes file to check which paramters or settings are wrong? The error comes from this Github program and equations are from line 337 to 356. The equations have been proved in the same name paper, they are approximated into a convex form. Since the UL file in the same page can work successfully and the answer, it seems the problem only comes from the Y and Z variable settings?

Just teach me how to check the problem based on the errors shown in command window please. I will find the problem by myself. Thank you!

(Although I emailed author, it seems that he might forget the email for his github accountâ€¦

Perhaps something like this is happening:

```
cvx_begin
variable x(2)
x(NaN)
```

```
Error using indexing
Array indices must be positive integers or logical values.
```

`x(0)`

```
Error using indexing
Array indices must be positive integers or logical values.
```

CVX is being run in a loop. Perhaps on some iteration, one of the things which gets into an array index is not a positive integer. Variable values after `cvx_end`

will be `NaN`

if the optimization failed, such as due to infeasible, unbounded, or solver experiencing numerical trouble. If you want to see whatâ€™ going on donâ€™t use the quiet mode, and examine any output from one iteration which is used in the next iteration.

If this is happening, its occurrence or not might depend on which solver is used (the program has `cvx_solver sedumi`

), and the versions of everything, as well as the particular input data. And that includes any differences in random numbers drawn in the program. If the random number algorithm or random number seed are changed, the inputs will be different, and the observed behavior might change. If you run the whole program again without resetting the random number seed, you will get different random numbers, and therefore a different problem instance.

Hello Mark, thank you for your help. Sry I caught fever the past days so didnot reply you.

I used your suggest to remove the â€ścvx_quietâ€ť commands, however, the program still only shows the above errors and stops, which I can not check anything of the results.

And another newly come problem is, I found that if I ignore the error and keep clicking RUN, sometimes the program would not go error and continue processing and then give the answer.

I have no idea why this happens. I know thereâ€™re some random generators in the codes, but they only influence the value of the matrix X, Y and Z, not the indeces. And in the program, indeces are just â€śthe number of usersâ€ť and â€śantennaâ€ť, which both of them are integer numbers, not zero and not negative.

I see the error is only occurring at `cvx_end`

. Maybe there is a screwed up CVX installation. Are you using CVX 3.0beta? Do not use it, because it is riddled with bugs, which will never be fixed. If you are using it, remove all CVX directories from the MATLAB path and install CVX 2.2 in a new MATLAB session.

`cvx_version`

shows the version of CVX.

If you are already using CVX 2.2, try a new MATLAB session. If that doesnâ€™t work, try rebooting your computer.

Thank you Mark. Yes I am using the 3.0b version. Iâ€™ll try again the codes after I reinstall the version you recommend.

Thank you so much! The copied code form Github can work correctly now.