# CVX Diciplined errot

``````cvx_begin
variable S(LEN_ANG,K);
SSV     = S*V1*Dk;
minimize( norm(YSV - Aa*SSV) );
subject to
sqrt(diag(SSV*SSV')) <= 0.1
cvx_end
``````

It throws an error saying “Disciplined convex programming error:
Only scalar quadratic forms can be specified in CVX”…

My idea Here is minimize( norm(YSV - AaSSV) ) w.r.t SSV and I was using this **sqrt(diag(SSVSSV’))** to ensure sparsity only in columns.

Here YSV ,Aa and SSV all are Matrices.

I don;t know what the dimensions of your MATLAB variables are. Is `SSV` a column vector? If so, will this do what you want?
`norm(SSV,inf) <= 0.1`

Anyhow, read Why isn't CVX accepting my model? READ THIS FIRST! . Then you would know that what you did will not be accepted by CVX, because it violates the DCP rules as documented in http://cvxr.com/cvx/doc/ .

I need to do

minimize( norm(YSV - AaSSV)+ repar(norm(norms(SSV,2,2),1) ));

Here SSV is a Matrix…
norms(SSV,2,2) …is a Vector but function of SSV. Since I want to find the sparsity only in the columns of SSV.

norm1 of norms(SSV,2,2) is written as norm(norms(SSV,2,2),1) )…

Now the error is “Disciplined convex programming error:
Cannot perform the operation norm( {convex}, 1 )”…

Can you Pls suggest me.

I don;t understand what you are trying to do. Does `sum(norms(SSV,2,2))` do what you want?

norms(SSV,2,2)…does second norm on the rows of matrix “SSV”

sum of norms then adds the norms of the rows, which of course are nonnegative.

norms(SSV,2,2) results in to a vector.

1.I need to find norm1 of the vector “norms(SSV,2,2)”

Have you proved it is convex, and if so, how? That is your responsibility per the forum rules. Why isn’t CVX accepting my model? READ THIS FIRST! i’m not saying it is or isn’t.

Mark…I have verified…with plotting…

Let me verify…mathematically…