You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

技术咨询:在Brightway中查看门到门排放及特定活动环境清单的方法

在Brightway中查看门到门直接排放与活动环境清单的方法

一、查看工序的门到门直接排放

这里的“直接排放”指工序自身边界内产生的排放(不含上游供应链),操作步骤如下:

  1. 定位目标活动
    先加载目标数据库并找到对应的工序活动:
import brightway2 as bw

# 切换到你的项目
bw.projects.set_current("你的项目名称")
# 加载目标数据库
target_db = bw.Database("你的数据库名称")
# 通过名称搜索并获取目标工序(根据实际情况调整索引)
target_activity = target_db.search("你的工序名称")[0]
  1. 提取直接排放数据
    直接排放对应活动的生物流排放交换项,过滤并输出:
# 筛选出类型为排放的生物流交换
direct_emissions = [exc for exc in target_activity.biosphere() if exc['type'] == 'emission']

# 打印直接排放清单
for emission in direct_emissions:
    flow = emission.input
    print(f"排放项: {flow['name']}, 排放量: {emission['amount']} {flow['unit']}, 类别: {flow['categories']}")

二、查看特定活动的门到门环境清单

门到门环境清单包含该活动全生命周期(从原材料获取到产品交付)的所有资源消耗与排放,需通过LCA计算获取:

  1. 初始化LCA计算
# 定义功能单位(例如1单位的目标活动产出)
functional_unit = {target_activity: 1}
# 初始化LCA对象并执行生命周期清单(LCI)计算
lca = bw.LCA(functional_unit)
lca.lci()
  1. 提取全生命周期清单数据
# 整理所有非零的生物流清单项
full_inventory = []
for flow_id, amount in zip(lca.biosphere_flows, lca.inventory.sum(axis=1)):
    if amount != 0:
        flow = bw.get_activity(flow_id)
        full_inventory.append({
            "项名称": flow['name'],
            "类别": flow['categories'],
            "总量": round(amount, 4),
            "单位": flow['unit']
        })

# 输出清单
for item in full_inventory:
    print(f"{item['项名称']} ({item['类别']}): {item['总量']} {item['单位']}")

补充说明

  • 如果需要区分直接排放与上游供应链排放,可以将第一步提取的直接排放项与全生命周期清单对比,标记出属于直接排放的条目。
  • 确保目标数据库的活动交换项已完整录入,尤其是生物流排放项需正确设置type为emission。

内容的提问来源于stack exchange,提问作者SR_20341_FR

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.24 06:06:07