Coder Social home page Coder Social logo

Comments (4)

pkyle avatar pkyle commented on May 20, 2024

The input-output coefficients and carbon densities of each fuel in the generic oil refining technology can be interpreted as follows:
1.06 * 19.6 + 0.02 * 14.2 + 0.005 * 0 - 1 * 19.6 = 1.46 kgC/GJ = 5.35 kg CO2/GJ
It's a pretty simple representation of the oil refining production technology, abstracted from all of the specific transformations of energy that take place at oil refineries. One could absolutely define a similar technology that captures this 5.35 kg of CO2 per GJ of fuels produced. You'd just assign a capture fraction (i.e., what portion of this emissions stream is captured) and ideally also increase the non-energy cost and input-output coefficients, particularly electricity, to reflect the additional costs and energy requirements of CO2 capture and compression.
There should not be any "non-energy-use-capture-component" here because oil refineries by definition are producing commodities considered as energy commodities, even if their downstream uses end up being non-energy. In other words the decision to use the outputs of petroleum refining for non-energy purposes is made downstream of the oil refineries. In GCAM, non-energy carbon sequestration refers to the use of petroleum products for non-energy purposes wherein the carbon in the fuel is not emitted as CO2. An example is asphalt/bitumen for road construction. At the refinery gate it's considered an energy commodity, and it has a combustible energy content, but as an input to the construction industry it's considered a feedstock (non-energy) and assigned a non-energy sequestration fraction.

from gcam-core.

dobrien13 avatar dobrien13 commented on May 20, 2024

Thanks for the feedback, @pkyle . This all makes sense, I didn't think to account for the energy output in that equation.

One follow-up: I've added a new tech, "oil refining CCS," and have been attempting to require a share of oil refining output in a region to come from CCS tech, either by a RES or subsidy like I do with other sectors & techs. The model is having particular difficulty solving. It doesn't appear simply economic, as I tried keeping the non-energy input cost on par with standard oil refining as a test and had the same result. I've been sure to turn global & regional shareweights on where appropriate. In earlier years with RES/subsidy policies requiring smaller amounts of CCS, "carbon-storage" markets often fail (esp in Japan, Middle East) and the policies fail with supply ~= 0. In later years with higher shares of CCS required, many markets fail, economy-wide. Do you have any ideas as to what I might be missing here? (example input XML attached as .txt)

Thank you again for your feedback.
en_transformation.txt

from gcam-core.

pkyle avatar pkyle commented on May 20, 2024

If the CO2 price of some region/time period is zero then by default the cost of any technology that captures CO2 will be very high. It's from this block of code:

    // If there is no carbon market, return a large number to disable the
    // capture technology.
    if( carbonMarketPrice == Marketplace::NO_MARKET_PRICE || carbonMarketPrice == 0.0 ){
        return util::getLargeNumber();
    }

Where getLargeNumber() returns 1e6. If this behavior is not desired (i.e., CCS tech share of zero when CO2 price is zero), then you could either comment out that code and re-compile the executable, or you could run with a small CO2 price, e.g. $1/tC, that wouldn't trigger that cost adder to CCS technologies but that also wouldn't seriously impact the modeled decisions in most sectors.

from gcam-core.

dobrien13 avatar dobrien13 commented on May 20, 2024

That explains it; thanks for all your help. Happy holidays!

from gcam-core.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.