summaryrefslogtreecommitdiffstats
path: root/sumofsquares/sosexprbase/init/initsosexprbase.py
diff options
context:
space:
mode:
Diffstat (limited to 'sumofsquares/sosexprbase/init/initsosexprbase.py')
-rw-r--r--sumofsquares/sosexprbase/init/initsosexprbase.py15
1 files changed, 10 insertions, 5 deletions
diff --git a/sumofsquares/sosexprbase/init/initsosexprbase.py b/sumofsquares/sosexprbase/init/initsosexprbase.py
index 6b7f299..9dade7e 100644
--- a/sumofsquares/sosexprbase/init/initsosexprbase.py
+++ b/sumofsquares/sosexprbase/init/initsosexprbase.py
@@ -30,20 +30,24 @@ def init_param_sos_expr_base(
name: str,
variables: polymatrix.Expression,
monom: polymatrix.Expression | None = None,
- n_rows: int | None = None,
+ n_row: int | None = None,
+ n_col: int | None = None,
):
if monom is None:
monom = polymatrix.from_(1)
- if n_rows is None:
- n_rows = 1
+ if n_row == None:
+ n_row = 1
- if n_rows is 1:
+ if n_col == None:
+ n_col = 1
+
+ if n_row == 1 and n_col == 1:
param = monom.parametrize(f'{name}')
param_matrix = param.T
else:
- params = tuple(monom.parametrize(f'{name}_{row+1}') for row in range(n_rows))
+ params = tuple(monom.parametrize(f'{name}_{row+1}_{col+1}') for col in range(n_col) for row in range(n_row))
param = polymatrix.v_stack(params)
param_matrix = polymatrix.v_stack(tuple(param.T for param in params))
@@ -53,4 +57,5 @@ def init_param_sos_expr_base(
monom=monom,
variables=variables,
param_matrix=param_matrix,
+ n_row=n_row,
)