GIS-LCA 智能体技能:生命周期评价建模、计算与分析
技能概述
本技能用于指导AI智能体完成GIS-LCA平台上的生命周期评价(LCA)全流程工作,包括:项目建模、过程构建、流与连接管理、清单计算(LCI)、影响评价(LCIA)、贡献率/敏感性/不确定性分析等。
本技能依赖 GIS-LCA 平台的 MCP 连接器提供工具调用能力。加载本技能后,必须先执行下方的「MCP 自动配置」流程,确保 MCP 连接器已正确配置并启用,然后才能进行 LCA 相关操作。
零、MCP 自动配置(加载技能后必须首先执行)
配置信息
GIS-LCA MCP 连接器配置如下:
{
"mcpServers": {
"gis-lca": {
"type": "sse",
"url": "https://lca.qibebt.ac.cn/lca/mcp",
"disabled": false
}
}
}
自动配置流程
加载本技能后,立即按以下步骤检查并配置 MCP(不要询问用户是否需要配置,直接执行):
Step 1 - 读取现有 MCP 配置文件:
读取 ~/.workbuddy/mcp.json 文件(即 C:\Users\<用户名>\.workbuddy\mcp.json)。如果文件不存在,则视为空配置,跳到 Step 3。
Step 2 - 检查是否已配置 gis-lca:
在读取到的 JSON 中检查 mcpServers 对象下是否已存在 "gis-lca" 键:
- 如果已存在且
disabled为false:MCP 已正确配置且已启用,无需操作,直接跳到「核心概念」章节开始 LCA 工作。告知用户:"GIS-LCA MCP 连接器已配置并启用,可以开始LCA工作了。" - 如果已存在但
disabled为true:将disabled字段修改为false,写回文件,然后按 Step 4 处理。 - 如果不存在:继续 Step 3。
Step 3 - 添加 gis-lca MCP 配置:
在 mcpServers 对象中添加 "gis-lca" 条目。注意保留原有的其他 MCP 配置,不要覆盖。完整写入后的文件格式示例:
{
"mcpServers": {
"其他已有的mcp": { ... },
"gis-lca": {
"type": "sse",
"url": "https://lca.qibebt.ac.cn/lca/mcp",
"disabled": false
}
}
}
使用 Write 工具将更新后的 JSON 写回 ~/.workbuddy/mcp.json。
Step 4 - 通知用户:
配置写入完成后,向用户说明:
GIS-LCA MCP 连接器已自动配置完成。新添加的 MCP 不会立即生效,需要手动启用:
- 打开 WorkBuddy 右上角的「连接器管理」页面
- 找到新增的
gis-lca连接器- 点击「信任(Trust)」按钮启用该连接器
- 启用后即可开始 LCA 工作
注意事项
- 不要覆盖用户已有的其他 MCP 配置:读取后只添加或修改
gis-lca条目,保留其余配置不变。 - JSON 格式正确:写入前确保 JSON 格式合法(无尾逗号、引号匹配等)。
- 不要运行 MCP 服务:只需写入配置文件,不需要启动服务进程。
- 配置完成后仍需用户信任:MCP 配置写入后不会自动激活,用户需在连接器管理页面点击「信任」才能启用。
一、核心概念
1.1 LCA数据模型层级
项目(ProductSystem)
└── 过程(Process)
├── 输入输出流(Exchange)
│ ├── 产品流(PRODUCT_FLOW) - 中间流/经济流
│ ├── 废弃物流(WASTE_FLOW) - 中间流/经济流
│ └── 基本流(ELEMENTARY_FLOW) - 环境流
├── 参数(Parameter) - 公式变量
└── 分配因子(AllocationFactor)
└── 连接(ProcessLink) - 过程间的物质/能量流转
1.2 关键术语
| 术语 | 说明 | | ----------------------- | -------------------------------------------- | | 项目(ProductSystem) | LCA评价的顶层容器,包含一组关联的过程和连接 | | 过程(Process) | 单元过程(UNIT_PROCESS)或系统过程(LCI_RESULT),是建模的基本单元 | | 流(Flow) | 物质/能量/废弃物的载体,分为产品流、基本流、废弃物流 | | Exchange | 过程的输入/输出条目,关联流和数量 | | 连接(ProcessLink) | 上游过程输出 → 下游过程输入的物质流转关系 | | 功能流(FunctionalFlow) | 过程的定量参考流(产品输出或废弃物输入) | | 评价方法(ImpactMethod) | 如IPCC 2013、ReCiPe等,包含多个影响类别(ImpactCategory) | | LCI | 清单分析结果,环境流的物质量 | | LCIA | 影响评价结果,将清单结果乘以特征化因子得到环境影响值 |
1.3 过程类型
UNIT_PROCESS:单元过程,用户自定义的底层过程LCI_RESULT:系统过程,来自数据库的聚合过程(如Ecoinvent)
1.4 流类型
ELEMENTARY_FLOW:基本流/环境流(如CO2排放、水资源消耗)PRODUCT_FLOW:产品流(中间流,如电力、钢材)WASTE_FLOW:废弃物流(中间流,如废渣、废水)
二、建模工作流
2.1 创建项目
触发场景:用户要求新建一个LCA评价项目
步骤:
- 询问用户项目名称(必填)
- 询问项目位置(可选,默认青岛)
- 询问项目类型(可选,默认normal;可选:normal/tanpancha/yueqing)
- 调用
createProject创建项目
createProject({
name: "项目名称",
description: "项目描述(可选)",
projectType: "normal",
locationName: "青岛市"
})
2.2 打开已有项目
触发场景:用户要查看或操作某个项目
步骤:
- 调用
searchProject或openProject按名称搜索并打开 - 打开后 session 中会记录
currentProjectId,后续操作自动关联该项目
2.3 查看项目详情
触发场景:用户想了解项目结构和内容
步骤:
- 调用
getProjectDetail获取项目基本信息、节点和连接 - 可选调用
getProcessTreeOfProject按标签分组查看过程树
2.4 创建过程
触发场景:用户要在项目中添加一个单元过程
前提:必须已打开项目(session中有currentProjectId)
步骤:
- 确定过程名称(必填)
- 确定标签tags(可选,用于分组)
- 确定位置(可选,默认青岛)
- 调用
createProcess创建过程
createProcess({
name: "炼钢过程",
tags: "生产",
locationName: "北京市"
})
2.5 查找并引用背景过程
触发场景:当某个过程无法获取实景数据时,需要引用背景数据库中的过程数据来补充。典型场景如:
- 生产手机时用到的电力,上游电厂数据可从背景数据库查询获取后引用
- 使用钢材作为原材料时,钢厂的生产数据可从Ecoinvent等背景数据库获取
- 运输过程中的物流数据,可引用背景数据库中的运输过程
引用背景过程后,该背景过程的输入输出流会自动带入当前过程,无需手动添加。
步骤:
- 调用
searchProcess搜索背景过程processType默认使用LCI_RESULT(系统过程)- 可通过
locationName筛选特定地区的过程,位置只支持英文,例如China,Shandong,US等 - 建议用中英文及同义词增强搜索(如同时搜索"electricity"和"电力")
- 从结果中选择最合适的过程(注意匹配地区、技术路线等)
- 调用
reference将背景过程引用到当前过程
reference({
id: "当前过程id",
referenceId: "背景过程id"
})
注意:引用背景过程后,该过程会变为系统过程(LCI_RESULT)类型,其输入输出由背景数据决定,用户仍可在此基础上进行调整。
2.6 为过程添加输入输出流
触发场景:用户要为过程添加物质/能量输入或环境排放
步骤:
Step 1 - 查找流:
- 调用
searchFlow或searchElementaryFlowResult搜索需要的流 - 产品流用
PRODUCT_FLOW,基本流用ELEMENTARY_FLOW,废弃物流用WASTE_FLOW - 优先使用系统自带的流,如果不存在,则调用
saveFlow或batchSaveFlow创建新的流
Step 2 - 获取流的基准单位:
- 调用
getFlowReferenceDtoById获取流的基准属性和单位 - 或调用
getUnitListByFlow获取流的所有可用单位
Step 3 - 创建Exchange: 按照以下参数创建单个Exchange:
createExchange({
processId: 过程id,
isInput: 0, // 0=输出, 1=输入
flowId: 流id,
amount: 1.0,
flowPropertyFactorId: 流属性转换因子id,
unitId: 单位id,
autoLink: 1 // 建议开启自动连接
})
或者调用createExchangeBatch批量创建输入输出。
Step 4(可选)- 查看结果:
- 调用
searchFlowDetailByProcess查看过程的输入输出流详情 - 调用
getBalanceInfo查看物质能量平衡信息
2.7 建立过程连接
触发场景:用户要连接两个过程的中间流(产品流或废弃物流)
连接约束规则(重要):
- 一个原材料只能有一家供应商:同一个产品输入流(isInput=1的PRODUCT_FLOW)只能连接一个上游输出,即一种原材料只能由一个过程供应
- 一个废弃物只能有一个处理过程:同一个废弃物输出流(isInput=0的WASTE_FLOW)只能连接一个下游处理过程,即一种废弃物只能交给一个过程处理
- 多产品输出需要分配:如果一个过程生产多个产品(即有多个PRODUCT_FLOW的输出),则需对该过程设置分配因子,明确各产品分摊的环境负担比例(详见5.2分配因子)
方式一 - 自动连接(推荐,适用于模型较简单时):
autoLink({ productSystemId: 项目id })
系统自动匹配过程间flowId一致的产品流/废弃物流并创建连接。自动连接会遵守上述约束规则。
方式二 - 手动创建连接(适用于需要精确控制连接关系的场景):
- 调用
getIntermediateFlows分别查看上下游过程的中间流 - 确定上游输出流和下游输入流
- 确认不会违反连接约束(同一原材料不重复连接供应商、同一废弃物不重复指定处理过程)
- 调用
createProcessLink创建连接
createProcessLink({
productSystemId: 项目id,
sourceProcessId: 上游过程id,
sourceExchangeId: 上游输出exchange id,
targetProcessId: 下游过程id,
targetExchangeId: 下游输入exchange id,
flowId: 流id
})
多产品过程的处理:如果一个过程有多个产品输出,在建立连接后,需调用 calculateAllocation 计算分配因子,或通过 getAllocationFactors 查看并调整分配比例。
2.8 完整建模流程总结
典型的LCA建模流程如下:
1. createProject → 创建项目
2. createProcess → 根据项目需求,创建一个或多个单元过程,这些过程代表了整个LCA模型中各个主要的工序流程
3. 对于某些缺乏实景数据的过程:
searchProcess + reference → 从背景数据库搜索并引用合适的背景过程
(例如:生产手机用到的电力,可引用背景数据库中电厂数据)
4. 为每个过程添加输入输出流:
searchFlow / searchElementaryFlowResult → 优先从数据库中查找已有的流
saveFlow / batchSaveFlow → 仅当数据库中无合适流时才创建新流
getFlowReferenceDtoById → 获取流的基准属性和单位
createExchange → 为过程创建输入输出(注意:产品流/废弃物流为中间流,基本流为环境流)
5. 建立过程间连接:
autoLink → 模型较简单时使用自动连接(系统会自动将上下游中flowId一致的输出和输入关联)
createProcessLink → 模型较复杂时手动建立精确的连接关系
⚠️ 连接约束:一个原材料只能有一家供应商;一个废弃物只能有一个处理过程
6. 处理多产品过程(如有):
calculateAllocation → 计算分配因子
(分配的含义:如共排放CO2 100kg,需明确a产品分摊多少、b产品分摊多少)
7. getProjectDetail → 检查项目完整性(确认无孤立过程、无未连接的中间流)
8. 至此建模完成,可进入计算分析阶段
三、计算工作流
3.1 选择评价方法
步骤:
- 调用
searchImpactMethod查询可用评价方法(优先使用IPCC 2021) - 调用
getImpactCategories查看评价方法包含的影响类型 - 常用方法ID参考:IPCC 2021 →
3706615340222912096
3.2 创建计算任务
触发场景:建模完成后,用户要进行LCA计算
步骤:
- 确定评价方法(methodId)
- 确定最终需求(finalDemand),即功能单位;需要通过
getProcessTreeOfProject选择当前项目中要计算的过程,然后调用getFunctionalFlows选择该过程的某个功能流(生产的产品) - 确定计算类型(calculateType):
LCI- 清单分析LCIA- 影响评价CONTRIBUTION- 贡献率分析SENSITIVITY- 敏感性分析- 多个类型用逗号分割
- 调用
createCalculationTask创建任务
createCalculationTask({
productSystemId: 项目id,
methodId: 3706615340222912096,
calculateType: "LCI,LCIA,CONTRIBUTION,SENSITIVITY",
finalDemand: [{
exchangeId: 输入输出id,
processId: 过程id,
flowPropertyId: 流属性id,
flowId: 流id,
amount: 1.0,
unitId: 单位id
}]
})
四、分析工作流
4.1 清单分析(LCI)
查看清单结果:
getLci({
taskId: 任务id,
pageNo: 1,
pageSize: 20,
name: "流名称(可选,用于查询)",
type: 0 // 0=输入, 1=输出, 2=总需求
})
查看清单子列表(某流的详细组成):
getLciSubList({
taskId: 任务id,
flowId: 流id
})
4.2 影响评价(LCIA)
影响类别优先选择GWP100或类似的,主要用于评价二氧化碳排放量。
可以通过getImpactCategory获取当前任务的所有影响类别,然后根据名称获取最合适的类别。
查看影响评估总览:
getLcia({ taskId: 任务id })
查看影响类型列表:
getImpactCategory({ taskId: 任务id })
查看LCIA详细子列表(某影响类别的过程贡献):
getLciaSubList({
taskId: 任务id,
categoryId: 影响类别id,
processId: 过程id(可选,不填/null为所有过程)
})
标准化和加权分析:
normalizeAndWeight({ taskId: 任务id })
4.3 贡献率分析
按过程查看贡献率排名:
getLciaContributionByProcess({
taskId: 任务id,
categoryId: 影响类别id,
limit: 10
})
按流查看贡献率排名:
getLciaContributionByFlow({
taskId: 任务id,
categoryId: 影响类别id,
limit: 10
})
分组查看贡献率(阶段贡献分析):
getLciaGroupResult({
taskId: 任务id,
categoryId: 影响类别id(可选),
type: "tag" // null/tag=普通分组, cbam, ghg
})
贡献树(层级结构):
getImpactContributionTree({
taskId: 任务id,
impactCategoryId: 影响类别id,
minPercent: 0.001,
maxLevel: 20
})
4.4 敏感性分析
基于LCIA影响类别的敏感性(常用敏感性分析方法,分析项目对某个环境影响的敏感性):
getSensitivityOfLcia({
taskId: 任务id,
categoryId: 影响类别id,
limit: 10
})
4.5 不确定性分析(蒙特卡洛)
基于环境影响的不确定性:
getUncertaintyOfImpact({
taskId: 任务id,
categoryId: 影响类别id
})
注意:不确定性分析需在创建计算任务时指定 UNCERTAINTY 类型并设置 monteCarloNumber(蒙特卡洛次数,不得超过1000)。
4.6 桑基图分析
环境影响桑基图(影响在各过程中的流转):
getImpactSankey({
taskId: 任务id,
impactCategoryId: 影响类别id,
minPercent: 0.001(即0.1%),
maxLevel: 20
})
4.7 对比分析
过程对比:
compareProcess({
processIds: ["过程id1", "过程id2"],
methodId: 评价方法id
})
项目对比:
compareProject({
productSystemIds: ["项目id1", "项目id2"],
methodId: 评价方法id
})
4.8 供应链追溯
查看过程上游:
getUpstream({
processId: 过程id
})
五、辅助工具
5.1 参数管理(不常用)
| 操作 | 工具 |
| ---- | ----------------- |
| 查询参数 | searchParameter |
| 新建参数 | createParameter |
| 更新参数 | updateParameter |
| 删除参数 | deleteParameter |
参数可用于Exchange的amountFormula中,实现动态计算。
5.2 分配因子
| 操作 | 工具 |
| -------- | ---------------------- |
| 查询分配因子 | getAllocationFactors |
| 计算默认分配因子 | calculateAllocation |
分配类型:PHYSICAL(物理)、ECONOMIC(经济)、CAUSAL(因果)
5.3 类别体系
getCategoryTree({
modelType: "FLOW", // FLOW/PROCESS/FLOW_PROPERTY/UNIT_GROUP
subType: "ELEMENTARY_FLOW" // 可选
})
5.4 数据质量
| 操作 | 工具 |
| -------- | ------------------- |
| 查询数据质量系统 | getDqSystemList |
| 查看数据质量详情 | getDqSystemDetail |
5.5 计算历史
| 操作 | 工具 |
| ------ | --------------------------- |
| 查询计算历史 | getCalculationTaskHistory |
| 查看任务详情 | getCalculationTaskDetail |
| 删除计算任务 | deleteCalculationTask |
六、典型场景工作流
场景1:从零开始建模并计算钢材碳足迹
Step 1: createProject({ name: "钢材碳足迹评价", locationName: "青岛市" })
Step 2: createProcess({ name: "钢材生产", tags: "核心" })
Step 3: searchProcess({ name: "iron steel production", processType: "LCI_RESULT" })
→ 选择合适的背景过程
Step 4: reference({ id: "钢材生产过程id", referenceId: "背景过程id" })
Step 5: searchFlow({ name: "二氧化碳", flowType: "ELEMENTARY_FLOW" })
→ 找到CO2排放流
Step 6: createExchange({ processId, isInput: 1, flowId, amount: 2.5, ... })
→ 添加CO2排放输出
Step 7: autoLink({ productSystemId })
Step 8: searchImpactMethod({ name: "IPCC" })
→ 确认IPCC 2013方法
Step 9: createCalculationTask({
productSystemId, methodId: 44645931,
calculateType: "LCI,LCIA,CONTRIBUTION",
finalDemand: [{ processId, flowId, amount: 1.0, unitId }]
})
Step 10: getTaskStatus() → 等待完成
Step 11: getLcia({ taskId }) → 查看温室效应影响值
Step 12: getLciaContributionByProcess({ taskId, categoryId, limit: 5 })
→ 查看贡献最大的过程
场景2:分析已有项目的环境影响
Step 1: searchProject({ name: "项目名" }) 或 openProject({ name: "项目名" })
Step 2: getProjectDetail({ mode: 2 }) → 查看项目结构
Step 3: getProcessTreeOfProject({ type: "tags" }) → 按标签查看过程
Step 4: createCalculationTask({ ... calculateType: "LCI,LCIA,CONTRIBUTION,SENSITIVITY" })
Step 5: getImpactCategory({ taskId }) → 获取影响类别列表
Step 6: getLcia({ taskId }) → 查看各影响类别总结果
Step 7: getLciaContributionByProcess({ taskId, categoryId, limit: 10 })
→ 分析主要贡献源
Step 8: getSensitivityOfLcia({ taskId, categoryId })
→ 敏感性分析,找出关键过程
Step 9: getImpactSankey({ taskId, impactCategoryId })
→ 桑基图展示影响流转
场景3:对比两个方案的环境表现
Step 1: 确保两个项目已建模完成
Step 2: 分别对两个项目创建计算任务
Step 3: compareProject({
productSystemIds: ["项目1id", "项目2id"],
methodId: 44645931
})
Step 4: 解读对比结果,给出建议
场景4:不确定性分析
Step 1: 建模时为Exchange设置不确定度分布(distributionType, parameter1/2/3)
Step 2: createCalculationTask({
calculateType: "LCI,LCIA,UNCERTAINTY",
monteCarloNumber: 1000
})
Step 3: getUncertainty({ taskId, flowIdList: "关键流id" })
→ 查看流的蒙特卡洛结果
Step 4: getUncertaintyOfImpact({ taskId, categoryId })
→ 查看影响类别的不确定性分布
七、智能体行为规范
7.1 交互规范
- 创建项目时:先提醒用户输入名称,再询问位置(可选),类型默认normal
- 创建过程时:需要先进入项目,否则提示"请先进入项目"
- 搜索过程时:应将用户关键字翻译为中英文及同义词增强搜索
- 搜索结果处理:对搜索结果进行筛选后再呈现,避免直接堆砌原始数据
- 过程ID处理:创建过程后不需要将过程id告诉用户,但内部需要记录以供后续操作
- 计算任务创建后:应主动查询任务状态,完成后再展示结果
7.2 数据校验
- 创建Exchange前,必须通过
getFlowReferenceDtoById或getUnitListByFlow获取正确的流属性和单位 - 建立连接前,建议先通过
getIntermediateFlows确认上下游过程的中间流 - 计算前,建议通过
getProjectDetail检查项目完整性(是否有孤立过程、未连接的流等) - 功能流(定量参考流)必须正确设置,它是计算的功能单位基础
7.3 错误处理
| 错误场景 | 处理方式 |
| ----------------- | ------------------------------------------------- |
| MCP 连接器未配置或未信任 | 重新执行「MCP 自动配置」流程,并提醒用户在连接器管理页面点击「信任」 |
| MCP 工具调用失败/超时 | 提示用户检查网络连接,确认 MCP 服务地址 https://lca.qibebt.ac.cn/lca/mcp 可达 |
| token为空 | 提示用户需要登录 |
| 未进入项目 | 提示用户先打开或创建项目 |
| 搜索无结果 | 建议换用同义词或英文搜索 |
| 过程不属于当前项目 | 提示用户检查过程归属 |
| 计算任务失败 | 检查项目建模完整性,确认功能流和连接是否正确 |
| 自动连接正在执行 | 提示用户稍后重试 |
7.4 结果解读指导
智能体在返回分析结果时,应:
- LCI结果:重点关注数量级最大的前5个环境流,说明其物理意义
- LCIA结果:重点解读GWP100(全球变暖潜势)等关键指标,给出数值和单位
- 贡献率分析:指出贡献最大的过程/流及其占比
- 敏感性分析:指出最敏感的过程,说明改变该过程参数对结果的潜在影响
- 不确定性分析:给出置信区间,说明结果的可信程度
- 桑基图:描述主要的影响流转路径
八、工具速查表
项目管理
| 工具 | 用途 |
| ------------------------ | -------- |
| createProject | 创建项目 |
| openProject | 打开项目 |
| searchProject | 搜索项目 |
| searchProjectPage | 分页搜索项目 |
| getProjectDetail | 项目详情 |
| updateProject | 更新项目信息 |
| deleteProject | 删除项目 |
| copyProject | 复制项目 |
| getProductSystemByUser | 获取用户项目列表 |
过程管理
| 工具 | 用途 |
| -------------------------- | --------- |
| createProcess | 创建过程 |
| searchProcess | 搜索过程 |
| searchProcessPage | 分页搜索过程 |
| getDetail | 过程详情 |
| getProcessBrief | 过程简况 |
| updateProcessGeneralInfo | 更新过程信息 |
| deleteProcess | 删除过程 |
| batchDeleteProcess | 批量删除过程 |
| reference | 引用背景过程 |
| commitProcess | 提交过程到个人空间 |
| getAllProcessOfProject | 获取项目所有过程 |
| getProcessTags | 获取过程标签 |
| getProcessTreeOfProject | 获取过程树 |
| getUpstream | 获取上游过程 |
流与Exchange管理
| 工具 | 用途 |
| ---------------------------- | ----------- |
| searchFlow | 搜索流 |
| searchElementaryFlowResult | 分页搜索流 |
| getFlowDetail | 流详情 |
| getFlowReferenceDtoById | 流的基准属性和单位 |
| getUnitListByFlow | 流的可用单位列表 |
| saveFlow | 新增自定义流 |
| update | 修改自定义流 |
| deleteFlow | 删除自定义流 |
| batchSaveFlow | 批量新增流 |
| createExchange | 创建输入输出流 |
| updateExchange | 修改输入输出流 |
| deleteExchange | 删除输入输出流 |
| searchFlowDetailByProcess | 过程的输入输出流详情 |
| getIntermediateFlows | 过程的中间流 |
| getFunctionalFlows | 过程的功能流 |
| getBalanceInfo | 物质能量平衡信息 |
| getExchangeByFlow | 按流查Exchange |
| clearProcessExchanges | 清空过程流 |
连接管理
| 工具 | 用途 |
| ------------------- | ------- |
| createProcessLink | 创建连接 |
| updateLink | 修改连接 |
| deleteLink | 删除连接 |
| updateLinkEdge | 修改连接边信息 |
| autoLink | 自动连接 |
| getLinksOfProcess | 获取过程连接 |
| getLinkDetail | 连接详情 |
计算与分析
| 工具 | 用途 |
| ------------------------------ | ----------- |
| createCalculationTask | 创建计算任务 |
| calculateProcess | 单过程快速计算 |
| getTaskStatus | 查询任务状态 |
| getCalculationTaskDetail | 任务详情 |
| getCalculationTaskHistory | 计算历史 |
| deleteCalculationTask | 删除任务 |
| getLci | 清单分析结果 |
| getLciSubList | 清单子列表 |
| getEnvFlowList | 环境流列表 |
| getLcia | 影响评估总览 |
| getLciaSubList | LCIA详细子列表 |
| getLciaGroupResult | 分组LCIA结果 |
| getImpactCategory | 影响类型列表 |
| normalizeAndWeight | 标准化加权 |
| getLciaContributionByProcess | 过程贡献率 |
| getLciaContributionByFlow | 流贡献率 |
| getImpactContributionTree | 贡献树 |
| getSensitivity | 敏感性分析(基础流) |
| getSensitivityOfLcia | 敏感性分析(LCIA) |
| getUncertainty | 不确定性分析(流) |
| getUncertaintyOfImpact | 不确定性分析(影响) |
| getImpactSankey | 环境影响桑基图 |
| getInventorySankey | 清单桑基图 |
| compareProcess | 过程对比 |
| compareProject | 项目对比 |
评价方法
| 工具 | 用途 |
| ---------------------------- | ------- |
| searchImpactMethod | 搜索评价方法 |
| getImpactCategories | 方法的影响类型 |
| getCharacterizationFactors | 特征化因子 |
辅助工具
| 工具 | 用途 |
| ------------------------ | -------- |
| searchParameter | 查询参数 |
| createParameter | 新建参数 |
| updateParameter | 更新参数 |
| deleteParameter | 删除参数 |
| getAllocationFactors | 查询分配因子 |
| calculateAllocation | 计算默认分配因子 |
| getCategoryTree | 查询类别树 |
| getAllFlowPropertyList | 流属性列表 |
| getDqSystemList | 数据质量系统列表 |
| getDqSystemDetail | 数据质量详情 |
九、计算原理说明
9.1 矩阵计算框架
LCA计算基于以下矩阵方程:
- 技术矩阵:A · s = f
- 环境矩阵:B · s = g
其中:
- A = 技术矩阵(过程×产品)
- B = 环境矩阵(环境流×产品)
- s = 缩放因子向量
- f = 需求向量(功能单位)
- g = 清单结果向量
解得:
- s = A⁻¹ · f
- g = B · A⁻¹ · f
- M = B · A⁻¹(强度矩阵)
9.2 LCIA计算
环境影响 = Q · g = Q · M · f
其中 Q 为特征化因子矩阵。
9.3 分配方法
多功能过程的输入输出流需进行分配:
- 物理分配(PHYSICAL):按产品质量比
- 经济分配(ECONOMIC):按产品经济价值比
- 因果分配(CAUSAL):按物理因果关系
十、注意事项
- token必传:所有需要身份验证的工具都必须传入token参数
- 项目上下文:很多操作依赖session中的
currentProjectId,需先打开项目 - 流属性匹配:创建Exchange时flowPropertyFactorId和unitId必须与流的属性匹配
- 自动连接:建议创建Exchange时设置
autoLink=1,系统会自动匹配并创建连接,但是并不一定是你所需要的连接 - 计算类型:不确定性分析需在计算任务中包含
UNCERTAINTY类型,并设置蒙特卡洛次数;但是耗费资源多时间长,非必须不用 - 评价方法选择:碳足迹评价通常使用IPCC 2021 GWP 100a;综合评价可使用ReCiPe
- 过程引用:引用背景过程时,背景过程的输入输出流会自动带入当前过程
- 位置信息:过程的位置会参与GIS分析和本地化率计算,建议填写准确位置
微信扫一扫