fn are the solution of variable f obtained at the n-th iteration . A matrix is input data.

If `fn`

is input data and `f`

is a CVX variable, then `real(fn'*A*f)`

is an affine expression, and can can be entered as is in CVX.

Whether your Successive Convex Approximation scheme converges to anything, let alone a global, or even local, optimum of the original problem, is another matter.

oh,i am sorry ,but the fn is not input data ,it is optimal f obtained in last iteration[eg:(n-1)th iteration]. In (n-1)th iteration, we can obtain the optimal f, and regard it as fn in n-th iteration . So i don’t know how to write fn’Af in CVX.

I think you do actually mean that `fn`

is input data in the current problem.

```
fn = initial_value;
while ....
cvx_begin
variables f(m) ...
minimize ...
<constraints>
cvx_end
fn = f; % ets fn to the optimal value of f in the just completed optimization
end
```

I have left out error handling and other things. But perhaps this is roughly what you want.

I understand.Thank you very much!