Closed sichen1234 closed 1 year ago
@sichen1234 Yes. The only question I have is how emissions would be distributed among Sempra's products, electricity and natural gas.
A CarbonTracker is issued unitless product tokens that determine the weighting of tracked emission tokens.
E.g., total 1000 product tokens = 300 natural gas + 700 electricity => 30% of reported emissions attributed to gas sales, 70% electricity.
Note: physical product units are stored off-chain (e.g., postgres product table). A hash can be stored on-chain for independent verification by an auditor.
I think, for a utility, burning fuel to generate electricity would be Scope 1 emission, whereas supplying natural gas to customers would be Scope 3 emissions. So the numbers for electricity and natural gas should be separated into Scope 1 and Scope 3.
Could you help me check my math here?
I updated their numbers above based on totals for all their divisions.
For electricity, the total is 155,653 million KWH, which is 155.653 million MWH. The EPA eGrid USA average emissions is 0.4113 ton CO2e/MWH electricity, so that would be 155.653 million * 0.4113 = 64 million tCO2e. This however is too large for their reported Scope 1 of 5.05 MMT CO2e.
For natural gas, 969 billion cubic feet = 27.4 billion cubic meters, or 27,400 million cubic meters. According to the UK conversion factor, natural gas has 2.02 kgCO2e/cubic meter, and 2.02 kg = 0.00202 ton. So the natural gas emissions would be 27,400 * 0.00202 = 55.35 million tCO2e. This does come close to their Scope 3 emissions.
@sichen1234 the order of magnitude difference between reported and calculated scope 1 may be because of differences in generation tech, assuming they use a lot of low carbon infrastructure... Have to look at their power generation stats.
OK, I think this is the answer: According to Sempra's 10k, Sempra Texas is "comprised of our equity method investments in Oncor Holdings and Sharyland Holdings"
Also, "Because Oncor Holdings and Oncor are managed independently (i.e., ring-fenced), we account for our 100% ownership interest in Oncor Holdings as an equity method investment." Though in the Sustainability Report, it does say "We indirectly own 80.25% of Oncor Electric Delivery Company LLC (Oncor), and where possible we include 100% of its ESG data."
Oncor is only a distribution company. It does not generate electricity. It should not report Scope 1 emissions for the electricity delivered to customers. It's not clear if its suppliers' emissions should be Scope 2 or 3, but most likely it's not included at all.
With Sempra Texas numbers removed, the total electricity generated from SDGE and Sempra Infrastructure would be 17,214 million + 3,382 million KWH = 20,596 million KWH = 20.596 million MWH. Scope 1 emissions of 5.05 MMT CO2e would be 5.05/20.596 = 0.245 t CO2e/MWH which is in the range of California's grid emissions, where SDGE is located.
Based on today's call:
Thinking about this, I think we should make these modifications:
@sichen1234 thanks for the suggestions
I am taking these into consideration as I finalize the integration of the tracker with of the methane react-app.
@sichen1234 With regards to the above, several of these are already covered by the contract
- The CarbonTracker should have some additional fields:
- an amountUsed in addition to amount, to track the amount that has been used in emissions audits
This is achieved through the ProductDetails available attribute. amountUsed = amount issued - available
- product type to record what the tracker is for, ie "natural gas"
Can be set using ProductDetails name attribute
- tracker to record the address of the seller of the product (vs trackee being the recipient)
Each tracker is owned by the address that can sell its. ownerOf(uint256 tokenId) in ERC721 reveals this address. The question is who should the owner if an audited token be? Whoever is paying the auditors? The owner could be an investor or the producer... Note: trackee refers to the industry being audited. The buyer can become a new trackee to continue tracking addition processing of the products purchased.
- fromDate and thruDate to track the time period when the product was made
See from/thru date in TrackerDetails. This provides the aggregate period covering all the emissions and products covered by the tracker. This should account for the intersection of from thru-dates of all emissions associated with a tracker (min fromdate / max thrudate). A require statement could be added to tracker before it is marked released as audited.
I will consider extending from/thru dates to each product detail, similar to NET. This can be done when revising the CarbonTracker contract from ERC721 to ERC1155 to better handle product tokens...
With regards to the remaining comments. I am working through the following forms and services to initialize a carbon tracker, request emission audits and product tokens.
With regards to amountUsed, the owner transfers products to buyer until available UINT is zero. The tracker token id tells the buyer the embodied (indirect) NETs associated with the product purchased (still held by the tracker contract address).
These can be passed explicitly to the buyer, or kept within the tracker contract if the products are used as inputs into another tracker (a new industrial process).
The existing audit-request for natural gas activity can be used to issue new NET (direct emissions from combustion) either to the buyer's address or buyer's new tracker Id.
Hi @brioux:
Hello @brioux about this one: The issuing the request will both create the token and add it to the tracker contract address and link it to the tracker Id. We can include the trackerId in the metadata, but this is redundant as the tracker reference each NET token by design.
I think there are 2 different use cases:
@Sichen, first response to your questions from last week. -
Regarding the User vs. Producer product amounts. Their are two different entities for tracking products:
Can add a product type attribute to productDetails for clear specification. makes sense to add metadata and manifest fields, similar to how emission tokens are issued for additional public facing specs. from and thru dates may also be beneficial, currently only specified by the CarbonTrackerDetails struct.
Ok, for consistency CarbonTracker will always be released to trackee (the recipient) if it is requested by a Third Party.
@sichen1234 Regarding the second use case, emissions issued from a carbon tracker : consumers receive products issued to an audited carbon tracker. They tell the consumer exactly how many embodied emissions went into making the product. The embodied emissions could be released to the buyer, however
there is (a minor) issue in handling fractional embodied emissions
If the product leads to additional emissions (e.g. a fuel) it makes sense for the corresponding carbon tracker to be linked to the new emissions tokens.
There are two ways to do this.
In the second case custom instructions are needed to track emissions to the previous contract. I.e., standardize protocol for reading the carbon tracker address and product Ids from the NET metadata
Thinking about this, I think we should make these modifications:
We did it! See this Monday's peer programming call.
Currently we are calculating natural gas use emissions from standard emissions factors.
In this task, we'll use the CarbonTracker to calculate emissions from a natural gas utility. For example, Sempra Energy's 2021 Sustainability Report shows:
According to Sempra Energy's 2021 Statistical Report, they have several divisions:
So the total is 155,653 million KWH of electricity and 969 billion cubic feet of natural gas.
Could we use these statistics to create a CarbonTracker to transfer their emissions to a customer account based on usage.