问题标签 [brightway]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
691 浏览

brightway - 根据现有的生态发明活动在 Brightway2 中创建新活动

我想从充当代理的数据库(在本例中为 ecoinvent)中创建一个“重新上下文化”现有数据集的活动。例如,在瑞士的热泵基础上在魁北克制造热泵,但改变了电力的来源。

我的问题与@MPa 在这个问题中提出的问题非常相似,但如果没有更多细节,我无法弄清楚如何去做。这就是我所做的:

1) 从我的 ecoinvent 3.3 数据库中找到我想用作代理的进程:

2)创建活动的副本

3) 改变位置

4) 擦除存储交换金额的原始流

5)添加新流量(在这种情况下,来自魁北克的电量相同)

这是我迷路的地方。我知道如何找到生成该流的进程('44389eae7d62fa9d4ea9ea2b9fc2f609'),但我不知道如何将其作为交换添加到我的“hp_qc”进程中。我想我还应该更改唯一标识符代码 (UUID),否则我的数据库中将有两个具有相同 UUID 的活动,这可能会出现问题。我还应该修改谱系矩阵的“地理代表性”分数,但我不确定 Brightway 2 在这一点上是否实际使用了这些分数。

[编辑],按照@MPa的建议,我做了以下事情:

我用一种常见的影响评估方法进行了测试:

两个分数是不同的,虽然我在瑞士热泵上得到了一个负分,这有点奇怪,但我想可能并且与重新情境化完全无关。有用!

0 投票
1 回答
133 浏览

brightway - 使用 Brightway 时,我是否应该删除与我已删除的活动相关的交易所?

这个问题与我之前提出的关于通过代理活动使用 Brightway 2 创建活动的问题有关。问题是:如果我决定删除我的代理活动,我应该修改交换表吗?

假设我决定在魁北克创建一个热泵,使用瑞士的热泵作为代理,但适应电力的来源。

但是,如果在此过程中我创建了一个包含错误的代理活动,或者由于其他原因我不再需要。我应该如何从包含错误的活动中“清理”数据库?hp_qc.delete() 就足够了吗?活动和交换存储在SQLite 数据库的不同表中。我想知道我是否用与不再存在的活动相关的交易所“污染”了交换表,这可能会在未来带来问题。

0 投票
1 回答
270 浏览

brightway - 使用 Brightway2 找到导致非方形技术领域矩阵的产品

作为一个预言,我有一个与之前“清理”数据库的问题有关的问题。我如何确定为什么我的技术圈不再是方形的?

我对我的数据库做了一些事情,如果我尝试做一个随机活动的 LCIA

我收到此警告消息:NonsquareTechnosphere:Technosphere 矩阵不是正方形:12384 个活动(列)和 12385 个产品(行)。使用 LeastSquaresLCA 来解决这个系统,或者修复输入数据。

我试图查找我是否有一个包含两个参考产品的数据集,以检查我是否遍历了数据库以检查“生产量”是否不是浮点数。但我没有发现任何“错误”

这种方法对于查找具有多个参考流的活动是否正确?否则,我怎样才能找到使我的矩阵不可逆的产品?

0 投票
1 回答
57 浏览

brightway - tech_array 和 bio_array 的顺序

背景:我ParameterVectorLCA在不同的 LCA 中使用过,这些 LCA 可能在不同的projects. 我已经存储了结果params。我想确保params它们的顺序相同。

我所知道的:
- 我知道这些参数数组的元素有两个引用inputs和的字段outputs
- 我知道activity_dictbio_dict可以告诉我们这些inputsoutputs引用的内容
- 我知道可以从一个项目重新排序supply arraysinventory_matrices通过使用各自activity_dict的和bio_dict

我不知道的是:
- 如果两个 LCA 的 myactivity_dictbio_dict相同,我是否保证 my 的顺序params相同?
- 如果我的activity_dictbio_dict不一样,我可以重新订购我的params吗?我的策略是:

  • 选择我的 LCA 之一作为“参考”
  • 对于其他 LCA,将和中的inputoutput数字更改为参考 LCA 的数字(使用和) tech_paramsbio_paramsactivity_dictbio_dict
  • tech_param为和中的每个参数的字符串表示赋予一个索引bio_param
  • 找到我想要重新排序的 LCAtech_param和LCA中参数的相应字符串表示形式的索引。bio_param
  • 使用重新索引重新排序。

这会做吗?有没有更简单的方法?

0 投票
2 回答
199 浏览

brightway - 更新brightway而不更改项目

在使用 brightway2 时,我意识到我的版本不是最新的,并尝试使用它来更新它,conda update brightway2但它不会这样做。我必须在这个新项目中设置一个新项目并更新 brightway2 才能运行最新版本。我的问题很简单:有没有一种无需创建新项目即可更新 brightway2 的方法?

0 投票
1 回答
151 浏览

brightway - 如何在 Brightway 中保存一种新的 LCIA 方法

我有以下格式的特征因素列表:

这是一个简短的摘录:

如何保存my_cfs到我的 Brightway Methods?

0 投票
1 回答
258 浏览

brightway - 在 Brightway 2 中创建新方法

这个问题与这里提出的问题非常相似。只是我不能使工作成为建议的解决方案(而且我没有添加评论的声誉)。

我想创建一种仅具有与化石燃料燃烧相关的 CO2、CH4 和 N2O 的全球变暖潜力的方法。

查看生物圈数据库,我创建了一个包含流的键和特征因子的元组列表:

接着:

(我不明白双 ** 的目的,或者我们是否可以将字典元数据中的键留空)

最后:

我一定是做错了什么,因为如果我尝试使用这种方法,我会得到一个断言错误,Brightway 找不到模型。

更新:我的代码中有一个错误,新方法工作得很好。

例如,如果我运行:

我得到了方法列表,包括我尝试创建的方法,我可以用它进行 LCA 计算。

(PS:我不太清楚我应该如何使用方法类的 validate() 方法..)

0 投票
1 回答
151 浏览

uncertainty - LCIA 不确定性的蒙特卡洛分析问题

我尝试在特征因子不确定的情况下进行蒙特卡洛分析。代码运行良好(没有错误),但每次迭代的结果始终相同。计算仅适用于 LCA 模拟。

这是代码:

样品 LCIA 方法的定义

简单活动的定义

蒙特卡洛代码

不确定性定义有问题吗?

感谢您的帮助!

0 投票
1 回答
99 浏览

brightway - 导出 Brightway 项目

我正在更换电脑,并想随身携带一些项目。

我知道项目文件夹/文件的位置 ( C:\Users\AwesomeUser\AppData\Local\pylca\Brightway3),因此知道将它们复制到哪里,但不确定如何将它们添加到projects.db

跨计算机移动项目的最佳实践是什么?

0 投票
1 回答
224 浏览

brightway - 影响世界和食谱 2016 在 Brightway

是否有人尝试在 Brightway实施影响评估方法Impact world+ refRecipe 2016 ref ?

Impact World+的特征因子可供下载(测试版)。该电子表格有助于在 Simapro 中实施,但我想如果在 Brightway2 和 Simapro 中对生物圈流的定义不同(是这种情况吗?),这可能会导致一些麻烦。我无法找到 2016 年食谱的表征因素。