simdesign.rcmrf.bdim.factory
BDIM factory module.
This module provides a factory interface for creating Building Design Information Model (BDIM) objects for a given design class.
The BDIM class dynamically maps a string-based design class identifier
(e.g., "eu_cdh") to the corresponding design-class-specific BDIM
implementation and directly instantiates and returns the appropriate
BuildingBase subclass — not a BDIM instance itself.
All BDIM implementations inherit from BuildingBase and define
design-class-specific rules and practices.
- simdesign.rcmrf.bdim.factory.DCC = {'eu_cdh': <class 'simdesign.rcmrf.bdim.eu_cdh.building.Building'>, 'eu_cdl': <class 'simdesign.rcmrf.bdim.eu_cdl.building.Building'>, 'eu_cdm': <class 'simdesign.rcmrf.bdim.eu_cdm.building.Building'>, 'eu_cdn': <class 'simdesign.rcmrf.bdim.eu_cdn.building.Building'>, 'tr_0018_dch': <class 'simdesign.rcmrf.bdim.tr_0018_dch.building.Building'>, 'tr_0018_dcm': <class 'simdesign.rcmrf.bdim.tr_0018_dcm.building.Building'>, 'tr_7599': <class 'simdesign.rcmrf.bdim.tr_7599.building.Building'>, 'tr_post18_dch': <class 'simdesign.rcmrf.bdim.tr_post18_dch.building.Building'>, 'tr_post18_dcm': <class 'simdesign.rcmrf.bdim.tr_post18_dcm.building.Building'>}
Registry of available BDIM implementations or design class constructors.
- class simdesign.rcmrf.bdim.factory.BDIM(taxonomy)[source]
Bases:
objectBDIM factory to generate design-class-specific BDIM instances.
This class selects the appropriate
BuildingBasesubclass from the module-levelDCCregistry based on thedesign_classfield of the inputTaxonomyData, and returns an initialized instance of that subclass directly.See also
EuCDNBuildings designed without explicit seismic provisions. These typically represent structures constructed before the 1960s and designed only for gravity loads using allowable stress methods.
EuCDLBuildings designed with early seismic provisions (approximately 1960s-1970s). Lateral loads are considered, but design is based on allowable stress methods and simplified seismic force distributions.
EuCDMBuildings designed according to more modern seismic design codes (approximately 1970s-2000s) using limit-state design concepts and improved detailing rules to enhance structural ductility.
EuCDHBuildings designed according to contemporary seismic design standards (early 2000s-present), implementing capacity design principles and reinforcement detailing rules aimed at achieving target ductility levels (e.g., Eurocode 8-based design for moderate ductility level, DCM).
Tr7599Buildings constructed between 1975 and 1999, designed according to TBEC-1975 and reinforced concrete design provisions in TS500-1984. This class represents early seismic design practices in Türkiye, often associated with relatively low ductility capacity and variable construction quality.
Tr0018DCMBuildings constructed between 2000 and 2018 with moderate ductility level (DCM). Designs follow provisions from TBEC-1998 (largely retained in TBEC-2007) together with TS500-2000 reinforced concrete design rules. Capacity design principles are generally not enforced.
Tr0018DCHBuildings constructed between 2000 and 2018 with high ductility level (DCH). Designs follow TBEC-1998 / TBEC-2007 seismic provisions and TS500-2000, including capacity design principles such as the strong-column-weak-beam concept.
TrPost18DCMBuildings constructed after 2018 with moderate ductility level (DCM), designed according to the TBEC-2018 seismic code and TS500-2000. These buildings incorporate updated seismic hazard definitions and improved detailing rules introduced in the modern code framework.
TrPost18DCHBuildings constructed after 2018 with high ductility level (DCH), designed according to TBEC-2018 with full implementation of modern capacity design principles and stricter detailing requirements to ensure enhanced seismic performance.
- Parameters:
taxonomy (TaxonomyData)
- Return type: