JGCRI / gcam-core

GCAM -- The Global Change Analysis Model
http://jgcri.github.io/gcam-doc/
Other
263 stars 159 forks source link

In GCAM V 5.2: Equation behind the calculation of Transport service output by service in million pass/km or million ton/km from transport final energy demanded in EJ #411

Closed Shukla02Nikita closed 2 months ago

Shukla02Nikita commented 2 months ago

Hello! I am seeking assisstance in knowing how the two queries 'transport total final energy by service' and 'Transport service output by service' are linked? What equation is employed in the background.

My objective is to understand the calculation of Transport service output by service, which is in million pass/km or million ton/km unit (depending on pass or freight) from the transport final energy demanded, which is in EJ.

From the documentation, I can figure out there is some load factor if a vehicle is employed, however, not clear what else and how exactly is it employed.

Assistance is highly appreciated!

Screenshot 2024-04-04 200407 @gokuliyer @Joint Global Change Research Institute @JGCRI

pkyle commented 2 months ago

Here's the equation, from R/zenergy_L254.transportation_UCD.R output = calibrated.value * loadFactor * CONV_EJ_GJ / (coefficient * CONV_BTU_KJ), Where: output: reported service, in million passenger-km or million tonne-km calibrated.value: energy consumption, in EJ/yr loadFactor: persons or tonnes per vehicle CONV_EJ_GJ: 1e9 CONV_BTU_KJ: 1.0551 coefficient: exogenous input-output coefficient, in btu per vehicle-km.

Shukla02Nikita commented 2 months ago

Ahh.....this Thank you so much!! @pkyle

Shukla02Nikita commented 2 months ago

Hello @pkyle ! Might I kindly inquire if you possess knowledge regarding the 'coefficient: exogenous input-output coefficient, measured in BTU per vehicle-kilometer'? I am keen to ascertain where one might access such a coefficient. Your assistance in this matter would be greatly appreciated

pkyle commented 2 months ago

It's in the input file transportation_UCD_CORE.xml and can also be queried, though we don't include a query for it in the standard set of queries. Here's a text block that you can copy-paste into the Queries window of the model interface which will query the data from a model database.

<supplyDemandQuery title="transportation technology IO coefficients">
    <axis1 name="sector">sector</axis1>
    <axis2 name="Year">IO-coefficient[@vintage]</axis2>
    <xPath buildList="true" dataName="input" group="false" sumAll="false">*[@type='sector' and contains(@name,'trn')]/*[@type='subsector']/
               *[@type='technology']/*[@type='input']/IO-coefficient[
               @vintage=parent::*/parent::*/@year]/node()</xPath>
    <comments/>
</supplyDemandQuery>
Shukla02Nikita commented 2 months ago

Right. Thanks a lot. I owe you!

pkyle commented 2 months ago

Just realizing seeing this, the transportation sector consists of a mix of tranTechnology and standard technology objects, used as pass-though technologies in the transportation sector. That query reports data from any object whose type is "technology" and whose sector name contains the string "trn", so it includes pass-through technologies (whose output-unit is the same as the input-unit, either freight tonne-km or passenger-km, and whose coefficient should be 1) as well as the transportation-specific technologies (tranTechnology) whose coefficient is btu/vkm, and whose value should never be 1 because even a golf cart would take more than 1 btu to go 1km. It should be obvious in the reported data, as long as you know to expect it.

Shukla02Nikita commented 2 months ago

Yeah, thanks, I also discovered this.

So here is a thing: Literature suggests that correlation of 2W/1000 people and car/1000 people with GDP per capita indicates a strong statistically significant correlation. An increase in household income and poor public transport are the leading causes of the rampant growth in private vehicles. However, this relationship follows ‘S’ shaped curve which implies that vehicle ownership increases slowly at the lowest income levels, and then more rapidly as income rises, and finally slows down as saturation is approached.

My larger objective is to mimic this S surve in transportation sector, because as far as I know, there is no option to saturate or introduce this S-curve. Vehicle Ownership grows exponentially with income.

Therefore, in order to mimic this real world behaviour, Would it be feasible to do 2 things: 1) Reduce vehicle speed (in the future years) to mimic congestion and therefore less service demand. 2) Increase VOT (value of travel time)

Do you have any comments on my suggestion or would you like to recommend some other levers to mimic this in GCAM?

pkyle commented 2 months ago

It sounds like you've identified some levers to adjust, and it's the sort of thing where the model's output just needs to be checked, and adjustments made, as necessary, in order to construct a coherent and defensible future transportation scenario. Note that in many regions, the assumed speed for LDVs is pretty low, so there isn't that strong of an incentive towards vehicle ownership as incomes increase. To some extent these low vehicle speeds reflect existing congestion and infrastructure quality, which might be expected to increase in the near/medium term due to investment, but then might subsequently decrease, as future growth in service demands leads to congestion. Another thing worth keeping in mind is that the assumption of vkm/veh/yr (vehicle kilometers travelled per vehicle per year) is a static assumption, by region and size class, in the input dataset UCD_trn_data_CORE.csv, but in the real world it could be expected to change, as a function of technology, infrastructure, policy, behavior, income, and probably other factors. That assumption is used for levelizing capital costs in the model input files, which is not a big deal here, but it's also used for estimating vehicle stocks in the post-processing, and changes in this assumption will translate linearly to changes in the estimated stocks. It might be helpful, or not, in generating trajectories of vehicle ownership.