Welcome to CERC libs’s documentation!

Indices and tables

City Model Structure

City

City module SPDX - License - Identifier: LGPL - 3.0 - or -later Copyright © 2020 Project Author Guille Gutierrez guillermo.gutierrezmorote@concordia.ca

class city_model_structure.city.City(lower_corner, upper_corner, srs_name, buildings=None)[source]

City class

add_city_object(new_city_object)[source]

Add a CityObject to the city :param new_city_object:CityObject :return: None

property bixi_features

Bixi features belonging to the city :return: NotImplementedError

property buildings

Buildings belonging to the city :return: None or [Building]

city_object(name) → Optional[city_model_structure.city_object.CityObject][source]

Retrieve the city CityObject with the given name :param name:str :return: None or CityObject

property city_objects

City objects belonging to the city :return: None or [CityObject]

property composting_plants

Composting plants belonging to the city :return: NotImplementedError

property country_code

City country code :return: str

property lower_corner

City lower corner :return: [x,y,z]

property name

City name :return: str

property srs_name

srs name :return: str

property trees

Trees belonging to the city :return: NotImplementedError

property upper_corner

City upper corner :return: [x,y,z]

City Object

Building

CityObject module SPDX - License - Identifier: LGPL - 3.0 - or -later Copyright © 2020 Project Author Guille Gutierrez guillermo.gutierrezmorote@concordia.ca

class city_model_structure.building.Building(name, lod, surfaces, terrains, year_of_construction, function, lower_corner, attic_heated=0, basement_heated=0)[source]

CityObject class

property attic_heated

Get if the city object attic is heated :return: Boolean

property average_storey_height

Get city object average storey height in meters :return: float

property basement_heated

Get if the city object basement is heated :return: Boolean

property foot_print

City object foot print surface :return: Surface

property function

City object function :return: str

property heated_volume

City object heated volume in cubic meters :return: float

property lod

City object level of detail 1, 2, 3 or 4 :return: int

property max_height

City object maximal height in meters :return: float

property name

City object name :return: str

stl_export(path)[source]

Export the city object to stl file (city_object_name.stl) to the given path :param path: str :return: None

property storeys_above_ground

Get city object storeys number above ground :return: int

surface(name) → Optional[city_model_structure.surface.Surface][source]

Get the city object surface with a given name :param name: str :return: None or Surface

property surfaces

City object surfaces :return: [Surface]

property terrains

Get city object terrain surfaces :return: [Surface]

property thermal_zones

City object thermal zones :return: [ThermalZone]

property type

City object type :return: str

property usage_zones

Get city object usage zones :return: [UsageZone]

property volume

City object volume in cubic meters :return: float

property year_of_construction

City object year of construction :return: int

Internal Gains

InternalGains module SPDX - License - Identifier: LGPL - 3.0 - or -later Copyright © 2020 Project Author Guille Gutierrez guillermo.gutierrezmorote@concordia.ca

class city_model_structure.internal_gains.InternalGains[source]

InternalGains class

property average_internal_gain

Get internal gains average internal gain in w/m2 :return: float

property convective_fraction

Get internal gains convective fraction :return: float

property latent_fraction

Get internal gains latent fraction :return: float

property radiative_fraction

Get internal gains radiative fraction :return: float

Layer

Layers module SPDX - License - Identifier: LGPL - 3.0 - or -later Copyright © 2020 Project Author Guille Gutierrez guillermo.gutierrezmorote@concordia.ca

class city_model_structure.layer.Layer[source]

Layer class

property material

Get layer material :return: Material

property thickness

Get layer thickness in meters :return: float

Material

Material module SPDX - License - Identifier: LGPL - 3.0 - or -later Copyright © 2020 Project Author Guille Gutierrez guillermo.gutierrezmorote@concordia.ca

class city_model_structure.material.Material[source]

Material class

property conductivity

Get material conductivity in W/mK :return: float

property density

Get material density in kg/m3 :return: float

property no_mass

Get material no mass flag :return: Boolean

property solar_absorptance

Get material solar absorptance :return: float

property specific_heat

Get material conductivity in J/kgK :return: float

property thermal_absorptance

Get material thermal absorptance :return: float

property thermal_resistance

Get material thermal resistance in m2K/W :return: float

