# new_param¶

`picos.``new_param`(name, value)

Declare a parameter for the problem, that will be stored as a `cvxopt sparse matrix`. It is possible to give a list or a dictionary of parameters. The function returns a constant `AffinExp` (or a `list` or a `dict` of `AffinExp`) representing this parameter.

Note

Declaring parameters is optional, since the expression can as well be given by using normal variables. (see Example below). However, if you use this function to declare your parameters, the names of the parameters will be displayed when you print an `Expression` or a `Constraint`

Parameters: name (str) – The name given to this parameter. value – The value (resp `list` of values, `dict` of values) of the parameter. The type of value (resp. the elements of the `list` value, the values of the `dict` value) should be understandable by the function `retrieve_matrix()`. A constant affine expression (`AffinExp`) (resp. a `list` of `AffinExp` of the same length as value, a `dict` of `AffinExp` indexed by the keys of value)

Example:

```>>> import picos as pic
>>> import cvxopt as cvx
>>> prob=pic.Problem()
>>> B={'foo':17.4,'matrix':cvx.matrix([[1,2],[3,4],[5,6]]),'ones':'|1|(4,1)'}
>>> B['matrix']*x+B['foo']
<2×1 Affine Expression: [2×3]·x + [17.4]>
>>> #(in the string above, |17.4| represents the 2-dim vector [17.4,17.4])
>>> B=pic.new_param('B',B)
>>> #now that B is a param, we have a nicer display:
>>> B['matrix']*x+B['foo']
<2×1 Affine Expression: B[matrix]·x + [B[foo]]>
```