forked from s_ranjbar/city_retrofit
Base implementation for the fuel life cicle analisis
This commit is contained in:
parent
b87cfea509
commit
9837bb8427
|
@ -2,7 +2,6 @@
|
|||
City module
|
||||
SPDX - License - Identifier: LGPL - 3.0 - or -later
|
||||
Copyright © 2020 Project Author Guille Gutierrez guillermo.gutierrezmorote@concordia.ca
|
||||
Contributor Peter Yefi peteryefi@gmail.com
|
||||
"""
|
||||
from __future__ import annotations
|
||||
import sys
|
||||
|
@ -19,361 +18,372 @@ from city_model_structure.city_objects_cluster import CityObjectsCluster
|
|||
from city_model_structure.buildings_cluster import BuildingsCluster
|
||||
from city_model_structure.parts_consisting_building import PartsConsistingBuilding
|
||||
from city_model_structure.subway_entrance import SubwayEntrance
|
||||
from city_model_structure.fuel import Fuel
|
||||
from helpers.geometry_helper import GeometryHelper
|
||||
from helpers.location import Location
|
||||
from city_model_structure.energy_system import EnergySystem
|
||||
|
||||
|
||||
class City:
|
||||
"""
|
||||
"""
|
||||
City class
|
||||
"""
|
||||
|
||||
def __init__(self, lower_corner, upper_corner, srs_name):
|
||||
self._name = None
|
||||
self._lower_corner = lower_corner
|
||||
self._upper_corner = upper_corner
|
||||
self._buildings = None
|
||||
self._subway_entrances = None
|
||||
self._srs_name = srs_name
|
||||
self._geometry = GeometryHelper()
|
||||
# todo: right now extracted at city level, in the future should be extracted also at building level if exist
|
||||
self._location = None
|
||||
self._country_code = None
|
||||
self._climate_reference_city = None
|
||||
self._climate_file = None
|
||||
self._latitude = None
|
||||
self._longitude = None
|
||||
self._time_zone = None
|
||||
self._buildings_clusters = None
|
||||
self._parts_consisting_buildings = None
|
||||
self._city_objects_clusters = None
|
||||
self._city_objects = None
|
||||
self._energy_systems = None
|
||||
def __init__(self, lower_corner, upper_corner, srs_name):
|
||||
self._name = None
|
||||
self._lower_corner = lower_corner
|
||||
self._upper_corner = upper_corner
|
||||
self._buildings = None
|
||||
self._subway_entrances = None
|
||||
self._srs_name = srs_name
|
||||
self._geometry = GeometryHelper()
|
||||
# todo: right now extracted at city level, in the future should be extracted also at building level if exist
|
||||
self._location = None
|
||||
self._country_code = None
|
||||
self._climate_reference_city = None
|
||||
self._climate_file = None
|
||||
self._latitude = None
|
||||
self._longitude = None
|
||||
self._time_zone = None
|
||||
self._buildings_clusters = None
|
||||
self._parts_consisting_buildings = None
|
||||
self._city_objects_clusters = None
|
||||
self._city_objects = None
|
||||
self._energy_systems = None
|
||||
self._fuels = None
|
||||
|
||||
def _get_location(self) -> Location:
|
||||
if self._location is None:
|
||||
gps = pyproj.CRS('EPSG:4326') # LatLon with WGS84 datum used by GPS units and Google Earth
|
||||
try:
|
||||
input_reference = pyproj.CRS(self.srs_name) # Projected coordinate system from input data
|
||||
except pyproj.exceptions.CRSError:
|
||||
sys.stderr.write('Invalid projection reference system, please check the input data. '
|
||||
'(e.g. in CityGML files: srs_name)\n')
|
||||
sys.exit()
|
||||
transformer = Transformer.from_crs(input_reference, gps)
|
||||
coordinates = transformer.transform(self.lower_corner[0], self.lower_corner[1])
|
||||
self._location = GeometryHelper.get_location(coordinates[0], coordinates[1])
|
||||
return self._location
|
||||
@property
|
||||
def fuels(self) -> [Fuel]:
|
||||
return self._fuels
|
||||
|
||||
@property
|
||||
def country_code(self):
|
||||
"""
|
||||
@fuels.setter
|
||||
def fuels(self, value):
|
||||
self._fuels = value
|
||||
|
||||
|
||||
def _get_location(self) -> Location:
|
||||
if self._location is None:
|
||||
gps = pyproj.CRS('EPSG:4326') # LatLon with WGS84 datum used by GPS units and Google Earth
|
||||
try:
|
||||
input_reference = pyproj.CRS(self.srs_name) # Projected coordinate system from input data
|
||||
except pyproj.exceptions.CRSError:
|
||||
sys.stderr.write('Invalid projection reference system, please check the input data. '
|
||||
'(e.g. in CityGML files: srs_name)\n')
|
||||
sys.exit()
|
||||
transformer = Transformer.from_crs(input_reference, gps)
|
||||
coordinates = transformer.transform(self.lower_corner[0], self.lower_corner[1])
|
||||
self._location = GeometryHelper.get_location(coordinates[0], coordinates[1])
|
||||
return self._location
|
||||
|
||||
@property
|
||||
def country_code(self):
|
||||
"""
|
||||
Get city country code
|
||||
:return: str
|
||||
"""
|
||||
return self._get_location().country
|
||||
return self._get_location().country
|
||||
|
||||
@property
|
||||
def name(self):
|
||||
"""
|
||||
@property
|
||||
def name(self):
|
||||
"""
|
||||
Get city name
|
||||
:return: str
|
||||
"""
|
||||
return self._get_location().city
|
||||
return self._get_location().city
|
||||
|
||||
@property
|
||||
def climate_reference_city(self) -> Union[None, str]:
|
||||
"""
|
||||
@property
|
||||
def climate_reference_city(self) -> Union[None, str]:
|
||||
"""
|
||||
Get the name for the climatic information reference city
|
||||
:return: None or str
|
||||
"""
|
||||
return self._climate_reference_city
|
||||
return self._climate_reference_city
|
||||
|
||||
@climate_reference_city.setter
|
||||
def climate_reference_city(self, value):
|
||||
"""
|
||||
@climate_reference_city.setter
|
||||
def climate_reference_city(self, value):
|
||||
"""
|
||||
Set the name for the climatic information reference city
|
||||
:param value: str
|
||||
"""
|
||||
if value is not None:
|
||||
self._climate_reference_city = str(value)
|
||||
if value is not None:
|
||||
self._climate_reference_city = str(value)
|
||||
|
||||
@property
|
||||
def climate_file(self) -> Union[None, Path]:
|
||||
"""
|
||||
@property
|
||||
def climate_file(self) -> Union[None, Path]:
|
||||
"""
|
||||
Get the climate file full path
|
||||
:return: None or Path
|
||||
"""
|
||||
return self._climate_file
|
||||
return self._climate_file
|
||||
|
||||
@climate_file.setter
|
||||
def climate_file(self, value):
|
||||
"""
|
||||
@climate_file.setter
|
||||
def climate_file(self, value):
|
||||
"""
|
||||
Set the climate file full path
|
||||
:param value: Path
|
||||
"""
|
||||
if value is not None:
|
||||
self._climate_file = Path(value)
|
||||
if value is not None:
|
||||
self._climate_file = Path(value)
|
||||
|
||||
@property
|
||||
def city_objects(self) -> Union[List[CityObject], None]:
|
||||
"""
|
||||
@property
|
||||
def city_objects(self) -> Union[List[CityObject], None]:
|
||||
"""
|
||||
Get the city objects belonging to the city
|
||||
:return: None or [CityObject]
|
||||
"""
|
||||
if self._city_objects is None:
|
||||
if self.city_objects_clusters is None:
|
||||
self._city_objects = []
|
||||
else:
|
||||
self._city_objects = self.city_objects_clusters
|
||||
if self.buildings is not None:
|
||||
for building in self.buildings:
|
||||
self._city_objects.append(building)
|
||||
if self.subway_entrances is not None:
|
||||
for subway_entrance in self.subway_entrances:
|
||||
self._city_objects.append(subway_entrance)
|
||||
if self.energy_systems is not None:
|
||||
for energy_system in self.energy_systems:
|
||||
self._city_objects.append(energy_system)
|
||||
return self._city_objects
|
||||
if self._city_objects is None:
|
||||
if self.city_objects_clusters is None:
|
||||
self._city_objects = []
|
||||
else:
|
||||
self._city_objects = self.city_objects_clusters
|
||||
if self.buildings is not None:
|
||||
for building in self.buildings:
|
||||
self._city_objects.append(building)
|
||||
if self.subway_entrances is not None:
|
||||
for subway_entrance in self.subway_entrances:
|
||||
self._city_objects.append(subway_entrance)
|
||||
if self.energy_systems is not None:
|
||||
for energy_system in self.energy_systems:
|
||||
self._city_objects.append(energy_system)
|
||||
return self._city_objects
|
||||
|
||||
@property
|
||||
def buildings(self) -> Union[List[Building], None]:
|
||||
"""
|
||||
@property
|
||||
def buildings(self) -> Union[List[Building], None]:
|
||||
"""
|
||||
Get the buildings belonging to the city
|
||||
:return: None or [Building]
|
||||
"""
|
||||
return self._buildings
|
||||
return self._buildings
|
||||
|
||||
@property
|
||||
def subway_entrances(self) -> Union[List[SubwayEntrance], None]:
|
||||
"""
|
||||
@property
|
||||
def subway_entrances(self) -> Union[List[SubwayEntrance], None]:
|
||||
"""
|
||||
Get the subway entrances belonging to the city
|
||||
:return: a list of subway entrances objects or none
|
||||
"""
|
||||
return self._subway_entrances
|
||||
return self._subway_entrances
|
||||
|
||||
@property
|
||||
def lower_corner(self) -> List[float]:
|
||||
"""
|
||||
@property
|
||||
def lower_corner(self) -> List[float]:
|
||||
"""
|
||||
Get city lower corner
|
||||
:return: [x,y,z]
|
||||
"""
|
||||
return self._lower_corner
|
||||
return self._lower_corner
|
||||
|
||||
@property
|
||||
def upper_corner(self) -> List[float]:
|
||||
"""
|
||||
@property
|
||||
def upper_corner(self) -> List[float]:
|
||||
"""
|
||||
Get city upper corner
|
||||
:return: [x,y,z]
|
||||
"""
|
||||
return self._upper_corner
|
||||
return self._upper_corner
|
||||
|
||||
def city_object(self, name) -> Union[CityObject, None]:
|
||||
"""
|
||||
def city_object(self, name) -> Union[CityObject, None]:
|
||||
"""
|
||||
Retrieve the city CityObject with the given name
|
||||
:param name:str
|
||||
:return: None or CityObject
|
||||
"""
|
||||
for city_object in self.buildings:
|
||||
if city_object.name == name:
|
||||
return city_object
|
||||
return None
|
||||
for city_object in self.buildings:
|
||||
if city_object.name == name:
|
||||
return city_object
|
||||
return None
|
||||
|
||||
def add_city_object(self, new_city_object):
|
||||
"""
|
||||
def add_city_object(self, new_city_object):
|
||||
"""
|
||||
Add a CityObject to the city
|
||||
:param new_city_object:CityObject
|
||||
:return: None or not implemented error
|
||||
"""
|
||||
if new_city_object.type == 'building':
|
||||
if self._buildings is None:
|
||||
self._buildings = []
|
||||
self._buildings.append(new_city_object)
|
||||
elif new_city_object.type == 'subway_entrance':
|
||||
if self._subway_entrances is None:
|
||||
self._subway_entrances = []
|
||||
self._subway_entrances.append(new_city_object)
|
||||
elif new_city_object.type == 'energy_system':
|
||||
if self._energy_systems is None:
|
||||
self._energy_systems = []
|
||||
self._energy_systems.append(new_city_object)
|
||||
else:
|
||||
raise NotImplementedError(new_city_object.type)
|
||||
if new_city_object.type == 'building':
|
||||
if self._buildings is None:
|
||||
self._buildings = []
|
||||
self._buildings.append(new_city_object)
|
||||
elif new_city_object.type == 'subway_entrance':
|
||||
if self._subway_entrances is None:
|
||||
self._subway_entrances = []
|
||||
self._subway_entrances.append(new_city_object)
|
||||
elif new_city_object.type == 'energy_system':
|
||||
if self._energy_systems is None:
|
||||
self._energy_systems = []
|
||||
self._energy_systems.append(new_city_object)
|
||||
else:
|
||||
raise NotImplementedError(new_city_object.type)
|
||||
|
||||
def remove_city_object(self, city_object):
|
||||
"""
|
||||
def remove_city_object(self, city_object):
|
||||
"""
|
||||
Remove a CityObject from the city
|
||||
:param city_object:CityObject
|
||||
:return: None
|
||||
"""
|
||||
if city_object.type != 'building':
|
||||
raise NotImplementedError(city_object.type)
|
||||
if self._buildings is None or self._buildings == []:
|
||||
sys.stderr.write('Warning: impossible to remove city_object, the city is empty\n')
|
||||
else:
|
||||
if city_object in self._buildings:
|
||||
self._buildings.remove(city_object)
|
||||
if city_object.type != 'building':
|
||||
raise NotImplementedError(city_object.type)
|
||||
if self._buildings is None or self._buildings == []:
|
||||
sys.stderr.write('Warning: impossible to remove city_object, the city is empty\n')
|
||||
else:
|
||||
if city_object in self._buildings:
|
||||
self._buildings.remove(city_object)
|
||||
|
||||
@property
|
||||
def srs_name(self) -> Union[None, str]:
|
||||
"""
|
||||
@property
|
||||
def srs_name(self) -> Union[None, str]:
|
||||
"""
|
||||
Get city srs name
|
||||
:return: None or str
|
||||
"""
|
||||
return self._srs_name
|
||||
return self._srs_name
|
||||
|
||||
@name.setter
|
||||
def name(self, value):
|
||||
"""
|
||||
@name.setter
|
||||
def name(self, value):
|
||||
"""
|
||||
Set city name
|
||||
:param value:str
|
||||
"""
|
||||
if value is not None:
|
||||
self._name = str(value)
|
||||
if value is not None:
|
||||
self._name = str(value)
|
||||
|
||||
@staticmethod
|
||||
def load(city_filename) -> City:
|
||||
"""
|
||||
@staticmethod
|
||||
def load(city_filename) -> City:
|
||||
"""
|
||||
Load a city saved with city.save(city_filename)
|
||||
:param city_filename: city filename
|
||||
:return: City
|
||||
"""
|
||||
with open(city_filename, 'rb') as file:
|
||||
return pickle.load(file)
|
||||
with open(city_filename, 'rb') as file:
|
||||
return pickle.load(file)
|
||||
|
||||
def save(self, city_filename):
|
||||
"""
|
||||
def save(self, city_filename):
|
||||
"""
|
||||
Save a city into the given filename
|
||||
:param city_filename: destination city filename
|
||||
:return: None
|
||||
"""
|
||||
with open(city_filename, 'wb') as file:
|
||||
pickle.dump(self, file)
|
||||
with open(city_filename, 'wb') as file:
|
||||
pickle.dump(self, file)
|
||||
|
||||
def region(self, center, radius) -> City:
|
||||
"""
|
||||
def region(self, center, radius) -> City:
|
||||
"""
|
||||
Get a region from the city
|
||||
:param center: specific point in space [x, y, z]
|
||||
:param radius: distance to center of the sphere selected in meters
|
||||
:return: selected_region_city
|
||||
"""
|
||||
selected_region_lower_corner = [center[0] - radius, center[1] - radius, center[2] - radius]
|
||||
selected_region_upper_corner = [center[0] + radius, center[1] + radius, center[2] + radius]
|
||||
selected_region_city = City(selected_region_lower_corner, selected_region_upper_corner, srs_name=self.srs_name)
|
||||
selected_region_city.climate_file = self.climate_file
|
||||
# selected_region_city.climate_reference_city = self.climate_reference_city
|
||||
for city_object in self.city_objects:
|
||||
location = city_object.centroid
|
||||
if location is not None:
|
||||
distance = math.sqrt(math.pow(location[0] - center[0], 2) + math.pow(location[1] - center[1], 2)
|
||||
+ math.pow(location[2] - center[2], 2))
|
||||
if distance < radius:
|
||||
selected_region_city.add_city_object(city_object)
|
||||
return selected_region_city
|
||||
selected_region_lower_corner = [center[0] - radius, center[1] - radius, center[2] - radius]
|
||||
selected_region_upper_corner = [center[0] + radius, center[1] + radius, center[2] + radius]
|
||||
selected_region_city = City(selected_region_lower_corner, selected_region_upper_corner, srs_name=self.srs_name)
|
||||
selected_region_city.climate_file = self.climate_file
|
||||
# selected_region_city.climate_reference_city = self.climate_reference_city
|
||||
for city_object in self.city_objects:
|
||||
location = city_object.centroid
|
||||
if location is not None:
|
||||
distance = math.sqrt(math.pow(location[0]-center[0], 2) + math.pow(location[1]-center[1], 2)
|
||||
+ math.pow(location[2]-center[2], 2))
|
||||
if distance < radius:
|
||||
selected_region_city.add_city_object(city_object)
|
||||
return selected_region_city
|
||||
|
||||
@property
|
||||
def latitude(self) -> Union[None, float]:
|
||||
"""
|
||||
@property
|
||||
def latitude(self) -> Union[None, float]:
|
||||
"""
|
||||
Get city latitude in degrees
|
||||
:return: None or float
|
||||
"""
|
||||
return self._latitude
|
||||
return self._latitude
|
||||
|
||||
@latitude.setter
|
||||
def latitude(self, value):
|
||||
"""
|
||||
@latitude.setter
|
||||
def latitude(self, value):
|
||||
"""
|
||||
Set city latitude in degrees
|
||||
:parameter value: float
|
||||
"""
|
||||
if value is not None:
|
||||
self._latitude = float(value)
|
||||
if value is not None:
|
||||
self._latitude = float(value)
|
||||
|
||||
@property
|
||||
def longitude(self) -> Union[None, float]:
|
||||
"""
|
||||
@property
|
||||
def longitude(self) -> Union[None, float]:
|
||||
"""
|
||||
Get city longitude in degrees
|
||||
:return: None or float
|
||||
"""
|
||||
return self._longitude
|
||||
return self._longitude
|
||||
|
||||
@longitude.setter
|
||||
def longitude(self, value):
|
||||
"""
|
||||
@longitude.setter
|
||||
def longitude(self, value):
|
||||
"""
|
||||
Set city longitude in degrees
|
||||
:parameter value: float
|
||||
"""
|
||||
if value is not None:
|
||||
self._longitude = float(value)
|
||||
if value is not None:
|
||||
self._longitude = float(value)
|
||||
|
||||
@property
|
||||
def time_zone(self) -> Union[None, float]:
|
||||
"""
|
||||
@property
|
||||
def time_zone(self) -> Union[None, float]:
|
||||
"""
|
||||
Get city time_zone
|
||||
:return: None or float
|
||||
"""
|
||||
return self._time_zone
|
||||
return self._time_zone
|
||||
|
||||
@time_zone.setter
|
||||
def time_zone(self, value):
|
||||
"""
|
||||
@time_zone.setter
|
||||
def time_zone(self, value):
|
||||
"""
|
||||
Set city time_zone
|
||||
:parameter value: float
|
||||
"""
|
||||
if value is not None:
|
||||
self._time_zone = float(value)
|
||||
if value is not None:
|
||||
self._time_zone = float(value)
|
||||
|
||||
@property
|
||||
def buildings_clusters(self) -> Union[List[BuildingsCluster], None]:
|
||||
"""
|
||||
@property
|
||||
def buildings_clusters(self) -> Union[List[BuildingsCluster], None]:
|
||||
"""
|
||||
Get buildings clusters belonging to the city
|
||||
:return: None or [BuildingsCluster]
|
||||
"""
|
||||
return self._buildings_clusters
|
||||
return self._buildings_clusters
|
||||
|
||||
@property
|
||||
def parts_consisting_buildings(self) -> Union[List[PartsConsistingBuilding], None]:
|
||||
"""
|
||||
@property
|
||||
def parts_consisting_buildings(self) -> Union[List[PartsConsistingBuilding], None]:
|
||||
"""
|
||||
Get parts consisting buildings belonging to the city
|
||||
:return: None or [PartsConsistingBuilding]
|
||||
"""
|
||||
return self._parts_consisting_buildings
|
||||
return self._parts_consisting_buildings
|
||||
|
||||
@property
|
||||
def energy_systems(self) -> Union[List[EnergySystem], None]:
|
||||
"""
|
||||
Get energy systems belonging to the city
|
||||
:return: None or [EnergySystem]
|
||||
"""
|
||||
return self._energy_systems
|
||||
@property
|
||||
def energy_systems(self) -> Union[List[EnergySystem], None]:
|
||||
"""
|
||||
Get energy systems belonging to the city
|
||||
:return: None or [EnergySystem]
|
||||
"""
|
||||
return self._energy_systems
|
||||
|
||||
@property
|
||||
def city_objects_clusters(self) -> Union[List[CityObjectsCluster], None]:
|
||||
"""
|
||||
@property
|
||||
def city_objects_clusters(self) -> Union[List[CityObjectsCluster], None]:
|
||||
"""
|
||||
Get city objects clusters belonging to the city
|
||||
:return: None or [CityObjectsCluster]
|
||||
"""
|
||||
if self.buildings_clusters is None:
|
||||
self._city_objects_clusters = []
|
||||
else:
|
||||
self._city_objects_clusters = self.buildings_clusters
|
||||
if self.parts_consisting_buildings is not None:
|
||||
self._city_objects_clusters.append(self.parts_consisting_buildings)
|
||||
return self._city_objects_clusters
|
||||
if self.buildings_clusters is None:
|
||||
self._city_objects_clusters = []
|
||||
else:
|
||||
self._city_objects_clusters = self.buildings_clusters
|
||||
if self.parts_consisting_buildings is not None:
|
||||
self._city_objects_clusters.append(self.parts_consisting_buildings)
|
||||
return self._city_objects_clusters
|
||||
|
||||
def add_city_objects_cluster(self, new_city_objects_cluster):
|
||||
"""
|
||||
def add_city_objects_cluster(self, new_city_objects_cluster):
|
||||
"""
|
||||
Add a CityObject to the city
|
||||
:param new_city_objects_cluster:CityObjectsCluster
|
||||
:return: None or NotImplementedError
|
||||
"""
|
||||
if new_city_objects_cluster.type == 'buildings':
|
||||
if self._buildings_clusters is None:
|
||||
self._buildings_clusters = []
|
||||
self._buildings_clusters.append(new_city_objects_cluster)
|
||||
elif new_city_objects_cluster.type == 'building_parts':
|
||||
if self._parts_consisting_buildings is None:
|
||||
self._parts_consisting_buildings = []
|
||||
self._parts_consisting_buildings.append(new_city_objects_cluster)
|
||||
else:
|
||||
raise NotImplementedError
|
||||
if new_city_objects_cluster.type == 'buildings':
|
||||
if self._buildings_clusters is None:
|
||||
self._buildings_clusters = []
|
||||
self._buildings_clusters.append(new_city_objects_cluster)
|
||||
elif new_city_objects_cluster.type == 'building_parts':
|
||||
if self._parts_consisting_buildings is None:
|
||||
self._parts_consisting_buildings = []
|
||||
self._parts_consisting_buildings.append(new_city_objects_cluster)
|
||||
else:
|
||||
raise NotImplementedError
|
||||
|
|
41
city_model_structure/fuel.py
Normal file
41
city_model_structure/fuel.py
Normal file
|
@ -0,0 +1,41 @@
|
|||
"""
|
||||
ConstructionFactory (before PhysicsFactory) retrieve the specific construction module for the given region
|
||||
SPDX - License - Identifier: LGPL - 3.0 - or -later
|
||||
Copyright © 2020 Project Author Atiya
|
||||
"""
|
||||
|
||||
class Fuel:
|
||||
def __init__(self, fuel_id, name, carbon_emission_factor, unit):
|
||||
self._fuel_id = fuel_id
|
||||
self._name = name
|
||||
self._carbon_emission_factor = carbon_emission_factor
|
||||
self._unit = unit
|
||||
|
||||
@property
|
||||
def id(self):
|
||||
"""
|
||||
Get fuel id
|
||||
"""
|
||||
return self._fuel_id
|
||||
|
||||
@property
|
||||
def name(self):
|
||||
"""
|
||||
Get fuel name
|
||||
"""
|
||||
return self._name
|
||||
|
||||
@property
|
||||
def carbon_emission_factor(self):
|
||||
"""
|
||||
Get fuel carbon emission factor
|
||||
"""
|
||||
return self._carbon_emission_factor
|
||||
|
||||
@property
|
||||
def unit(self):
|
||||
"""
|
||||
Get fuel units
|
||||
"""
|
||||
return self._unit
|
||||
|
573
data/life_cicle_analize/lca_data.xml
Normal file
573
data/life_cicle_analize/lca_data.xml
Normal file
|
@ -0,0 +1,573 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<library name="LCA">
|
||||
<Fuels>
|
||||
<fuel id="1" name= "Black_coal">
|
||||
<carbon_emission_factor unit= "kgCO2/ kWh" > 0.32 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="2" name= "Brown_coal">
|
||||
<carbon_emission_factor unit= "kgCO2/ kWh"> 0.4 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="3" name= "Brown_coal_briquette">
|
||||
<carbon_emission_factor unit= "kgCO2/ kWh"> 0.4 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="4" name= "Brown_coal_coke">
|
||||
<carbon_emission_factor unit= "kgCO2/ kWh"> 0.5 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="5" name= "CNG">
|
||||
<carbon_emission_factor unit= "kgCO2/ kWh"> 0.18 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="6" name= "Coal_coke">
|
||||
<carbon_emission_factor unit= "kgCO2/ kWh"> 0.39 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="7" name= "Crude_oil">
|
||||
<carbon_emission_factor unit= "kgCO2/ kWh"> 0.27 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="8" name= "Diesel_Machine">
|
||||
<carbon_emission_factor unit= "kgCO2/ liter"> 4.16 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="9" name= "Diesel_Vehicle">
|
||||
<carbon_emission_factor unit= "kgCO2/ liter"> 2.24 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="10" name= "Ethane">
|
||||
<carbon_emission_factor unit= "kgCO2/ kWh"> 0.2 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="11" name= "Fuel_oil">
|
||||
<carbon_emission_factor unit= "kgCO2/ liter"> 3.19 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="12" name= "Gas_flared">
|
||||
<carbon_emission_factor unit= "kgCO2/ kg"> 3.53 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="13" name= "Kerosene">
|
||||
<carbon_emission_factor unit= "kgCO2/ kWh"> 0.27 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="14" name= "LNG">
|
||||
<carbon_emission_factor unit= "kgCO2/ kWh"> 0.21 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="15" name= "LPG">
|
||||
<carbon_emission_factor unit= "kgCO2/ liter"> 1.69 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="16" name= "Natural_gas">
|
||||
<carbon_emission_factor unit= "kgCO2/ kWh"> 0.21 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="17" name= "Petroleum_coke">
|
||||
<carbon_emission_factor unit= "kgCO2/ kWh"> 0.35 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="18" name= "UNG">
|
||||
<carbon_emission_factor unit= "kgCO2/ kWh"> 0.18 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="19" name= "Biodiesel">
|
||||
<carbon_emission_factor unit= "kgCO2/ liter"> 0.81 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="20" name= "Bioethanol">
|
||||
<carbon_emission_factor unit= "kgCO2/ kg"> 1.21 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="21" name= "Biogas">
|
||||
<carbon_emission_factor unit= "kgCO2/ kg"> 1.61 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="22" name= "Biomass">
|
||||
<carbon_emission_factor unit= "kgCO2/ kg"> 0.11 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="23" name= "Methanol">
|
||||
<carbon_emission_factor unit= "kgCO2/ kg"> 0.3 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="24" name= "Petrol_eightyfive_ethanol">
|
||||
<carbon_emission_factor unit= "kgCO2/ kg"> 1.16 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="25" name= "Steam">
|
||||
<carbon_emission_factor unit= "kgCO2/ kg"> 0.61 </carbon_emission_factor>
|
||||
</fuel>
|
||||
</Fuels>
|
||||
<Machines>
|
||||
<machine name= "Rock_drill">
|
||||
<work_efficiency unit= "h/m3"> 0.347 </work_efficiency>
|
||||
<energy_consumption_rate unit= "kWh/h"> 16.5 </energy_consumption_rate>
|
||||
<carbon_emission_factor unit= "kgCO2/kWh"> 0.918 </carbon_emission_factor>
|
||||
</machine>
|
||||
<machine name= "Hydraulic_hammer">
|
||||
<work_efficiency unit= "h/m3"> 0.033 </work_efficiency>
|
||||
<energy_consumption_rate unit= "kg_fuel/h"> 25.2 </energy_consumption_rate>
|
||||
<carbon_emission_factor unit= "kgCO2/kg_fuel"> 4.16 </carbon_emission_factor>
|
||||
</machine>
|
||||
<machine name= "Crawler_bulldozer">
|
||||
<work_efficiency unit= "h/m3"> 0.027 </work_efficiency>
|
||||
<energy_consumption_rate unit= "kg_fuel/h3"> 16.8 </energy_consumption_rate>
|
||||
<carbon_emission_factor unit= "kgCO2/kg_fuel"> 2.239 </carbon_emission_factor>
|
||||
</machine>
|
||||
<machine name= "Crawler_excavator">
|
||||
<work_efficiency unit= "h/m3"> 0.023 </work_efficiency>
|
||||
<energy_consumption_rate unit= "kg_fuel/h"> 16.8 </energy_consumption_rate>
|
||||
<carbon_emission_factor unit= "kgCO2/kg_fuel"> 2.239 </carbon_emission_factor>
|
||||
</machine>
|
||||
<machine name= "Crawler_hydraulic_rock_crusher">
|
||||
<work_efficiency unit= "h/m3"> 0.109 </work_efficiency>
|
||||
<energy_consumption_rate unit= "kg_fuel/h"> 25.2 </energy_consumption_rate>
|
||||
<carbon_emission_factor unit= "kgCO2/kg_fuel"> 2.239 </carbon_emission_factor>
|
||||
</machine>
|
||||
<machine name= "Mobile_recycling_equipment">
|
||||
<work_efficiency unit= "h/ton"> 0.003 </work_efficiency>
|
||||
<energy_consumption_rate unit= "kg_fuel/h"> 16.4 </energy_consumption_rate>
|
||||
<carbon_emission_factor unit= "kgCO2/kg_fuel"> 4.16 </carbon_emission_factor>
|
||||
</machine>
|
||||
<machine name= "Vibration_feeder">
|
||||
<work_efficiency unit= "h/ton"> 0.002 </work_efficiency>
|
||||
<energy_consumption_rate unit= "kWh/h"> 11 </energy_consumption_rate>
|
||||
<carbon_emission_factor unit= "kgCO2/kWh"> 0.918 </carbon_emission_factor>
|
||||
</machine>
|
||||
<machine name= "Jaw_crusher">
|
||||
<work_efficiency unit= "h/ton"> 0.002 </work_efficiency>
|
||||
<energy_consumption_rate unit= "kWh/h"> 90 </energy_consumption_rate>
|
||||
<carbon_emission_factor unit= "kgCO2/kWh"> 0.918 </carbon_emission_factor>
|
||||
</machine>
|
||||
<machine name= "Electromagnetic_separator">
|
||||
<work_efficiency unit= "h/ton"> 0.002 </work_efficiency>
|
||||
<energy_consumption_rate unit= "kWh/h"> 10 </energy_consumption_rate>
|
||||
<carbon_emission_factor unit= "kgCO2/kWh"> 0.918 </carbon_emission_factor>
|
||||
</machine>
|
||||
<machine name= "Wind_sorting_machine">
|
||||
<work_efficiency unit= "h/ton"> 0.002 </work_efficiency>
|
||||
<energy_consumption_rate unit= "kWh/h"> 11 </energy_consumption_rate>
|
||||
<carbon_emission_factor unit= "kgCO2/kWh"> 0.918 </carbon_emission_factor>
|
||||
</machine>
|
||||
<machine name= "Impact_crusher">
|
||||
<work_efficiency unit= "h/ton"> 0.002 </work_efficiency>
|
||||
<energy_consumption_rate unit= "kWh/h"> 132 </energy_consumption_rate>
|
||||
<carbon_emission_factor unit= "kgCO2/kWh"> 0.918 </carbon_emission_factor>
|
||||
</machine>
|
||||
<machine name= "Double_circular_vibrating_plug">
|
||||
<work_efficiency unit= " h/ton "> 0.002 </work_efficiency>
|
||||
<energy_consumption_rate unit= "kWh/h"> 15 </energy_consumption_rate>
|
||||
<carbon_emission_factor unit= "kgCO2/kW"> 0.918 </carbon_emission_factor>
|
||||
</machine>
|
||||
<machine name= "Spiral_sand_washing_machine">
|
||||
<work_efficiency unit= "h/ton"> 0.002 </work_efficiency>
|
||||
<energy_consumption_rate unit= "kWh/h"> 5.5 </energy_consumption_rate>
|
||||
<carbon_emission_factor unit= "kgCO2/kWh"> 0.918 </carbon_emission_factor>
|
||||
</machine>
|
||||
<machine name= "Conveyor_belts">
|
||||
<work_efficiency unit= "h/ton"> 0.002 </work_efficiency>
|
||||
<energy_consumption_rate unit= "kWh/h"> 22.5 </energy_consumption_rate>
|
||||
<carbon_emission_factor unit= "kgCO2/kWh"> 0.918 </carbon_emission_factor>
|
||||
</machine>
|
||||
</Machines>
|
||||
<Vehicles>
|
||||
<vehicle name= "Freight_lorry_18_ton">
|
||||
<fuel_consumption_rate unit= "kg_fuel/ton.km"> 0.0123 </fuel_consumption_rate>
|
||||
<carbon_emission_factor unit= "kgCO2/kg_fuel"> 2.239 </carbon_emission_factor>
|
||||
</vehicle>
|
||||
<vehicle name= "Freight_train">
|
||||
<fuel_consumption_rate unit= "kWh/ton.km"> 0.042 </fuel_consumption_rate>
|
||||
<carbon_emission_factor unit= "kgCO2/kWh"> 0.918 </carbon_emission_factor>
|
||||
</vehicle>
|
||||
<vehicle name= "Freight_ship">
|
||||
<fuel_consumption_rate unit= "kWh/ton.km"> 0.01 </fuel_consumption_rate>
|
||||
<carbon_emission_factor unit= "kgCO2/kWh"> 1.00000 </carbon_emission_factor>
|
||||
</vehicle>
|
||||
<vehicle name= "Freight_Air">
|
||||
<fuel_consumption_rate unit= "kWh/ton.km"> 1.3 </fuel_consumption_rate>
|
||||
<carbon_emission_factor unit= "kgCO2/kWh"> 1.00000 </carbon_emission_factor>
|
||||
</vehicle>
|
||||
</Vehicles>
|
||||
<Building_materials>
|
||||
<Bricks>
|
||||
<brick id="1" type= "clay brick">
|
||||
<density unit= "ton/m3"> 1.8 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 560 </embodied_carbon>
|
||||
<recycling_ratio> 0.8 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0.3 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 0.7 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.2 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</brick>
|
||||
<brick id="2" type= "light clay brick">
|
||||
<density unit= "ton/m3"> 1.2 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 310 </embodied_carbon>
|
||||
<recycling_ratio> 0.8 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0.3 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 0.7 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.2 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</brick>
|
||||
<brick id="3" type= "refractory">
|
||||
<density unit= "ton/m3"> 2 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 3080 </embodied_carbon>
|
||||
<recycling_ratio> 0.8 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0.3 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 0.7 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.2 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</brick>
|
||||
<brick id="4" type= "sand-lime brick">
|
||||
<density unit= "ton/m3"> 1.4 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 300 </embodied_carbon>
|
||||
<recycling_ratio> 0.8 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0.3 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 0.7 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.2 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</brick>
|
||||
</Bricks>
|
||||
<Concretes>
|
||||
<concrete id="1" type= "light weight expanded clay">
|
||||
<density unit= "ton/m3"> 1.6 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 900 </embodied_carbon>
|
||||
<recycling_ratio> 0.8 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.2 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</concrete>
|
||||
<concrete id="2" type= "lightweight Expanded perlite">
|
||||
<density unit= "ton/m3"> 1.6 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 2340 </embodied_carbon>
|
||||
<recycling_ratio> 0.8 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.2 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</concrete>
|
||||
<concrete id="3" type= "lightweight expanded vermiculite">
|
||||
<density unit= "ton/m3"> 1.6 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 1570 </embodied_carbon>
|
||||
<recycling_ratio> 0.8 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.2 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</concrete>
|
||||
<concrete id="4" type= "lightweight polystyrene">
|
||||
<density unit= "ton/m3"> 1.4 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 1840 </embodied_carbon>
|
||||
<recycling_ratio> 0.8 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.2 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</concrete>
|
||||
<concrete id="5" type= "lightweight pumice">
|
||||
<density unit= "ton/m3"> 1.3 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 410 </embodied_carbon>
|
||||
<recycling_ratio> 0.8 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.2 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</concrete>
|
||||
<concrete id="6" type= "concrete 20 MPa">
|
||||
<density unit= "ton/m3"> 2.3 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 160 </embodied_carbon>
|
||||
<recycling_ratio> 0.8 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.2 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</concrete>
|
||||
<concrete id="7" type= "concrete 25 MPa">
|
||||
<density unit= "ton/m3"> 2.3 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 170 </embodied_carbon>
|
||||
<recycling_ratio> 0.8 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.2 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</concrete>
|
||||
<concrete id="8" type= "concrete 30-32 MPa">
|
||||
<density unit= "ton/m3"> 2.3 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 230 </embodied_carbon>
|
||||
<recycling_ratio> 0.8 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.2 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</concrete>
|
||||
<concrete id="9" type= "concrete 35 MPae">
|
||||
<density unit= "ton/m3"> 2.4 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 240 </embodied_carbon>
|
||||
<recycling_ratio> 0.8 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.2 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</concrete>
|
||||
<concrete id="10" type= "concrete 50 MPa">
|
||||
<density unit= "ton/m3"> 2.4 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 280 </embodied_carbon>
|
||||
<recycling_ratio> 0.8 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.2 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</concrete>
|
||||
<concrete id="11" type= "concrete block">
|
||||
<density unit= "ton/m3"> 2.3 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 170 </embodied_carbon>
|
||||
<recycling_ratio> 0.8 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.2 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</concrete>
|
||||
<concrete id="12" type= "concrete roof tile">
|
||||
<density unit= "ton/m3"> 1.2 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 440 </embodied_carbon>
|
||||
<recycling_ratio> 0.8 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.2 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</concrete>
|
||||
</Concretes>
|
||||
<glasses>
|
||||
<glass id="1" type= "flat glass, coated">
|
||||
<density unit= "ton/m3"> 2.58 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 2660 </embodied_carbon>
|
||||
<recycling_ratio> 0.95 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.05 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</glass>
|
||||
<glass id="2" type= "glass fibre">
|
||||
<density unit= "ton/m3"> 2.58 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 5260 </embodied_carbon>
|
||||
<recycling_ratio> 0.95 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.05 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</glass>
|
||||
</glasses>
|
||||
<Insulations>
|
||||
<Insulation id="1" type= "cellulose fibre">
|
||||
<density unit= "ton/m3"> 0.06 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 1760 </embodied_carbon>
|
||||
<recycling_ratio> 0.9 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.1 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</Insulation>
|
||||
<Insulation id="2" type= "cork slab">
|
||||
<density unit= "ton/m3"> 0.122 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 3080 </embodied_carbon>
|
||||
<recycling_ratio> 0.9 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.1 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</Insulation>
|
||||
<Insulation id="3" type= "polystyren foam">
|
||||
<density unit= "ton/m3"> 0.028 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 3180 </embodied_carbon>
|
||||
<recycling_ratio> 0.9 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.1 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</Insulation>
|
||||
<Insulation id="4" type= "polystyrene 10% recycled">
|
||||
<density unit= "ton/m3"> 0.024 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 5140 </embodied_carbon>
|
||||
<recycling_ratio> 0.9 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.1 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</Insulation>
|
||||
<Insulation id="5" type= "stone wool">
|
||||
<density unit= "ton/m3"> 0.1 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 6040 </embodied_carbon>
|
||||
<recycling_ratio> 0.9 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.1 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</Insulation>
|
||||
<Insulation id="6" type= "foam glass">
|
||||
<density unit= "ton/m3"> 0.3 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 5380 </embodied_carbon>
|
||||
<recycling_ratio> 0.9 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.1 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</Insulation>
|
||||
<Insulation id="7" type= "glass wool mat">
|
||||
<density unit= "ton/m3"> 0.032 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 2150 </embodied_carbon>
|
||||
<recycling_ratio> 0.9 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.1 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</Insulation>
|
||||
</Insulations>
|
||||
<woods>
|
||||
<wood id="1" type= "fiberboard, hard">
|
||||
<density unit= "ton/m3"> 0.9 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 3420 </embodied_carbon>
|
||||
<recycling_ratio> 0.6 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.4 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</wood>
|
||||
<wood id="2" type= "three layerd laminated board">
|
||||
<density unit= "ton/m3"> 0.7 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 1430 </embodied_carbon>
|
||||
<recycling_ratio> 0.6 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.4 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</wood>
|
||||
<wood id="3" type= "fibreboard, soft">
|
||||
<density unit= "ton/m3"> 0.65 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 2780 </embodied_carbon>
|
||||
<recycling_ratio> 0.6 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.4 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</wood>
|
||||
<wood id="4" type= "plywood">
|
||||
<density unit= "ton/m3"> 0.72 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 2190 </embodied_carbon>
|
||||
<recycling_ratio> 0.6 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.4 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</wood>
|
||||
</woods>
|
||||
<coverings>
|
||||
<covering id="1" type= "acrylic filler">
|
||||
<density unit= "ton/m3"> 1.43 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 1070 </embodied_carbon>
|
||||
<recycling_ratio> 0 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 0 </company_recycling_ratio>
|
||||
<landfilling_ratio> 1 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</covering>
|
||||
<covering id="2" type= "anhydrite floor">
|
||||
<density unit= "ton/m3"> 1.43 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 240 </embodied_carbon>
|
||||
<recycling_ratio> 0 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 0 </company_recycling_ratio>
|
||||
<landfilling_ratio> 1 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</covering>
|
||||
<covering id="3" type= "base plaster">
|
||||
<density unit= "ton/m3"> 1.43 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 430 </embodied_carbon>
|
||||
<recycling_ratio> 0 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 0 </company_recycling_ratio>
|
||||
<landfilling_ratio> 1 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</covering>
|
||||
<covering id="4" type= "cement cast plaster floor">
|
||||
<density unit= "ton/m3"> 1.43 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 340 </embodied_carbon>
|
||||
<recycling_ratio> 0 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 0 </company_recycling_ratio>
|
||||
<landfilling_ratio> 1 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</covering>
|
||||
<covering id="5" type= "cement tile">
|
||||
<density unit= "ton/m3"> 1.2 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 440 </embodied_carbon>
|
||||
<recycling_ratio> 0.8 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.2 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</covering>
|
||||
<covering id="6" type= "ceramic tile">
|
||||
<density unit= "ton/m3"> 2.1 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 1410 </embodied_carbon>
|
||||
<recycling_ratio> 0.8 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.2 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</covering>
|
||||
<covering id="7" type= "clay plaster">
|
||||
<density unit= "ton/m3"> 1.43 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 250 </embodied_carbon>
|
||||
<recycling_ratio> 0 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 0 </company_recycling_ratio>
|
||||
<landfilling_ratio> 1 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</covering>
|
||||
<covering id="7" type= "fiber cement corrugated slab">
|
||||
<density unit= "ton/m3"> 1.44 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 1480 </embodied_carbon>
|
||||
<recycling_ratio> 0.8 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.2 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</covering>
|
||||
<covering id="7" type= "fiber cement facing tile">
|
||||
<density unit= "ton/m3"> 1.44 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 2220 </embodied_carbon>
|
||||
<recycling_ratio> 0.8 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.2 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</covering>
|
||||
<covering id="7" type= "gypsum fibreboard">
|
||||
<density unit= "ton/m3"> 1.27 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 3960 </embodied_carbon>
|
||||
<recycling_ratio> 0.8 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.2 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</covering>
|
||||
<covering id="7" type= "gypsum plaster board">
|
||||
<density unit= "ton/m3"> 1.15 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 760 </embodied_carbon>
|
||||
<recycling_ratio> 0.8 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.2 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</covering>
|
||||
</coverings>
|
||||
<metals>
|
||||
<metal id="1" type= "steel">
|
||||
<density unit= "ton/m3"> 8 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 3160 </embodied_carbon>
|
||||
<recycling_ratio> 0.98</recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.02 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</metal>
|
||||
<metal id="2" type= "aluminium">
|
||||
<density unit= "ton/m3"> 2.7 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 5370 </embodied_carbon>
|
||||
<recycling_ratio> 0.98</recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.02 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</metal>
|
||||
<metal id="3" type= "reinforcing steel">
|
||||
<density unit= "ton/m3"> 7.85 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 3910 </embodied_carbon>
|
||||
<recycling_ratio> 0.98</recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.02 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</metal>
|
||||
</metals>
|
||||
</Building_materials>
|
||||
</library>
|
24
imports/life_cicle_analize/lca_fuel.py
Normal file
24
imports/life_cicle_analize/lca_fuel.py
Normal file
|
@ -0,0 +1,24 @@
|
|||
"""
|
||||
CityGml module parses citygml_classes files and import the geometry into the city model structure
|
||||
SPDX - License - Identifier: LGPL - 3.0 - or -later
|
||||
Copyright © 2020 Project Author Atiya
|
||||
"""
|
||||
import xmltodict
|
||||
from pathlib import Path
|
||||
from city_model_structure.fuel import Fuel
|
||||
|
||||
class LcaFuel:
|
||||
def __init__(self, city, base_path):
|
||||
self._city = city
|
||||
self._base_path = base_path
|
||||
self._lca = None
|
||||
|
||||
def enrich(self):
|
||||
self._city.fuels = []
|
||||
path = Path(self._base_path / 'lca_data.xml').resolve()
|
||||
|
||||
with open(path) as xml:
|
||||
self._lca = xmltodict.parse(xml.read())
|
||||
for fuel in self._lca["library"]["Fuels"]['fuel']:
|
||||
self._city.fuels.append(Fuel(fuel['@id'], fuel['@name'], fuel['carbon_emission_factor']['#text'],
|
||||
fuel['carbon_emission_factor']['@unit']))
|
33
imports/life_cicle_analyze_factory.py
Normal file
33
imports/life_cicle_analyze_factory.py
Normal file
|
@ -0,0 +1,33 @@
|
|||
"""
|
||||
ConstructionFactory (before PhysicsFactory) retrieve the specific construction module for the given region
|
||||
SPDX - License - Identifier: LGPL - 3.0 - or -later
|
||||
Copyright © 2020 Project Author Atiya
|
||||
"""
|
||||
|
||||
from pathlib import Path
|
||||
from imports.life_cicle_analize.lca_fuel import LcaFuel
|
||||
|
||||
|
||||
class LifeCicleAnalizeFactory:
|
||||
"""
|
||||
Life cicle analize factory class
|
||||
"""
|
||||
def __init__(self, handler, city, base_path=None):
|
||||
if base_path is None:
|
||||
base_path = Path(Path(__file__).parent.parent / 'data/construction')
|
||||
self._handler = '_' + handler.lower().replace(' ', '_')
|
||||
self._city = city
|
||||
self._base_path = base_path
|
||||
|
||||
def _fuel(self):
|
||||
"""
|
||||
Enrich the city by adding the fuel carbon information
|
||||
"""
|
||||
LcaFuel(self._city, self._base_path).enrich()
|
||||
|
||||
def enrich(self):
|
||||
"""
|
||||
Enrich the city given to the class using the class given handler
|
||||
:return: None
|
||||
"""
|
||||
getattr(self, self._handler, lambda: None)()
|
573
unittests/tests_data/lca_data.xml
Normal file
573
unittests/tests_data/lca_data.xml
Normal file
|
@ -0,0 +1,573 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<library name="LCA">
|
||||
<Fuels>
|
||||
<fuel id="1" name= "Black_coal">
|
||||
<carbon_emission_factor unit= "kgCO2/ kWh" > 0.32 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="2" name= "Brown_coal">
|
||||
<carbon_emission_factor unit= "kgCO2/ kWh"> 0.4 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="3" name= "Brown_coal_briquette">
|
||||
<carbon_emission_factor unit= "kgCO2/ kWh"> 0.4 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="4" name= "Brown_coal_coke">
|
||||
<carbon_emission_factor unit= "kgCO2/ kWh"> 0.5 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="5" name= "CNG">
|
||||
<carbon_emission_factor unit= "kgCO2/ kWh"> 0.18 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="6" name= "Coal_coke">
|
||||
<carbon_emission_factor unit= "kgCO2/ kWh"> 0.39 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="7" name= "Crude_oil">
|
||||
<carbon_emission_factor unit= "kgCO2/ kWh"> 0.27 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="8" name= "Diesel_Machine">
|
||||
<carbon_emission_factor unit= "kgCO2/ liter"> 4.16 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="9" name= "Diesel_Vehicle">
|
||||
<carbon_emission_factor unit= "kgCO2/ liter"> 2.24 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="10" name= "Ethane">
|
||||
<carbon_emission_factor unit= "kgCO2/ kWh"> 0.2 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="11" name= "Fuel_oil">
|
||||
<carbon_emission_factor unit= "kgCO2/ liter"> 3.19 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="12" name= "Gas_flared">
|
||||
<carbon_emission_factor unit= "kgCO2/ kg"> 3.53 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="13" name= "Kerosene">
|
||||
<carbon_emission_factor unit= "kgCO2/ kWh"> 0.27 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="14" name= "LNG">
|
||||
<carbon_emission_factor unit= "kgCO2/ kWh"> 0.21 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="15" name= "LPG">
|
||||
<carbon_emission_factor unit= "kgCO2/ liter"> 1.69 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="16" name= "Natural_gas">
|
||||
<carbon_emission_factor unit= "kgCO2/ kWh"> 0.21 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="17" name= "Petroleum_coke">
|
||||
<carbon_emission_factor unit= "kgCO2/ kWh"> 0.35 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="18" name= "UNG">
|
||||
<carbon_emission_factor unit= "kgCO2/ kWh"> 0.18 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="19" name= "Biodiesel">
|
||||
<carbon_emission_factor unit= "kgCO2/ liter"> 0.81 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="20" name= "Bioethanol">
|
||||
<carbon_emission_factor unit= "kgCO2/ kg"> 1.21 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="21" name= "Biogas">
|
||||
<carbon_emission_factor unit= "kgCO2/ kg"> 1.61 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="22" name= "Biomass">
|
||||
<carbon_emission_factor unit= "kgCO2/ kg"> 0.11 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="23" name= "Methanol">
|
||||
<carbon_emission_factor unit= "kgCO2/ kg"> 0.3 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="24" name= "Petrol_eightyfive_ethanol">
|
||||
<carbon_emission_factor unit= "kgCO2/ kg"> 1.16 </carbon_emission_factor>
|
||||
</fuel>
|
||||
<fuel id="25" name= "Steam">
|
||||
<carbon_emission_factor unit= "kgCO2/ kg"> 0.61 </carbon_emission_factor>
|
||||
</fuel>
|
||||
</Fuels>
|
||||
<Machines>
|
||||
<machine name= "Rock_drill">
|
||||
<work_efficiency unit= "h/m3"> 0.347 </work_efficiency>
|
||||
<energy_consumption_rate unit= "kWh/h"> 16.5 </energy_consumption_rate>
|
||||
<carbon_emission_factor unit= "kgCO2/kWh"> 0.918 </carbon_emission_factor>
|
||||
</machine>
|
||||
<machine name= "Hydraulic_hammer">
|
||||
<work_efficiency unit= "h/m3"> 0.033 </work_efficiency>
|
||||
<energy_consumption_rate unit= "kg_fuel/h"> 25.2 </energy_consumption_rate>
|
||||
<carbon_emission_factor unit= "kgCO2/kg_fuel"> 4.16 </carbon_emission_factor>
|
||||
</machine>
|
||||
<machine name= "Crawler_bulldozer">
|
||||
<work_efficiency unit= "h/m3"> 0.027 </work_efficiency>
|
||||
<energy_consumption_rate unit= "kg_fuel/h3"> 16.8 </energy_consumption_rate>
|
||||
<carbon_emission_factor unit= "kgCO2/kg_fuel"> 2.239 </carbon_emission_factor>
|
||||
</machine>
|
||||
<machine name= "Crawler_excavator">
|
||||
<work_efficiency unit= "h/m3"> 0.023 </work_efficiency>
|
||||
<energy_consumption_rate unit= "kg_fuel/h"> 16.8 </energy_consumption_rate>
|
||||
<carbon_emission_factor unit= "kgCO2/kg_fuel"> 2.239 </carbon_emission_factor>
|
||||
</machine>
|
||||
<machine name= "Crawler_hydraulic_rock_crusher">
|
||||
<work_efficiency unit= "h/m3"> 0.109 </work_efficiency>
|
||||
<energy_consumption_rate unit= "kg_fuel/h"> 25.2 </energy_consumption_rate>
|
||||
<carbon_emission_factor unit= "kgCO2/kg_fuel"> 2.239 </carbon_emission_factor>
|
||||
</machine>
|
||||
<machine name= "Mobile_recycling_equipment">
|
||||
<work_efficiency unit= "h/ton"> 0.003 </work_efficiency>
|
||||
<energy_consumption_rate unit= "kg_fuel/h"> 16.4 </energy_consumption_rate>
|
||||
<carbon_emission_factor unit= "kgCO2/kg_fuel"> 4.16 </carbon_emission_factor>
|
||||
</machine>
|
||||
<machine name= "Vibration_feeder">
|
||||
<work_efficiency unit= "h/ton"> 0.002 </work_efficiency>
|
||||
<energy_consumption_rate unit= "kWh/h"> 11 </energy_consumption_rate>
|
||||
<carbon_emission_factor unit= "kgCO2/kWh"> 0.918 </carbon_emission_factor>
|
||||
</machine>
|
||||
<machine name= "Jaw_crusher">
|
||||
<work_efficiency unit= "h/ton"> 0.002 </work_efficiency>
|
||||
<energy_consumption_rate unit= "kWh/h"> 90 </energy_consumption_rate>
|
||||
<carbon_emission_factor unit= "kgCO2/kWh"> 0.918 </carbon_emission_factor>
|
||||
</machine>
|
||||
<machine name= "Electromagnetic_separator">
|
||||
<work_efficiency unit= "h/ton"> 0.002 </work_efficiency>
|
||||
<energy_consumption_rate unit= "kWh/h"> 10 </energy_consumption_rate>
|
||||
<carbon_emission_factor unit= "kgCO2/kWh"> 0.918 </carbon_emission_factor>
|
||||
</machine>
|
||||
<machine name= "Wind_sorting_machine">
|
||||
<work_efficiency unit= "h/ton"> 0.002 </work_efficiency>
|
||||
<energy_consumption_rate unit= "kWh/h"> 11 </energy_consumption_rate>
|
||||
<carbon_emission_factor unit= "kgCO2/kWh"> 0.918 </carbon_emission_factor>
|
||||
</machine>
|
||||
<machine name= "Impact_crusher">
|
||||
<work_efficiency unit= "h/ton"> 0.002 </work_efficiency>
|
||||
<energy_consumption_rate unit= "kWh/h"> 132 </energy_consumption_rate>
|
||||
<carbon_emission_factor unit= "kgCO2/kWh"> 0.918 </carbon_emission_factor>
|
||||
</machine>
|
||||
<machine name= "Double_circular_vibrating_plug">
|
||||
<work_efficiency unit= " h/ton "> 0.002 </work_efficiency>
|
||||
<energy_consumption_rate unit= "kWh/h"> 15 </energy_consumption_rate>
|
||||
<carbon_emission_factor unit= "kgCO2/kW"> 0.918 </carbon_emission_factor>
|
||||
</machine>
|
||||
<machine name= "Spiral_sand_washing_machine">
|
||||
<work_efficiency unit= "h/ton"> 0.002 </work_efficiency>
|
||||
<energy_consumption_rate unit= "kWh/h"> 5.5 </energy_consumption_rate>
|
||||
<carbon_emission_factor unit= "kgCO2/kWh"> 0.918 </carbon_emission_factor>
|
||||
</machine>
|
||||
<machine name= "Conveyor_belts">
|
||||
<work_efficiency unit= "h/ton"> 0.002 </work_efficiency>
|
||||
<energy_consumption_rate unit= "kWh/h"> 22.5 </energy_consumption_rate>
|
||||
<carbon_emission_factor unit= "kgCO2/kWh"> 0.918 </carbon_emission_factor>
|
||||
</machine>
|
||||
</Machines>
|
||||
<Vehicles>
|
||||
<vehicle name= "Freight_lorry_18_ton">
|
||||
<fuel_consumption_rate unit= "kg_fuel/ton.km"> 0.0123 </fuel_consumption_rate>
|
||||
<carbon_emission_factor unit= "kgCO2/kg_fuel"> 2.239 </carbon_emission_factor>
|
||||
</vehicle>
|
||||
<vehicle name= "Freight_train">
|
||||
<fuel_consumption_rate unit= "kWh/ton.km"> 0.042 </fuel_consumption_rate>
|
||||
<carbon_emission_factor unit= "kgCO2/kWh"> 0.918 </carbon_emission_factor>
|
||||
</vehicle>
|
||||
<vehicle name= "Freight_ship">
|
||||
<fuel_consumption_rate unit= "kWh/ton.km"> 0.01 </fuel_consumption_rate>
|
||||
<carbon_emission_factor unit= "kgCO2/kWh"> 1.00000 </carbon_emission_factor>
|
||||
</vehicle>
|
||||
<vehicle name= "Freight_Air">
|
||||
<fuel_consumption_rate unit= "kWh/ton.km"> 1.3 </fuel_consumption_rate>
|
||||
<carbon_emission_factor unit= "kgCO2/kWh"> 1.00000 </carbon_emission_factor>
|
||||
</vehicle>
|
||||
</Vehicles>
|
||||
<Building_materials>
|
||||
<Bricks>
|
||||
<brick id="1" type= "clay brick">
|
||||
<density unit= "ton/m3"> 1.8 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 560 </embodied_carbon>
|
||||
<recycling_ratio> 0.8 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0.3 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 0.7 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.2 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</brick>
|
||||
<brick id="2" type= "light clay brick">
|
||||
<density unit= "ton/m3"> 1.2 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 310 </embodied_carbon>
|
||||
<recycling_ratio> 0.8 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0.3 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 0.7 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.2 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</brick>
|
||||
<brick id="3" type= "refractory">
|
||||
<density unit= "ton/m3"> 2 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 3080 </embodied_carbon>
|
||||
<recycling_ratio> 0.8 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0.3 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 0.7 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.2 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</brick>
|
||||
<brick id="4" type= "sand-lime brick">
|
||||
<density unit= "ton/m3"> 1.4 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 300 </embodied_carbon>
|
||||
<recycling_ratio> 0.8 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0.3 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 0.7 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.2 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</brick>
|
||||
</Bricks>
|
||||
<Concretes>
|
||||
<concrete id="1" type= "light weight expanded clay">
|
||||
<density unit= "ton/m3"> 1.6 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 900 </embodied_carbon>
|
||||
<recycling_ratio> 0.8 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.2 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</concrete>
|
||||
<concrete id="2" type= "lightweight Expanded perlite">
|
||||
<density unit= "ton/m3"> 1.6 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 2340 </embodied_carbon>
|
||||
<recycling_ratio> 0.8 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.2 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</concrete>
|
||||
<concrete id="3" type= "lightweight expanded vermiculite">
|
||||
<density unit= "ton/m3"> 1.6 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 1570 </embodied_carbon>
|
||||
<recycling_ratio> 0.8 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.2 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</concrete>
|
||||
<concrete id="4" type= "lightweight polystyrene">
|
||||
<density unit= "ton/m3"> 1.4 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 1840 </embodied_carbon>
|
||||
<recycling_ratio> 0.8 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.2 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</concrete>
|
||||
<concrete id="5" type= "lightweight pumice">
|
||||
<density unit= "ton/m3"> 1.3 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 410 </embodied_carbon>
|
||||
<recycling_ratio> 0.8 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.2 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</concrete>
|
||||
<concrete id="6" type= "concrete 20 MPa">
|
||||
<density unit= "ton/m3"> 2.3 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 160 </embodied_carbon>
|
||||
<recycling_ratio> 0.8 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.2 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</concrete>
|
||||
<concrete id="7" type= "concrete 25 MPa">
|
||||
<density unit= "ton/m3"> 2.3 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 170 </embodied_carbon>
|
||||
<recycling_ratio> 0.8 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.2 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</concrete>
|
||||
<concrete id="8" type= "concrete 30-32 MPa">
|
||||
<density unit= "ton/m3"> 2.3 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 230 </embodied_carbon>
|
||||
<recycling_ratio> 0.8 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.2 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</concrete>
|
||||
<concrete id="9" type= "concrete 35 MPae">
|
||||
<density unit= "ton/m3"> 2.4 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 240 </embodied_carbon>
|
||||
<recycling_ratio> 0.8 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.2 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</concrete>
|
||||
<concrete id="10" type= "concrete 50 MPa">
|
||||
<density unit= "ton/m3"> 2.4 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 280 </embodied_carbon>
|
||||
<recycling_ratio> 0.8 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.2 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</concrete>
|
||||
<concrete id="11" type= "concrete block">
|
||||
<density unit= "ton/m3"> 2.3 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 170 </embodied_carbon>
|
||||
<recycling_ratio> 0.8 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.2 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</concrete>
|
||||
<concrete id="12" type= "concrete roof tile">
|
||||
<density unit= "ton/m3"> 1.2 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 440 </embodied_carbon>
|
||||
<recycling_ratio> 0.8 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.2 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</concrete>
|
||||
</Concretes>
|
||||
<glasses>
|
||||
<glass id="1" type= "flat glass, coated">
|
||||
<density unit= "ton/m3"> 2.58 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 2660 </embodied_carbon>
|
||||
<recycling_ratio> 0.95 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.05 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</glass>
|
||||
<glass id="2" type= "glass fibre">
|
||||
<density unit= "ton/m3"> 2.58 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 5260 </embodied_carbon>
|
||||
<recycling_ratio> 0.95 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.05 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</glass>
|
||||
</glasses>
|
||||
<Insulations>
|
||||
<Insulation id="1" type= "cellulose fibre">
|
||||
<density unit= "ton/m3"> 0.06 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 1760 </embodied_carbon>
|
||||
<recycling_ratio> 0.9 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.1 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</Insulation>
|
||||
<Insulation id="2" type= "cork slab">
|
||||
<density unit= "ton/m3"> 0.122 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 3080 </embodied_carbon>
|
||||
<recycling_ratio> 0.9 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.1 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</Insulation>
|
||||
<Insulation id="3" type= "polystyren foam">
|
||||
<density unit= "ton/m3"> 0.028 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 3180 </embodied_carbon>
|
||||
<recycling_ratio> 0.9 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.1 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</Insulation>
|
||||
<Insulation id="4" type= "polystyrene 10% recycled">
|
||||
<density unit= "ton/m3"> 0.024 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 5140 </embodied_carbon>
|
||||
<recycling_ratio> 0.9 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.1 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</Insulation>
|
||||
<Insulation id="5" type= "stone wool">
|
||||
<density unit= "ton/m3"> 0.1 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 6040 </embodied_carbon>
|
||||
<recycling_ratio> 0.9 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.1 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</Insulation>
|
||||
<Insulation id="6" type= "foam glass">
|
||||
<density unit= "ton/m3"> 0.3 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 5380 </embodied_carbon>
|
||||
<recycling_ratio> 0.9 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.1 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</Insulation>
|
||||
<Insulation id="7" type= "glass wool mat">
|
||||
<density unit= "ton/m3"> 0.032 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 2150 </embodied_carbon>
|
||||
<recycling_ratio> 0.9 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.1 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</Insulation>
|
||||
</Insulations>
|
||||
<woods>
|
||||
<wood id="1" type= "fiberboard, hard">
|
||||
<density unit= "ton/m3"> 0.9 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 3420 </embodied_carbon>
|
||||
<recycling_ratio> 0.6 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.4 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</wood>
|
||||
<wood id="2" type= "three layerd laminated board">
|
||||
<density unit= "ton/m3"> 0.7 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 1430 </embodied_carbon>
|
||||
<recycling_ratio> 0.6 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.4 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</wood>
|
||||
<wood id="3" type= "fibreboard, soft">
|
||||
<density unit= "ton/m3"> 0.65 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 2780 </embodied_carbon>
|
||||
<recycling_ratio> 0.6 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.4 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</wood>
|
||||
<wood id="4" type= "plywood">
|
||||
<density unit= "ton/m3"> 0.72 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 2190 </embodied_carbon>
|
||||
<recycling_ratio> 0.6 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.4 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</wood>
|
||||
</woods>
|
||||
<coverings>
|
||||
<covering id="1" type= "acrylic filler">
|
||||
<density unit= "ton/m3"> 1.43 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 1070 </embodied_carbon>
|
||||
<recycling_ratio> 0 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 0 </company_recycling_ratio>
|
||||
<landfilling_ratio> 1 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</covering>
|
||||
<covering id="2" type= "anhydrite floor">
|
||||
<density unit= "ton/m3"> 1.43 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 240 </embodied_carbon>
|
||||
<recycling_ratio> 0 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 0 </company_recycling_ratio>
|
||||
<landfilling_ratio> 1 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</covering>
|
||||
<covering id="3" type= "base plaster">
|
||||
<density unit= "ton/m3"> 1.43 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 430 </embodied_carbon>
|
||||
<recycling_ratio> 0 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 0 </company_recycling_ratio>
|
||||
<landfilling_ratio> 1 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</covering>
|
||||
<covering id="4" type= "cement cast plaster floor">
|
||||
<density unit= "ton/m3"> 1.43 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 340 </embodied_carbon>
|
||||
<recycling_ratio> 0 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 0 </company_recycling_ratio>
|
||||
<landfilling_ratio> 1 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</covering>
|
||||
<covering id="5" type= "cement tile">
|
||||
<density unit= "ton/m3"> 1.2 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 440 </embodied_carbon>
|
||||
<recycling_ratio> 0.8 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.2 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</covering>
|
||||
<covering id="6" type= "ceramic tile">
|
||||
<density unit= "ton/m3"> 2.1 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 1410 </embodied_carbon>
|
||||
<recycling_ratio> 0.8 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.2 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</covering>
|
||||
<covering id="7" type= "clay plaster">
|
||||
<density unit= "ton/m3"> 1.43 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 250 </embodied_carbon>
|
||||
<recycling_ratio> 0 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 0 </company_recycling_ratio>
|
||||
<landfilling_ratio> 1 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</covering>
|
||||
<covering id="7" type= "fiber cement corrugated slab">
|
||||
<density unit= "ton/m3"> 1.44 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 1480 </embodied_carbon>
|
||||
<recycling_ratio> 0.8 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.2 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</covering>
|
||||
<covering id="7" type= "fiber cement facing tile">
|
||||
<density unit= "ton/m3"> 1.44 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 2220 </embodied_carbon>
|
||||
<recycling_ratio> 0.8 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.2 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</covering>
|
||||
<covering id="7" type= "gypsum fibreboard">
|
||||
<density unit= "ton/m3"> 1.27 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 3960 </embodied_carbon>
|
||||
<recycling_ratio> 0.8 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.2 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</covering>
|
||||
<covering id="7" type= "gypsum plaster board">
|
||||
<density unit= "ton/m3"> 1.15 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 760 </embodied_carbon>
|
||||
<recycling_ratio> 0.8 </recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.2 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</covering>
|
||||
</coverings>
|
||||
<metals>
|
||||
<metal id="1" type= "steel">
|
||||
<density unit= "ton/m3"> 8 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 3160 </embodied_carbon>
|
||||
<recycling_ratio> 0.98</recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.02 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</metal>
|
||||
<metal id="2" type= "aluminium">
|
||||
<density unit= "ton/m3"> 2.7 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 5370 </embodied_carbon>
|
||||
<recycling_ratio> 0.98</recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.02 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</metal>
|
||||
<metal id="3" type= "reinforcing steel">
|
||||
<density unit= "ton/m3"> 7.85 </density>
|
||||
<embodied_carbon unit= "kgCO2/ton"> 3910 </embodied_carbon>
|
||||
<recycling_ratio> 0.98</recycling_ratio>
|
||||
<onsite_recycling_ratio> 0 </onsite_recycling_ratio>
|
||||
<company_recycling_ratio> 1 </company_recycling_ratio>
|
||||
<landfilling_ratio> 0.02 </landfilling_ratio>
|
||||
<cost unit= "...."> .... </cost>
|
||||
</metal>
|
||||
</metals>
|
||||
</Building_materials>
|
||||
</library>
|
Loading…
Reference in New Issue
Block a user