Posts: 30
Threads: 7
Likes Received: 0 in 0 posts
Likes Given: 1
Joined: May 2022
20-11-2024, 03:12 PM
After installing VEDA2 v4.0.0.0 and importing the model templates, I encountered a message stating that the VDA_FLOP parameter for secondary commodities would not be imported. The message read: “Info – records deleted in Step 2” with the explanation: “Use PRC_ACTFLO instead of INPUT/OUTPUT/FLOP for PCG members.”
I think it is related to VEDA forum thread https://forum.kanors-emr.org/showthread.php?tid=1426&page=1. Several processes in the VEDA templates of my model (excluding CHPs) have been defined using the OUT(ENC)p parameter for processes with two outputs. Typically, the primary commodity output is assigned a value of 1, while the secondary commodity output has a value not equal to 1. For instance, rapeseed oil production might be assigned output = 1 while a secondary byproduct like bio-waste has output = 0.8.
Upon importing these definitions into VEDA, I noticed that the secondary outputs were not being properly accounted for. This issue stems from transitioning from the MARKAL database, and I have yet to resolve it (because secondary outputs was not important until now).
I am now considering how best to address these inconsistencies. One option is to replace OUT(ENC)p with the FLO_SHAR parameter, recalculating outputs as a proportion of total flows. Alternatively, I could use the PRC_ACTFLO parameter for secondary outputs, but this raises the question: should these secondary outputs be defined as auxiliary outputs? I understand that auxiliary commodities in TIMES are intermediate commodities used to support calculations, represent process activity, track emissions, or model byproducts?
Or there are alternative approaches, such as defining commodity groups and similar ones?
I would appreciate any advice on best practices for addressing this issue.
Thanks,
Janis
Posts: 1,977
Threads: 26
Likes Received: 65 in 56 posts
Likes Given: 20
Joined: Jun 2010
20-11-2024, 03:33 PM
(This post was last modified: 20-11-2024, 10:57 PM by Antti-L.)
> ”Use PRC_ACTFLO instead of INPUT/OUTPUT/FLOP for PCG members.”
If you see the warnings issued for Input / Output =1, I think such warnings are, in fact, superfluous. VEDA does have the old convention that Input / Output =1 can be used for creating process topology (without Comm-IN / Comm-OUT), and so it should be perfectly ok to use those for PCG members as well. But I guess your warnings are probably for some other flows with Output<>1? Such warnings would signify likely modeling errors, related to outputs meant to be "secondary" but mistakenly included in the PCG.
Any secondary outputs (where the output flow is proportional to the activity) can indeed be defined in VEDA by using Output, and that is basically the best way to define such flows (unless the process is a CHP process). So there is no reason to change them to use FLO_SHAR or PRC_ACTFLO. However, ACT_FLO would be a reasonable alternative, but it works almost identically to Output. ACT_FLO works consistently also for CHP. One could also use FLO_EFF.
> should these secondary outputs be defined as auxiliary outputs?
Usually there is no need to define secondary outputs as auxiliary outputs, if you have defined the PCG explicitly. But if the PCG has several members, and there is a secondary output of the same commodity type, defining it an auxiliary output may be the easiest way to ensure that the PCG will be correct (i.e. excluding the secondary output). If the issue you have is in fact only about outputs that should be secondary, then you have a PCG issue, which you can fix either by defining the PCG explicitly, or by defining the secondary outputs as auxiliary outputs.
Posts: 30
Threads: 7
Likes Received: 0 in 0 posts
Likes Given: 1
Joined: May 2022
20-11-2024, 08:29 PM
Thank you for your detailed explanations!
To help me better grasp this, let’s frame it with an example. Suppose we have a process with three inputs and two outputs: Inputs: F1 (xx), F2 (yy), and F3 (zz) and Outputs: FO1 (===1) and FO2 (nn)
Additionally, let’s assume that the process activity equals the FO1 output.
It’s clear that inputs are defined in VEDA2 using VDA_FLOP.

Here’s what I observe regarding outputs:
- Defined via ACT_FLO:
- When outputs are specified using ACT_FLO in the template, they appear in VEDA.
- In the results, the process activity equals the sum of both outputs.
- Defined via OUTPUT or OUT(ENC)p:
- In this case, I do not see any parameters related to outputs in VEDA but see them in topology.
- In the results, only the primary commodity is produced, and its quantity equals the process activity.
- Defined via RC_ACTFLO (Auxiliary Outputs):
- I am attempting to define the secondary outputs as auxiliary outputs using RC_ACTFLO, and this seems to work.
- I feel this might be the correct approach, but I’d appreciate your thoughts on whether I’m heading in the right direction.
Finally, I am unclear on the meaning of “defining the PCG explicitly.” Could you please elaborate on this concept and its implications for my example?
I apologize for perhaps such a confusing example.
Posts: 1,977
Threads: 26
Likes Received: 65 in 56 posts
Likes Given: 20
Joined: Jun 2010
20-11-2024, 08:45 PM
(This post was last modified: 20-11-2024, 09:11 PM by Antti-L.)
I am sorry but I am not able to follow your conclusions at all, because I cannot see what you actually have in your model. So, I cannot comment on them, other than that in my view your conclusions are not correct.
• Both Output and ACT_FLO do work perfectly well for secondary flows (but Output not for CHP).
• PRC_ACTFLO is not at all meant to be used for any secondary outputs. It is meant to be used for PCG flows only. However, it is indeed supported for auxiliary flows as well, but it works then in the same way as ACT_FLO does (but this is an undocumented and unrecommended usage of PRC_ACTFLO)
• About OUT(ENC)p I don't know anything, it is not a TIMES attribute
But of course, if you defined the secondary flows auxiliary in some cases, and in some cases not, then that might explain your findings.
It is highly recommended to define the PCG of all processes explicitly in the FI_Process table. By doing so you can be sure the PCG flows (and the secondary flows) are exactly those intended.
Posts: 30
Threads: 7
Likes Received: 0 in 0 posts
Likes Given: 1
Joined: May 2022
Posts: 1,977
Threads: 26
Likes Received: 65 in 56 posts
Likes Given: 20
Joined: Jun 2010
20-11-2024, 09:44 PM
(This post was last modified: 20-11-2024, 09:45 PM by Antti-L.)
You should add the column PrimaryCG into the FI_Process table, and write BIODSL under that heading. That will define the PCG (=PrimaryCG) as BIODSL, which it should be. That would already be sufficient, but you could also remove the OUT(ENC)p=1 parameter for BIODSL, as it serves no purpose (it will just be ignored).
Posts: 30
Threads: 7
Likes Received: 0 in 0 posts
Likes Given: 1
Joined: May 2022
Thak you, it's works!
Somehow, I had mistakenly thought that VEDA would fix the PCG when importing.
|