simdesign 1.2.1__tar.gz → 1.2.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {simdesign-1.2.1 → simdesign-1.2.2}/PKG-INFO +1 -1
- {simdesign-1.2.1 → simdesign-1.2.2}/pyproject.toml +1 -1
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bcim/factory.py +1 -1
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bcim/parametrization.py +17 -9
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bcim/randomization.py +24 -12
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/baselib/building.py +1 -1
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_post18_dch/loads.py +8 -2
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_post18_dcm/loads.py +8 -2
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/utils/stats.py +9 -6
- {simdesign-1.2.1 → simdesign-1.2.2}/LICENSE +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/docs/README.md +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/__init__.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/__init__.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bcim/__init__.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bcim/data/eu_cdh.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bcim/data/eu_cdl.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bcim/data/eu_cdm.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bcim/data/eu_cdn.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bcim/data/layouts.csv +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bcim/data/tr_0018_dch.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bcim/data/tr_0018_dcm.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bcim/data/tr_7599.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bcim/data/tr_post18_dch.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bcim/data/tr_post18_dcm.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/__init__.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/baselib/__init__.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/baselib/analysis.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/baselib/beam.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/baselib/column.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/baselib/infill.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/baselib/joint.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/baselib/loads.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/baselib/materials.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/baselib/quality.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/baselib/rebars.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/baselib/slab.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/baselib/stairs.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdh/__init__.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdh/analysis.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdh/beam.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdh/building.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdh/column.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdh/data/loads.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdh/data/materials.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdh/data/quality.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdh/data/rebars.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdh/infill.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdh/joint.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdh/loads.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdh/materials.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdh/quality.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdh/rebars.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdh/slab.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdh/stairs.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdl/__init__.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdl/analysis.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdl/beam.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdl/building.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdl/column.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdl/data/loads.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdl/data/materials.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdl/data/quality.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdl/data/rebars.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdl/infill.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdl/joint.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdl/loads.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdl/materials.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdl/quality.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdl/rebars.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdl/slab.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdl/stairs.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdm/__init__.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdm/analysis.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdm/beam.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdm/building.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdm/column.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdm/data/loads.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdm/data/materials.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdm/data/quality.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdm/data/rebars.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdm/infill.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdm/joint.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdm/loads.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdm/materials.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdm/quality.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdm/rebars.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdm/slab.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdm/stairs.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdn/__init__.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdn/analysis.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdn/beam.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdn/building.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdn/column.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdn/data/loads.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdn/data/materials.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdn/data/quality.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdn/data/rebars.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdn/infill.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdn/joint.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdn/loads.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdn/materials.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdn/quality.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdn/rebars.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdn/slab.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/eu_cdn/stairs.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/factory.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_0018_dch/__init__.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_0018_dch/analysis.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_0018_dch/beam.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_0018_dch/building.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_0018_dch/column.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_0018_dch/data/loads.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_0018_dch/data/materials.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_0018_dch/data/quality.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_0018_dch/data/rebars.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_0018_dch/infill.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_0018_dch/joint.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_0018_dch/loads.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_0018_dch/materials.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_0018_dch/quality.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_0018_dch/rebars.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_0018_dch/slab.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_0018_dch/stairs.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_0018_dcm/__init__.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_0018_dcm/analysis.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_0018_dcm/beam.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_0018_dcm/building.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_0018_dcm/column.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_0018_dcm/data/loads.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_0018_dcm/data/materials.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_0018_dcm/data/quality.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_0018_dcm/data/rebars.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_0018_dcm/infill.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_0018_dcm/joint.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_0018_dcm/loads.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_0018_dcm/materials.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_0018_dcm/quality.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_0018_dcm/rebars.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_0018_dcm/slab.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_0018_dcm/stairs.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_7599/__init__.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_7599/analysis.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_7599/beam.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_7599/building.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_7599/column.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_7599/data/design_tables.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_7599/data/loads.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_7599/data/materials.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_7599/data/quality.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_7599/data/rebars.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_7599/infill.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_7599/joint.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_7599/loads.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_7599/materials.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_7599/quality.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_7599/rebars.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_7599/slab.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_7599/stairs.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_post18_dch/__init__.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_post18_dch/analysis.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_post18_dch/beam.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_post18_dch/building.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_post18_dch/column.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_post18_dch/data/loads.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_post18_dch/data/materials.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_post18_dch/data/quality.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_post18_dch/data/rebars.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_post18_dch/infill.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_post18_dch/joint.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_post18_dch/materials.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_post18_dch/quality.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_post18_dch/rebars.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_post18_dch/slab.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_post18_dch/stairs.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_post18_dcm/__init__.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_post18_dcm/analysis.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_post18_dcm/beam.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_post18_dcm/building.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_post18_dcm/column.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_post18_dcm/data/loads.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_post18_dcm/data/materials.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_post18_dcm/data/quality.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_post18_dcm/data/rebars.json +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_post18_dcm/infill.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_post18_dcm/joint.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_post18_dcm/materials.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_post18_dcm/quality.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_post18_dcm/rebars.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_post18_dcm/slab.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bdim/tr_post18_dcm/stairs.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/__init__.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/baselib/__init__.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/baselib/beam.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/baselib/building.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/baselib/column.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/baselib/constants.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/baselib/floor.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/baselib/foundation.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/baselib/infill.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/baselib/joint.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/baselib/node.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/cp01/__init__.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/cp01/beam.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/cp01/building.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/cp01/column.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/cp01/floor.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/cp01/foundation.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/cp01/infill.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/cp01/joint.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/cp02/__init__.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/cp02/beam.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/cp02/building.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/cp02/column.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/cp02/floor.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/cp02/foundation.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/cp02/infill.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/cp02/joint.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/cp03/__init__.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/cp03/beam.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/cp03/building.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/cp03/column.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/cp03/floor.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/cp03/foundation.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/cp03/infill.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/cp03/joint.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/dp01/__init__.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/dp01/beam.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/dp01/building.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/dp01/column.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/dp01/floor.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/dp01/foundation.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/dp01/infill.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/dp01/joint.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/dp02/__init__.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/dp02/beam.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/dp02/building.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/dp02/column.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/dp02/floor.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/dp02/foundation.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/dp02/infill.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/dp02/joint.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/dp03/__init__.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/dp03/beam.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/dp03/building.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/dp03/column.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/dp03/floor.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/dp03/foundation.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/dp03/infill.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/dp03/joint.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/dp04/__init__.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/dp04/beam.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/dp04/building.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/dp04/column.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/dp04/floor.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/dp04/foundation.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/dp04/infill.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/dp04/joint.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/dp05/__init__.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/dp05/beam.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/dp05/building.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/dp05/column.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/dp05/floor.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/dp05/foundation.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/dp05/infill.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/dp05/joint.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/bnsm/factory.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/geometry/__init__.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/geometry/base.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/geometry/custom.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/rcmrf/geometry/standard.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/utils/__init__.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/utils/mesh.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/utils/misc.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/utils/plotter.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/utils/rcsection.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/utils/tags.py +0 -0
- {simdesign-1.2.1 → simdesign-1.2.2}/simdesign/utils/units.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[tool.poetry]
|
|
2
2
|
name = "simdesign"
|
|
3
|
-
version = "1.2.
|
|
3
|
+
version = "1.2.2"
|
|
4
4
|
description = "The built environment data (BED) framework for enhancing seismic vulnerability modeling through simulated design."
|
|
5
5
|
authors = [
|
|
6
6
|
"Volkan Ozsarac <volkan.ozsarac@iusspavia.it>",
|
|
@@ -117,9 +117,12 @@ class TypicalStoreyHeight(BaseModel):
|
|
|
117
117
|
Attributes
|
|
118
118
|
----------
|
|
119
119
|
cv : float
|
|
120
|
-
Coefficient of variation (
|
|
120
|
+
Coefficient of variation (standard deviation / mean) of the
|
|
121
|
+
log-normal distribution before truncation.
|
|
121
122
|
mu : float
|
|
122
|
-
Mean
|
|
123
|
+
Mean (arithmetic) of the log-normal distribution before truncation.
|
|
124
|
+
The mean of the sampled typical storey heights differs from it
|
|
125
|
+
because of the truncation.
|
|
123
126
|
lower_bound : float
|
|
124
127
|
Lower bound value.
|
|
125
128
|
upper_bound : float
|
|
@@ -153,24 +156,29 @@ class StandardBayWidth(BaseModel):
|
|
|
153
156
|
Attributes
|
|
154
157
|
----------
|
|
155
158
|
corr_coeff_xy : float
|
|
156
|
-
Correlation coefficient between
|
|
157
|
-
|
|
159
|
+
Correlation coefficient between the standard normal variables from
|
|
160
|
+
which the bay widths in the two principal horizontal directions
|
|
161
|
+
(-X and -Y) are obtained (Gaussian copula). Because of the
|
|
162
|
+
truncation, the correlation between the bay widths themselves is
|
|
163
|
+
close to, but not equal to, it.
|
|
158
164
|
lower_bound_x : float
|
|
159
165
|
Lower bound of truncated log-normal distribution (-X).
|
|
160
166
|
upper_bound_x : float
|
|
161
167
|
Upper bound of truncated log-normal distribution (-X).
|
|
162
168
|
theta_x : float
|
|
163
|
-
Median of log-normal distribution (-X).
|
|
169
|
+
Median of log-normal distribution before truncation (-X).
|
|
164
170
|
sigma_x : float
|
|
165
|
-
Logarithmic standard deviation of the lognormal distribution
|
|
171
|
+
Logarithmic standard deviation of the lognormal distribution before
|
|
172
|
+
truncation (-X).
|
|
166
173
|
lower_bound_y : float
|
|
167
174
|
Lower bound of truncated log-normal distribution (-Y).
|
|
168
175
|
upper_bound_y : float
|
|
169
176
|
Upper bound of truncated log-normal distribution (-Y).
|
|
170
177
|
theta_y : float
|
|
171
|
-
Median of log-normal distribution (-Y).
|
|
178
|
+
Median of log-normal distribution before truncation (-Y).
|
|
172
179
|
sigma_y : float
|
|
173
|
-
Logarithmic standard deviation of the lognormal distribution
|
|
180
|
+
Logarithmic standard deviation of the lognormal distribution before
|
|
181
|
+
truncation (-Y).
|
|
174
182
|
"""
|
|
175
183
|
corr_coeff_xy: float
|
|
176
184
|
lower_bound_x: float
|
|
@@ -235,7 +243,7 @@ class InputData(BaseModel):
|
|
|
235
243
|
beta : float
|
|
236
244
|
Design lateral load factor.
|
|
237
245
|
beta_v : float | None
|
|
238
|
-
|
|
246
|
+
Design vertical seismic load factor.
|
|
239
247
|
num_storeys : int
|
|
240
248
|
Number of storeys in the building.
|
|
241
249
|
design_class : str
|
|
@@ -125,15 +125,20 @@ class Sampler:
|
|
|
125
125
|
"""Set staircase span lengths.
|
|
126
126
|
|
|
127
127
|
Staircase span lengths are represented by uniform distribution.
|
|
128
|
+
The samples are rounded to 0.05 m.
|
|
128
129
|
|
|
129
130
|
Parameters
|
|
130
131
|
----------
|
|
131
132
|
lower_bound : float
|
|
132
133
|
Lower boundary of the output interval.
|
|
133
|
-
All values generated will be greater than or equal to lower bound.
|
|
134
134
|
upper_bound : float
|
|
135
135
|
Upper boundary of the output interval.
|
|
136
|
-
|
|
136
|
+
|
|
137
|
+
Notes
|
|
138
|
+
-----
|
|
139
|
+
The samples are drawn from [lower_bound, upper_bound) and then
|
|
140
|
+
rounded to 0.05 m, so they may fall slightly outside the bounds
|
|
141
|
+
when these are not multiples of 0.05 m.
|
|
137
142
|
|
|
138
143
|
Returns
|
|
139
144
|
-------
|
|
@@ -162,21 +167,24 @@ class Sampler:
|
|
|
162
167
|
Typical span lengths are represented with truncated log-normal
|
|
163
168
|
distribution. It is assumed that span lengths are correlated.
|
|
164
169
|
The samples are generated from multivariate truncated lognormal
|
|
165
|
-
distribution.
|
|
170
|
+
distribution, and rounded to 0.05 m.
|
|
166
171
|
|
|
167
172
|
Parameters
|
|
168
173
|
----------
|
|
169
174
|
corr_coeff : float
|
|
170
|
-
Correlation coefficient
|
|
175
|
+
Correlation coefficient between the standard normal variables
|
|
176
|
+
from which the span lengths in x and y are obtained (Gaussian
|
|
177
|
+
copula). Because of the truncation, the correlation between
|
|
178
|
+
the span lengths themselves is close to, but not equal to, it.
|
|
171
179
|
lower_bound : Tuple[float]
|
|
172
180
|
Lower bound for truncated log-normal distribution (x, y).
|
|
173
181
|
upper_bound : Tuple[float]
|
|
174
182
|
Upper bound for truncated log-normal distribution (x, y).
|
|
175
183
|
theta : Tuple[float]
|
|
176
|
-
Median of log-normal distribution.
|
|
184
|
+
Median of the log-normal distribution before truncation (x, y).
|
|
177
185
|
std_ln : Tuple[float]
|
|
178
186
|
Logarithmic standard deviation of the log-normal
|
|
179
|
-
distribution (x, y).
|
|
187
|
+
distribution before truncation (x, y).
|
|
180
188
|
|
|
181
189
|
Notes
|
|
182
190
|
-----
|
|
@@ -248,14 +256,17 @@ class Sampler:
|
|
|
248
256
|
"""Set typical storey heights.
|
|
249
257
|
|
|
250
258
|
Typical storey heights are represented with truncated log-normal
|
|
251
|
-
distribution.
|
|
259
|
+
distribution. The samples are rounded to 0.05 m.
|
|
252
260
|
|
|
253
261
|
Parameters
|
|
254
262
|
----------
|
|
255
263
|
cv : float
|
|
256
|
-
Coefficient of variation
|
|
264
|
+
Coefficient of variation (standard deviation / mean) of the
|
|
265
|
+
log-normal distribution before truncation.
|
|
257
266
|
mu : float
|
|
258
|
-
Mean of normal
|
|
267
|
+
Mean (arithmetic, not logarithmic) of the log-normal
|
|
268
|
+
distribution before truncation. The mean of the samples
|
|
269
|
+
differs from it because of the truncation.
|
|
259
270
|
lower_bound : float
|
|
260
271
|
Lower bound of truncated log-normal distribution.
|
|
261
272
|
upper_bound : float
|
|
@@ -310,8 +321,9 @@ class Sampler:
|
|
|
310
321
|
|
|
311
322
|
Notes
|
|
312
323
|
-----
|
|
313
|
-
1. `ground_storey_height = min(factor *
|
|
314
|
-
max_height)`
|
|
324
|
+
1. `ground_storey_height = min(round_005(factor *
|
|
325
|
+
typical_storey_heights), max_height)`, where `round_005` rounds to
|
|
326
|
+
0.05 m.
|
|
315
327
|
2. Factors have different probabilities.
|
|
316
328
|
|
|
317
329
|
Examples
|
|
@@ -370,7 +382,7 @@ class Sampler:
|
|
|
370
382
|
Composite slabs with pre-fabricated joists and ceramic blocks (3: HS).
|
|
371
383
|
2. Slab type is assigned as HS, if minimum span length is greater than
|
|
372
384
|
the upper limit for minimum solid slab span length
|
|
373
|
-
(minimum span length
|
|
385
|
+
(minimum span length > `max_ss_short_span`).
|
|
374
386
|
3. Otherwise, if the ratio of maximum to minimum span lengths is
|
|
375
387
|
greater or equal to `max_ss2_aspect_ratio`, slab type is
|
|
376
388
|
randomly as SS1 or HS based on `ss1_prob_given_ss1_or_hs`.
|
|
@@ -70,7 +70,7 @@ class TaxonomyData:
|
|
|
70
70
|
design_class : str
|
|
71
71
|
Building design class selected.
|
|
72
72
|
beta_v : float, optional
|
|
73
|
-
|
|
73
|
+
Design vertical seismic load factor. By default None.
|
|
74
74
|
staircase_slab_depth : float, optional
|
|
75
75
|
Depth of the staircase slabs. By default None.
|
|
76
76
|
slab_thickness : float, optional
|
|
@@ -115,13 +115,19 @@ class Loads(LoadsBase):
|
|
|
115
115
|
beta_v : float | None
|
|
116
116
|
Vertical seismic coefficient. If None, it is taken as 0.0, i.e.,
|
|
117
117
|
the vertical load effect is neglected.
|
|
118
|
+
|
|
119
|
+
Notes
|
|
120
|
+
-----
|
|
121
|
+
Seismic loading is added in vertical direction based on Sections
|
|
122
|
+
4.4.3.2 and 4.4.4.1 of TBEC-2018. Here, ``beta_v`` refers to the
|
|
123
|
+
short-period design spectral acceleration coefficient (SDS).
|
|
118
124
|
"""
|
|
119
125
|
if beta_v is None:
|
|
120
126
|
beta_v = 0.0
|
|
121
127
|
seismic_strs = ["E+X", "E-X", "E+Y", "E-Y"]
|
|
122
128
|
for combo in self.combinations:
|
|
123
129
|
if any(item in seismic_strs for item in combo.loads.keys()):
|
|
124
|
-
if combo.loads.get("G") == 1.0:
|
|
130
|
+
if combo.loads.get("G") == 1.0: # Eqn. 4.11
|
|
125
131
|
combo.loads["G"] = round(1.0 + 0.3 * (2/3) * beta_v, 2)
|
|
126
|
-
elif combo.loads.get("G") == 0.9:
|
|
132
|
+
elif combo.loads.get("G") == 0.9: # Eqn. 4.12
|
|
127
133
|
combo.loads["G"] = round(0.9 - 0.3 * (2/3) * beta_v, 2)
|
|
@@ -115,13 +115,19 @@ class Loads(LoadsBase):
|
|
|
115
115
|
beta_v : float | None
|
|
116
116
|
Vertical seismic coefficient. If None, it is taken as 0.0, i.e.,
|
|
117
117
|
the vertical load effect is neglected.
|
|
118
|
+
|
|
119
|
+
Notes
|
|
120
|
+
-----
|
|
121
|
+
Seismic loading is added in vertical direction based on Sections
|
|
122
|
+
4.4.3.2 and 4.4.4.1 of TBEC-2018. Here, ``beta_v`` refers to the
|
|
123
|
+
short-period design spectral acceleration coefficient (SDS).
|
|
118
124
|
"""
|
|
119
125
|
if beta_v is None:
|
|
120
126
|
beta_v = 0.0
|
|
121
127
|
seismic_strs = ["E+X", "E-X", "E+Y", "E-Y"]
|
|
122
128
|
for combo in self.combinations:
|
|
123
129
|
if any(item in seismic_strs for item in combo.loads.keys()):
|
|
124
|
-
if combo.loads.get("G") == 1.0:
|
|
130
|
+
if combo.loads.get("G") == 1.0: # Eqn. 4.11
|
|
125
131
|
combo.loads["G"] = round(1.0 + 0.3 * (2/3) * beta_v, 2)
|
|
126
|
-
elif combo.loads.get("G") == 0.9:
|
|
132
|
+
elif combo.loads.get("G") == 0.9: # Eqn. 4.12
|
|
127
133
|
combo.loads["G"] = round(0.9 - 0.3 * (2/3) * beta_v, 2)
|
|
@@ -69,7 +69,7 @@ def random_truncated_lognormal(size: int, mu: np.ndarray, sigma: np.ndarray,
|
|
|
69
69
|
|
|
70
70
|
def truncated_lognormal_cdf_inv(
|
|
71
71
|
cdf: np.ndarray, mu: np.ndarray, sigma: np.ndarray,
|
|
72
|
-
lower: np.ndarray, upper:
|
|
72
|
+
lower: np.ndarray, upper: np.ndarray
|
|
73
73
|
) -> np.ndarray:
|
|
74
74
|
"""Inverts the truncated (lower-upper) log-normal CDF.
|
|
75
75
|
|
|
@@ -78,9 +78,10 @@ def truncated_lognormal_cdf_inv(
|
|
|
78
78
|
cdf : np.ndarray
|
|
79
79
|
The value of the cumulative distribution.
|
|
80
80
|
mu : np.ndarray
|
|
81
|
-
Mean of the log-normal
|
|
81
|
+
Mean of the log-normal distribution in log-space, i.e., of ln(X).
|
|
82
82
|
sigma : np.ndarray
|
|
83
|
-
Standard deviation of the log-normal
|
|
83
|
+
Standard deviation of the log-normal distribution in log-space,
|
|
84
|
+
i.e., of ln(X).
|
|
84
85
|
lower : np.ndarray
|
|
85
86
|
Lower truncation limit.
|
|
86
87
|
upper : np.ndarray
|
|
@@ -265,8 +266,10 @@ def random_multivariate_truncated_lognormal(
|
|
|
265
266
|
size : int
|
|
266
267
|
Number of samples to generate.
|
|
267
268
|
rho : np.ndarray
|
|
268
|
-
Correlation matrix (n x n)
|
|
269
|
-
|
|
269
|
+
Correlation matrix (n x n) of the standard normal variables from
|
|
270
|
+
which the samples are obtained (Gaussian copula). Because of the
|
|
271
|
+
truncation, the correlations between the samples themselves are
|
|
272
|
+
close to, but not equal to, these values.
|
|
270
273
|
lower_bound : np.ndarray
|
|
271
274
|
Lower bounds for the truncated log-normal distributions.
|
|
272
275
|
upper_bound : np.ndarray
|
|
@@ -292,7 +295,7 @@ def random_multivariate_truncated_lognormal(
|
|
|
292
295
|
if not (rho.shape == (n, n)):
|
|
293
296
|
raise ValueError("Correlation matrix must be square and match the "
|
|
294
297
|
"dimension of the input parameters.")
|
|
295
|
-
if not (len(lower_bound) == len(upper_bound) == n):
|
|
298
|
+
if not (len(lower_bound) == len(upper_bound) == len(std_ln) == n):
|
|
296
299
|
raise ValueError(
|
|
297
300
|
"Bounds, theta, and std_ln must all have the same length.")
|
|
298
301
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|