List of Attributes#
from energia import Model, Resource
m = Model()
m.cookbook
{'capacity': capacity,
'setup': setup,
'dismantle': dismantle,
'operate': operate,
'rampup': rampup,
'rampdown': rampdown,
'produce': produce,
'expend': expend,
'ship_in': ship_in,
'ship_out': ship_out,
'invcapacity': invcapacity,
'invdismantle': invdismantle,
'invsetup': invsetup,
'inventory': inventory,
'consume': consume,
'release': release,
'buy': buy,
'sell': sell,
'earn': earn,
'spend': spend,
'emit': emit,
'abate': abate,
'benefit': benefit,
'detriment': detriment,
'dispose': dispose,
'use': use}
Various constraints are need for the formulating the mathematical programming model. Here we include the cost, production, resource balance, demand, inventory, and network constraints.
List of Parameters#
Special parameters are all in the manual, along with Instructions to handle them
m.manual
{'capex': capex,
'opex': opex,
'invcapex': invcapex,
'inventory_cost': inventory_cost,
'price': price}
Aliasing#
Aliases can be set for any aspect
m.alias('eat', of='consume')
m.declare(Resource, ['a', 'b'])
m.a.eat <= 20
m.b.take <= 15
m.registry
⚖ Initiated a balance in (l0, t0) ⏱ 0.0001 s
🔗 Bound [≤] a consume in (l0, t0) ⏱ 0.0008 s
⚖ Initiated b balance in (l0, t0) ⏱ 0.0001 s
🔗 Bound [≤] b consume in (l0, t0) ⏱ 0.0006 s
{'eat': consume}
Preset aliases can be found in the directory
m.directory
{'size': {'capacity': capacity},
'volume': {'capacity': capacity},
'throughput': {'capacity': capacity},
'potential': {'capacity': capacity},
'output': {'capacity': capacity},
'cap': {'capacity': capacity},
'install': {'setup': setup},
'build': {'setup': setup},
'construct': {'setup': setup},
'commission': {'setup': setup},
'remove': {'dismantle': dismantle},
'take_apart': {'dismantle': dismantle},
'decommission': {'dismantle': dismantle},
'disassemble': {'dismantle': dismantle},
'break_down': {'dismantle': dismantle},
'minimize': {'dismantle': dismantle},
'run': {'operate': operate},
'control': {'operate': operate},
'ramp_up': {'rampup': rampup},
'boost': {'rampup': rampup},
'accelerate': {'rampup': rampup},
'expand': {'rampup': rampup},
'scale_up': {'rampup': rampup},
'reduce': {'rampdown': rampdown},
'decrease': {'rampdown': rampdown},
'slow_down': {'rampdown': rampdown},
'scale_down': {'rampdown': rampdown},
'generate': {'produce': produce},
'manufacture': {'produce': produce},
'create': {'produce': produce},
'fabricate': {'produce': produce},
'yield': {'produce': produce},
'useup': {'expend': expend},
'use_up': {'expend': expend},
'utilize': {'expend': expend},
'import': {'ship_in': ship_in},
'deliver_to': {'ship_in': ship_in},
'bring_in': {'ship_in': ship_in},
'transport_in': {'ship_in': ship_in},
'send': {'ship_out': ship_out},
'export': {'ship_out': ship_out},
'dispatch': {'ship_out': ship_out},
'deliver': {'ship_out': ship_out},
'transport_out': {'ship_out': ship_out},
'inv': {'inventory': inventory},
'stock': {'inventory': inventory},
'storage': {'inventory': inventory},
'reserve': {'inventory': inventory},
'buffer': {'inventory': inventory},
'take': {'consume': consume},
'absorb': {'consume': consume},
'deplete': {'consume': consume},
'procure': {'consume': consume},
'obtain': {'consume': consume},
'free': {'release': release},
'deploy': {'release': release},
'liberate': {'release': release},
'give_off': {'release': release},
'exhale': {'release': release},
'radiate': {'release': release},
'demand': {'release': release},
'purchase': {'buy': buy},
'acquire': {'buy': buy},
'order': {'buy': buy},
'market': {'sell': sell},
'retail': {'sell': sell},
'gain': {'earn': earn},
'receive': {'earn': earn},
'collect': {'earn': earn},
'accrue': {'earn': earn},
'credit': {'earn': earn},
'pay': {'spend': spend},
'expense': {'spend': spend},
'debit': {'spend': spend},
'emission': {'emit': emit},
'expel': {'emit': emit},
'pollute': {'emit': emit},
'pollution': {'emit': emit},
'diminish': {'abate': abate},
'lessen': {'abate': abate},
'curtail': {'abate': abate},
'sequester': {'abate': abate},
'advantage': {'benefit': benefit},
'profit': {'benefit': benefit},
'reward': {'benefit': benefit},
'value': {'benefit': benefit},
'damage': {'detriment': detriment},
'harm': {'detriment': detriment},
'disadvantage': {'detriment': detriment},
'discard': {'dispose': dispose},
'eliminate': {'dispose': dispose},
'get_rid_of': {'dispose': dispose},
'dump': {'dispose': dispose},
'employ': {'use': use},
'apply': {'use': use},
'exploit': {'use': use},
'inventory_setup': {'invsetup': invsetup},
'inv_install': {'invsetup': invsetup},
'inv_build': {'invsetup': invsetup},
'inv_construct': {'invsetup': invsetup},
'inv_commission': {'invsetup': invsetup},
'stock_install': {'invsetup': invsetup},
'stock_build': {'invsetup': invsetup},
'stock_construct': {'invsetup': invsetup},
'stock_commission': {'invsetup': invsetup},
'storage_install': {'invsetup': invsetup},
'storage_build': {'invsetup': invsetup},
'storage_construct': {'invsetup': invsetup},
'storage_commission': {'invsetup': invsetup},
'reserve_install': {'invsetup': invsetup},
'reserve_build': {'invsetup': invsetup},
'reserve_construct': {'invsetup': invsetup},
'reserve_commission': {'invsetup': invsetup},
'buffer_install': {'invsetup': invsetup},
'buffer_build': {'invsetup': invsetup},
'buffer_construct': {'invsetup': invsetup},
'buffer_commission': {'invsetup': invsetup},
'inventory_capacity': {'invcapacity': invcapacity},
'inv_size': {'invcapacity': invcapacity},
'inv_volume': {'invcapacity': invcapacity},
'inv_throughput': {'invcapacity': invcapacity},
'inv_potential': {'invcapacity': invcapacity},
'inv_output': {'invcapacity': invcapacity},
'inv_cap': {'invcapacity': invcapacity},
'stock_size': {'invcapacity': invcapacity},
'stock_volume': {'invcapacity': invcapacity},
'stock_throughput': {'invcapacity': invcapacity},
'stock_potential': {'invcapacity': invcapacity},
'stock_output': {'invcapacity': invcapacity},
'stock_cap': {'invcapacity': invcapacity},
'storage_size': {'invcapacity': invcapacity},
'storage_volume': {'invcapacity': invcapacity},
'storage_throughput': {'invcapacity': invcapacity},
'storage_potential': {'invcapacity': invcapacity},
'storage_output': {'invcapacity': invcapacity},
'storage_cap': {'invcapacity': invcapacity},
'reserve_size': {'invcapacity': invcapacity},
'reserve_volume': {'invcapacity': invcapacity},
'reserve_throughput': {'invcapacity': invcapacity},
'reserve_potential': {'invcapacity': invcapacity},
'reserve_output': {'invcapacity': invcapacity},
'reserve_cap': {'invcapacity': invcapacity},
'buffer_size': {'invcapacity': invcapacity},
'buffer_volume': {'invcapacity': invcapacity},
'buffer_throughput': {'invcapacity': invcapacity},
'buffer_potential': {'invcapacity': invcapacity},
'buffer_output': {'invcapacity': invcapacity},
'buffer_cap': {'invcapacity': invcapacity},
'inventory_dismantle': {'invdismantle': invdismantle},
'inv_remove': {'invdismantle': invdismantle},
'inv_take_apart': {'invdismantle': invdismantle},
'inv_decommission': {'invdismantle': invdismantle},
'inv_disassemble': {'invdismantle': invdismantle},
'inv_break_down': {'invdismantle': invdismantle},
'inv_minimize': {'invdismantle': invdismantle},
'stock_remove': {'invdismantle': invdismantle},
'stock_take_apart': {'invdismantle': invdismantle},
'stock_decommission': {'invdismantle': invdismantle},
'stock_disassemble': {'invdismantle': invdismantle},
'stock_break_down': {'invdismantle': invdismantle},
'stock_minimize': {'invdismantle': invdismantle},
'storage_remove': {'invdismantle': invdismantle},
'storage_take_apart': {'invdismantle': invdismantle},
'storage_decommission': {'invdismantle': invdismantle},
'storage_disassemble': {'invdismantle': invdismantle},
'storage_break_down': {'invdismantle': invdismantle},
'storage_minimize': {'invdismantle': invdismantle},
'reserve_remove': {'invdismantle': invdismantle},
'reserve_take_apart': {'invdismantle': invdismantle},
'reserve_decommission': {'invdismantle': invdismantle},
'reserve_disassemble': {'invdismantle': invdismantle},
'reserve_break_down': {'invdismantle': invdismantle},
'reserve_minimize': {'invdismantle': invdismantle},
'buffer_remove': {'invdismantle': invdismantle},
'buffer_take_apart': {'invdismantle': invdismantle},
'buffer_decommission': {'invdismantle': invdismantle},
'buffer_disassemble': {'invdismantle': invdismantle},
'buffer_break_down': {'invdismantle': invdismantle},
'buffer_minimize': {'invdismantle': invdismantle},
'eat': {'consume': consume}}