property visible_absorptance

Get material visible absorptance :return: float

Polyhedron

Polyhedron module SPDX - License - Identifier: LGPL - 3.0 - or -later Copyright © 2020 Project Author Guille Gutierrez guillermo.gutierrezmorote@concordia.ca

class city_model_structure.polyhedron.Polyhedron(surfaces)[source]

Polyhedron class

export(full_path)[source]

Export the polyhedron to stl given file :param full_path: str :return: None

property faces

Polyhedron faces :return: np.ndarray([int])

property max_z

Polyhedron maximal z value :return: float

property vertices

Polyhedron vertices :return: np.ndarray(int)

property volume

Polyhedron volume in cubic meters :return: float

Surface

Surface module SPDX - License - Identifier: LGPL - 3.0 - or -later Copyright © 2020 Project Author Guille Gutierrez guillermo.gutierrezmorote@concordia.ca

class city_model_structure.surface.Surface(coordinates, surface_type=None, name=None, swr='0.2', remove_last=True, is_projected=False)[source]

Surface class

add_shared(surface, intersection_area)[source]

Add a given surface and shared area in percent to this surface. :param surface: :param intersection_area: :return:

property area

Surface area in square meters :return: float

property area_above_ground

Surface area above ground in square meters :return: float

property area_below_ground

Surface area below ground in square meters :return: float

property azimuth

Surface azimuth in radians :return: float

property global_irradiance_hour

Get surface global irradiance hour in Wh/m2 :return: float

property global_irradiance_month

Get surface global irradiance per month in Wh/m2 :return: float

property ground_points

Surface grounded points matrix :return: np.ndarray

property ground_polygon

Surface grounded polygon :return: None or pyny3d.Polygon

property inclination

Surface inclination in radians :return: float

intersect(surface) → Optional[city_model_structure.surface.Surface][source]

Get the intersection surface, if any, between the given surface and this surface :param surface: Surface :return: None or Surface

property min_x

Surface minimal x value :return: float

property min_y

Surface minimal y value :return: float

property min_z

Surface minimal z value :return: float

property name

Surface name :return: str

property normal

Surface normal vector :return: np.ndarray

parent(parent, surface_id)[source]

Assign a city object as surface parent and a surface id :param parent: CityObject :param surface_id: str :return: None

property points

Surface point matrix :return: np.ndarray

property points_list

Surface point list :return: np.ndarray

property polygon

Surface polygon :return: None or pyny3d.Polygon

property projection

Projected surface (Z projection) :return: Surface

property shapely

Surface shapely (Z projection) :return: None or pyny3d.Polygon

shared(surface)[source]

Check if given surface share some area with this surface :param surface: Surface :return: None

property swr

Get surface short wave reflectance :return: float

property type

Surface type Ground, Wall or Roof :return: str

Thermal Boundary

ThermalBoundary module SPDX - License - Identifier: LGPL - 3.0 - or -later Copyright © 2020 Project Author Guille Gutierrez guillermo.gutierrezmorote@concordia.ca

class city_model_structure.thermal_boundary.ThermalBoundary(surface, delimits)[source]

ThermalBoundary class

property area

Thermal boundary area in square meters :return: float

property area_above_ground

Thermal boundary area above ground in square meters :return: float

property area_below_ground

Thermal boundary area below ground in square meters :return: float

property azimuth

Thermal boundary azimuth in radians :return: float

property delimits

Get the thermal zones delimited by the thermal boundary :return: [ThermalZone]

property inclination

Thermal boundary inclination in radians :return: float

property layers

Get thermal boundary layers :return: [Layers]

property outside_solar_absorptance

Get thermal boundary outside solar absorptance :return: float

property outside_thermal_absorptance

Get thermal boundary outside thermal absorptance :return: float

property outside_visible_absorptance

Get thermal boundary outside visible absorptance :return: float

property shortwave_reflectance

Get thermal boundary shortwave reflectance :return: float

property thermal_openings

Get thermal boundary thermal openings :return: [ThermalOpening]

property type

Thermal boundary surface type :return: str

property u_value

Thermal boundary u value in W/m2K internal and external convective coefficient in W/m2K values, can be configured at configuration.ini :return: float

property window_area

Thermal boundary window area in square meters :return: float

property window_ratio

