как использовать функцию transverse_tagged_databases в brightway2 - PullRequest
0 голосов
/ 23 октября 2018

Я хотел бы знать, как использовать метод transverse_tagged_database в brightway2.Из документации мне не совсем понятно.Можем ли мы использовать, например, для агрегирования воздействий по isic-коду действий в модели системы продуктов?

1 Ответ

0 голосов
/ 14 ноября 2018

Короткий ответ - да, агрегирование воздействий по коду ISIC в вашей модели системы продуктов переднего плана - это именно то, что вы можете сделать, используя traverse_tagged_databases.

Функция traverse_tagged_databases использует тот факт, что выМожно добавить произвольные пары key:value к действиям в Brightway, чтобы позволить вам классифицировать ваши действия в модели переднего плана так, как вам нравится.

Например, скажем, что ваши действия выглядят так:

('example_database', 'code_for_bread'):{ 'name': 'Bread', 'code': 'code_for_bread', 'categories':[], 'exchanges':[...], 'location':'GLO' 'unit':'kg', 'database':'example_database', 'isic_code':'1071' 'isic_classifier':'Manufacture of bakery products' },

Вы можете указать traverse_tagged_databases, чтобы пройтись по вашей базе данных в поисках заданного ключа (тега)Например, 'isic_code' или 'isic_classifier' и агрегирование воздействия на основе этих тегов.

Допустим, вы моделировали бутерброд с сыром, в вашей модели могут быть следующие коды ISIC:

Сэндвич: 1079 (Производство прочих пищевых продуктов, не включенных в другие категории)

Хлеб: 1071 (Производство хлебобулочных изделий)

Сыр: 1050 (Производство молочных продуктов)

Масло сливочное:1050 (Производство молочных продуктов)

Вы можете использовать traverse_tagged_databases, чтобы увидеть общее влияние молочных продуктов (сыра и масла) на хлебобулочные изделия (хлеб).

Вы используете его аналогично функции LCA, указав функциональную единицу как dict и метод как tuple с дополнительным аргументом tag.Например:

fu = {('example_database', 'code_for_sandwich'):1} m = ('IPCC 2013', 'climate change', 'GWP 100a') result, tree = traverse_tagged_databases(fu, m, 'isic_classifier')

Функция возвращает два объекта (обозначенные result и tree в строке выше)

Для этого анализаваш result будет выглядеть примерно так:

defaultdict(int, {'Manufacture of other food products n.e.c.': 0, 'Manufacture of bakery products': 0.1875, 'Manufacture of dairy products': 0.55})

Это говорит о том, что молочные продукты в модели переднего плана имеют совокупное воздействие 0,55 кг CO2-экв, а хлебобулочные изделия имеютсуммарное воздействие составляет 0,1875 кг. СО2-экв.

С помощью небольшой последующей обработки вы можете превратить эти данные в круговые диаграммы, гистограммы с накоплением и т. д.

Вы также получите tree, который выглядит следующим образом:

[{'activity': 'Sandwich' (kg, GLO, []), 'amount': 1, 'tag': 'Manufacture of other food products n.e.c.', 'impact': 0, 'biosphere': [], 'technosphere': [{'activity': 'Bread' (kg, GLO, []), 'amount': 0.75, 'tag': 'Manufacture of bakery products', 'impact': 0, 'biosphere': [{'amount': 0.1875, 'impact': 0.1875, 'tag': 'Manufacture of bakery products'}], 'technosphere': []}, {'activity': 'Butter' (kg, GLO, []), 'amount': 0.05, 'tag': 'Manufacture of dairy products', 'impact': 0, 'biosphere': [{'amount': 0.05, 'impact': 0.05, 'tag': 'Manufacture of dairy products'}], 'technosphere': []}, {'activity': 'Cheese' (kg, GLO, []), 'amount': 0.25, 'tag': 'Manufacture of dairy products', 'impact': 0, 'biosphere': [{'amount': 0.5, 'impact': 0.5, 'tag': 'Manufacture of dairy products'}], 'technosphere': []}]}]

Поначалу это может показаться немного сложным, но по сути это набор вложенных словарей, начиная с корневого действия (функциональной единицы= Сэндвич), показывая techosphere обмены на другие виды деятельности и biosphere обмены на выбросы.

Дерево здесь выглядит следующим образом (с amount каждого продукта в скобках)

Bread +----(0.75 kg)----------+ | | | | Cheese +----(0.20 kg)----------+------(1.00 kg)--------> Sandwich | | | | Butter +----(0.05 kg)----------+

Опять же, немного пост-обработкиКроме того, вы можете превратить эти данные в такие вещи, как диаграммы Санки или в диаграмму дерева воздействий, которую вы получаете в SimaPro.

...