Posts: 7
Threads: 3
Likes Received: 1 in 1 posts
Likes Given: 2
Joined: Jul 2025
Hi all,
I have defined a new commodity 'TRABIOLPG'. In my model, many existing processes already use the traditional 'TRALPG'. I would like to update these processes so the model can freely choose between 'TRABIOLPG' or 'TRALPG'. I tried using TFM_TOPINS and TFM_INS, and it seems to correctly include my new commodity (see screenshot, in PSET_PN there is an exhaustive list of all the processes).

However, my concern is that the efficiency previously defined between TRALPG and the output(s) does not apply to TRABIOLPG. Instead, without any other specifications, the model seems to assume a 1:1 ratio, where one unit of TRABIOLPG produces one unit of output.
I tried different things and had in mind two workarounds:
- Change the commodity group associated to the efficiency (we can see on the second screenshot that only TRALPG appears in the commodity group for the attribute ACT_EFF)
- Insert a FLO_EFF, but is it possible to tell the model FLO_EFF(TRABIOLPG => Output) = EFF(TRALPG => Output)
Is there an efficient way to proceed that does not imply redefining processes or all the efficiency flows?
Thanks in advance for your help!!
Posts: 2,175
Threads: 26
Likes Received: 113 in 99 posts
Likes Given: 37
Joined: Jun 2010
04-09-2025, 08:44 PM
(This post was last modified: 04-09-2025, 08:46 PM by Antti-L.)
You should define the efficiency using EFF or ACT_EFF(NRG) for those processes. Now you have apparently defined the efficiency with CEFF, which is a commodity-specific efficiency. That explains well what you see: The efficiency for the second commodity becomes 1, because you have not defined a group efficiency at all, but only a commodity-specific one.
I can only recommend to change the Subres accordingly, by using EFF or ACT_EFF, instead of CEFF. Of course, as a workaround you could also use a MIG table to copy the efficiencies from TRALPG to TRABIOLPG.
I also suspect that your FLO_SHAR parameters are missing the commodity group (FLO_SHAR expects both a commodity and a commodity group; the share is defined over the group specified).
Posts: 7
Threads: 3
Likes Received: 1 in 1 posts
Likes Given: 2
Joined: Jul 2025
Dear Antti,
Many thanks for your answer and please let me follow-up on this.
- ACT_EFF : I understand using the ~TFM_TOPINS table changes the efficiency attribute. Indeed, at first ACT_EFF has been used in the SubRes to define the efficiency but after the ~TFM_TOPINS it becomes CEFF linking only TRALPG to my output. To my understanding, one solution would be a TFM table to redefine the efficiency with ACT_EFF and the right commodity group (TRALPG + TRABIOLPG), but this is a tedious task given the number of processes and does not look like a robust / efficient solution as I would duplicate and hardcode already existing values (if modifying one by one all processes, it would be probably a best option to modify the original process directly, but this is also a solution I'd like to avoid as I have many processes).
- TFM_MIG : I understand this table allows to update a seed value. For instance, I would be able to update CEFF of TRALPG with basic operands. However, I don't see how I could use this to link the existing CEFF between TRALPG and output to a new CEFF between TRABIOLPG and output.
In my mind, there is a simple solution to my problem which would be to update the "Commodity Group" of CEFF, or transforming CEFF to ACT_EFF after my TFM_TOPINS. But I don't know how to do this practically.
- FLO_SHAR : I think the commodity group TRBLPG_new_NRGI is defined automatically (please refer to the below screenshots).
One more time, thank you for your help!!
Posts: 2,175
Threads: 26
Likes Received: 113 in 99 posts
Likes Given: 37
Joined: Jun 2010
05-09-2025, 01:52 PM
(This post was last modified: 05-09-2025, 02:03 PM by Antti-L.)
> I understand using the ~TFM_TOPINS table changes the efficiency attribute. Indeed, at first ACT_EFF has been used in the SubRes to define the efficiency but after the ~TFM_TOPINS it becomes CEFF linking only TRALPG to my output.
No, I don't see any way ~TFM_TOPINS could change it. I am sure it is originally in your model as a CEFF (or ACT_EFF defined for TRALPG), not EFF, and that is the problem here.
> I understand this table allows to update a seed value. For instance, I would be able to update CEFF of TRALPG with basic operands. However, I don't see how I could use this to link the existing CEFF between TRALPG and output to a new CEFF between TRABIOLPG and output.
Just use CSet_CN2 for the new commodity. It works for me.
> I think the commodity group TRBLPG_new_NRGI is defined automatically (please refer to the below screenshots).
Ok, good, but I think it was required earlier (only Share used to fill the group automatically). I didn't know it works with using FLO_SHAR now as well, thanks!
Posts: 7
Threads: 3
Likes Received: 1 in 1 posts
Likes Given: 2
Joined: Jul 2025
Indeed, as shown below, the process was defined using ACT_EFF and TRALPG.
I was not aware there was a difference between ACT_EFF and EFF. Changing to EFF resolves my issue! In the meantime, I tried the solution with TFM_MIG and it also works to copy the efficiency flow. For future readers, please see the solution below:

Once again thank you for your help Antti!