Ratio between output commodities
#1

Hello,

I got a question maybe someone can help me. I would like to model a process that produces two different output commodities with a defined ratio. None of these commodities is ELC. I could still use a CHP process, but would have to define one commodity as ELC (in order to use CEH or REH) but I would like to avoid this option.

Alternatively, I tried defining a PRE process, unfortunately, I do not manage to define the ratio between the output commodities. Is there a way how I could do this, maybe using FLO_FUNC? And if yes, how?

Thanks in advance!

Seb

Reply
#2
Assuming that by a ratio you mean the ratio of the output flows, you can use FLO_FUNC or FLO_SHAR or FLO_EFF, if the ratio is fixed. If the ratio is only bounded, you should use FLO_SHAR. Example: If the commodities are COM1 and COM2, and the fixed ratio is COM1/COM2 = x, you could specify:

 FLO_SHAR(r,y,p,COM1,COM2,ANNUAL,FX)= x;  or
 FLO_FUNC(r,y,p,COM2,COM1,ANNUAL) = x; or
 FLO_EFF(r,y,p,COM2,COM1,ANNUAL) = x;

Alternatively, if COM1 and COM2 are the sole members of some group MyCG, you could specify the COM1 share in the group, which is the recommended way when using FLO_SHAR:

 FLO_SHAR(r,y,p,COM1,MyCG,ANNUAL,FX)= 1/(1+1/x);

On the other hand, if by a ratio you mean a rate of substitution between COM1 and COM2 in the combined output, you can use the PRC_ACTFLO parameter for defining such a ratio.
Reply
#3
Seb, please consider posing your question and implementing Antti's suggestion on a new sheet in this workbook:
Reply
#4
I have a problem with FLO_FUNC. I create a technology consuming biomass and solar, producing both heating and hot water. I want to specify the efficiencies from to heating, gas to hotwater, solar to heating (namely 0), solar to hotwater. I create a scenario with FLO_FUNC which is welle understood in VEDA View but my technology is not used, TIMES better takes dummy imports.

If I specify an efficiency 1 in B-NewTech, the technology is still not used but if I also shut down my FLO_FUNC scenario it is used. So it seems that FLO_FUNC prevents the technology from being used.

I can't copy paste my example onto your google worksheet, I don't know why...
Reply
#5
try pasting with keyboard shortcut - ctrl+v
Reply
#6
ok, it's working
Reply
#7
I am not sure what the four output commodities are, or what exactly you are trying to accomplish.
However, note that FLO_FUNC(r,y,p,cg1,cg2,s) defines an equation between cg1 and cg2:

FLOW(r,y,p,cg2,s) = FLO_FUNC(r,y,p,cg1,cg2,s) * FLOW(r,y,p,cg1,s)

In your example, you are defining 8 equations, but you have only 6 flows involved in the equations. So, you should immediately see that your FLOW_FUNC example will not work.

I am not sure what you want, but I assume that all of the four output commodities are in the PG, and that you would perhaps like to define the following equations:

FLOW(RESINECS) = 0.4 * FLOW(RESBIO) + 1 * FLOW(RESSOL)
FLOW(RESCNECS) = 0.4 * FLOW(RESBIO) + 1 * FLOW(RESSOL)
FLOW(RESINCH) = 0.7 * FLOW(RESBIO) + 0 * FLOW(RESSOL)
FLOW(RESCNCH) = 0.7 * FLOW(RESBIO) + 0 * FLOW(RESSOL)

If so, you can take a look at my suggestion.

However, it may well be that these equations don't make much sense either. Therefore, it would really be best if you would first write down the equations you want to formulate, and post them here, so that it will become clear what you are aiming at.
Reply
#8
Thanks Antti.

I would reinforce Antti's suggestion to write down the equations. This is also very important while working with User Constraints.
Reply
#9
Indeed ther's a mistake in my formulation since I need to separate biomass for hot water and biomass for heating.
So I need a t least one more process doing:
FLOW(RESBIOCH)+FLOW(RESBIOECS)=FLOW(RESBIO)

then I need these equations to be fullfiled:

FLOW(RESINECS) +FLOW(RESCNECS) = 0.4 * FLOW(RESBIOECS) + 1 * FLOW(RESSOL)

FLOW(RESINCH)+FLOW(RESCNCH) = 0.7 * FLOW(RESBIOCH) + 0 * FLOW(RESSOL)

But I don't think this can be achieved with FLO_FUNC as it will only link to flows together if I have understood your equation...



Reply
#10
Yes, you cannot use FLO_FUNC, but you can use FLO_EFF for defining these equations, if you have the latest TIMES version v3.2.0.

First define user-defined commodity groups for the two output groups:
Code:
G-RESNECS = {RESINECS, RESCNECS} , and<br>G-RESNCH = {RESINCH, RESCNCH}

You also need to define these groups as commodities with Lim_Type N, so that you can use them as the derived commodity in FLO_EFF. And then you can define:
Code:
FLO_EFF(r,y,p,RESBIOECS,G-RESNECS,s) = 0.4;<br>FLO_EFF(r,y,p,RESSOL,G-RESNECS,s) = 1;<br>FLO_EFF(r,y,p,RESBIOCH,G-RESNCH,s) = 0.7;

Reply
#11
For now I got TIMES v3.0.2, so I don't know if it would work. Anyway we probably will try improving TIMES version and I retain your solution which seems the best.
Thanks for your time.
Reply
#12
We have a heat pump technology which produce both heating and cooling, our time slice resolution is hourly. However, we use FLO_SHAR to specify the share of space heating and cooling. The problem is the model produce both heating and cooling in each time slice which is not desirable (we want to have heating in winter and cooling in summer). I want the model to keep the FLO-SHAR ratio for the entire year not each time slice. Would you please help me with that?

Thanks.
Reply
#13
I think simply using UC_RHSRT instead of UC_RHSRTS should solve your problem.
Reply
#14
Thank you Amit. But, I mean the FLOSHAR output of heat pump technologies. We want to specify the output flow share of heat pump technologies, which means if they are used they provide 40% heating and 60% cooling in a year (not in each time slice) and this share is not the share for the entire service demand (heating and cooling), it is just the output share of those technologies. I am not how we can use UC_RHSRT to do that.
Reply
#15

Ok, so you just want to define a share for the cooling output over the whole year?

Assuming that the output commodities are demands, you could consider defining the heat pump technology at the ANNUAL level.  The load curves defined for the demands (space heating and cooling) would enforce that the input electricity is consumed in each DAYNITE timeslice according to the mix of the output load curves. And then you could use FLO_SHAR in the standard way for defining ANNUAL share limits for the outputs.  This approach would also make the model somewhat smaller in size.

However, if the outputs are not demands and/or there are other reasons to keep the outputs at the DAYNITE level, there are of course still several ways of defining an ANNUAL level share instead of constraining the share in each DAYNITE timeslice. One way is to use a user constraint, as Amit suggested.  However, a standard FLO_SHAR equation is always generated at the timeslice level of the output flows.

So, could you first clarify the nature of the technology and the outputs: Is this a demand technology serving the space heating and cooling demands, and if so, is there a good reason why the process should be at the DAYNITE level?


Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)