Get thermal boundary window ratio :return: float

Thermal Opening

ThermalOpening module SPDX - License - Identifier: LGPL - 3.0 - or -later Copyright © 2020 Project Author Guille Gutierrez guillermo.gutierrezmorote@concordia.ca

class city_model_structure.thermal_opening.ThermalOpening[source]

ThermalOpening class

property back_side_solar_transmittance_at_normal_incidence

Get thermal opening back side solar transmittance at normal incidence :return: float

property conductivity

Get thermal opening conductivity in W/mK :return: float

property frame_ratio

Get thermal opening frame ratio :return: float

property front_side_solar_transmittance_at_normal_incidence

Get thermal opening front side solar transmittance at normal incidence :return: float

property g_value

Get thermal opening g value :return: float

property openable_ratio

Get thermal opening openable ratio, NOT IMPLEMENTED :return: Exception

property overall_u_value

Get thermal opening overall u value in W/m2K :return: float

property thickness

Get thermal opening thickness in meters :return:

Thermal Zone

ThermalZone module SPDX - License - Identifier: LGPL - 3.0 - or -later Copyright © 2020 Project Author Guille Gutierrez guillermo.gutierrezmorote@concordia.ca

class city_model_structure.thermal_zone.ThermalZone(surfaces)[source]

ThermalZone class

property additional_thermal_bridge_u_value

Get thermal zone additional thermal bridge u value W/m2K :return: float

property bounded

Get thermal boundaries bounding with the thermal zone :return: [ThermalBoundary]

property cooled

Get thermal zone cooled flag :return: Boolean

property effective_thermal_capacity

Get thermal zone effective thermal capacity :return: float

property floor_area

Get thermal zone floor area in square meters :return: float

property heated

Get thermal zone heated flag :return: Boolean

property indirectly_heated_area_ratio

Get thermal zone indirectly heated area ratio :return: float

property infiltration_rate_system_off

Get thermal zone infiltration rate system off in air changes per hour :return: float

property infiltration_rate_system_on

Get thermal zone infiltration rate system on in air changes per hour :return: float

property surfaces

Get thermal zone surfaces :return: [Surface]

property usage_zones

Get thermal zone usage zones :return: [UsageZone]

Usage Zone

UsageZone module SPDX - License - Identifier: LGPL - 3.0 - or -later Copyright © 2020 Project Author Guille Gutierrez guillermo.gutierrezmorote@concordia.ca

class city_model_structure.usage_zone.UsageZone[source]

UsageZone class

property cooling_setpoint

Get usage zone cooling setpoint in celsius grads :return: float

property days_year

Get usage zone usage days per year :return: float

property heating_setback

Get usage zone heating setback in celsius grads :return: float

property heating_setpoint

Get usage zone heating set point in celsius grads :return: float

property hours_day

Get usage zone usage hours per day :return: float

property internal_gains

Get usage zone internal gains :return: [InternalGains]

property mechanical_air_change

Set usage zone mechanical air change in air change per hour :return: float

property usage

Get usage zone usage :return: str

Factories

Geometry Factory

GeometryFactory retrieve the specific geometric module to load the given format SPDX - License - Identifier: LGPL - 3.0 - or -later Copyright © 2020 Project Author Guille Gutierrez guillermo.gutierrezmorote@concordia.ca

class geometry.geometry_factory.GeometryFactory(file_type, path)[source]

GeometryFactory class

property city

Load the city model structure from a geometry source :return: City

Physics Factory

PhysicsFactory retrieve the specific physics module for the given region SPDX - License - Identifier: LGPL - 3.0 - or -later Copyright © 2020 Project Author Guille Gutierrez guillermo.gutierrezmorote@concordia.ca

class physics.physics_factory.PhysicsFactory(handler, city, base_path='data/physics')[source]

PhysicsFactor class

factory()[source]

Enrich the city with the physics information :return: None

Usage Factory

UsageFactory retrieve the specific usage module for the given region SPDX - License - Identifier: LGPL - 3.0 - or -later Copyright © 2020 Project Author Guille Gutierrez guillermo.gutierrezmorote@concordia.ca

class usage.usage_factory.UsageFactory(handler, city)[source]

UsageFactory class

factory()[source]

Enrich the city with the usage information :return: None