I want to create a pyomo model with 1000 basic pyomo variables. I know it is a bad idea to do this like the following script. And it is also not working. I hope you understand the idea and be able to help me.
import pyomo.core as pyomo
def create_model_a():
    m = pyomo.ConcreteModel()
    for i in range(1000):
        m.var_i = pyomo.Var(within=pyomo.NonNegativeReals)
    return m
so basically instead of writing m.var_0 = ... to m.var_999 = ..., I used a for loop and of course in this way it is not working but the idea is creating 1000 variables without hard-coding m.var_0, m.var_1, m.var_2, and so on till m.var_999. How can I do it?
I want to create this not to model anything but I wanna use memory profile on this function to understand how much memory is needed for a pyomo model with 1000 variables.
Ps: I tried following and it is not working (cannot see any declarations when I cast m.pprint()):
def create_model_a():
    m = pyomo.ConcreteModel()
    m.var = {}
    for i in range(1000):
        m.var[i] = pyomo.Var(within=pyomo.NonNegativeReals)
    return m
PS2: checked also How to increment variable names/Is this a bad idea and How do I create a variable number of variables? ... sadly no help
 
    