Skip to main content

Generate MDOF lumped mass FE model using basic building information

Project description

MDOFModel

基于Python的多自由度(MDOF)结构地震工程分析库。

项目介绍

MDOFModel是一个用于结构工程中多自由度(MDOF)模型分析的Python库,主要用于地震工程分析。该工具可以通过基本建筑信息生成集中质量有限元模型,进行动力分析、推覆分析、损失评估和增量动力分析(IDA)等。

功能特点

  • 结构模型生成:基于基本建筑参数(如层数、面积、结构类型)生成MDOF结构模型
  • 地震动力分析:进行线性和非线性时程分析
  • 推覆分析:实施结构静力推覆分析
  • 增量动力分析(IDA):采用FEMA P-695远场地震记录执行IDA分析
  • 损失评估:基于Hazus方法进行地震损失评估
  • OpenSees集成:与OpenSees进行无缝对接

安装说明

使用pip安装本库:

pip install MDOFModel

依赖项

  • Python >= 3.12
  • numpy
  • pandas
  • matplotlib
  • openseespy
  • openpyxl
  • eqsig

使用示例

示例1:动力分析

from MDOFModel import MDOF_CN as mcn
from MDOFModel import MDOFOpenSees as mops

# 创建3层结构模型
NumofStories = 3
bld = mcn.MDOF_CN(NumofStories, 1000, 'S2', City='石家庄',longitude=114.52,latitude=38.05)
bld.OutputStructuralParameters('structural parameters')

# 执行动力分析
fe = mops.MDOFOpenSees(NumofStories, [bld.mass]*bld.N, [bld.K0]*bld.N, bld.DampingRatio,
    bld.HystereticCurveType, bld.Vyi, bld.betai, bld.etai, bld.DeltaCi, bld.tao)
fe.DynamicAnalysis('H-E12140', 3.0, True)

# 绘制层间位移时程
fe.PlotForceDriftHistory(1)

示例2:增量动力分析(IDA)

from MDOFModel import IDA
from MDOFModel import MDOF_LU as mlu
from MDOFModel import MDOFOpenSees as mops
import numpy as np

# 创建结构模型
NumofStories = 3
bld = mlu.MDOF_LU(NumofStories, 3600, 'S2')
bld.set_DesignLevel('pre-code')

# 设置OpenSees模型
fe = mops.MDOFOpenSees(NumofStories, [bld.mass]*bld.N, [bld.K0]*bld.N, bld.DampingRatio,
    bld.HystereticCurveType, bld.Vyi, bld.betai, bld.etai, bld.DeltaCi, bld.tao)

# 执行IDA分析
IM_list = np.linspace(0.1, 2.0, 10).tolist()
IDA_obj = IDA.IDA(fe)
IDA_result = IDA_obj.Analyze(IM_list, EQRecordFile_list, bld.T1)

# 保存和绘制结果
IDA_result.to_csv('IDA_results.csv')
IDA.IDA.plot_IDA_results(IDA_result, Stat=True, FigName='IDA.jpg')

主要模块说明

  • MDOF_CN:基于中国规范的多自由度模型生成
  • MDOF_LU:通用多自由度模型生成
  • MDOFOpenSees:OpenSees接口,用于建模和分析
  • IDA:增量动力分析
  • BldLossAssessment:建筑损失评估
  • Tool_IDA:IDA分析辅助工具
  • Tool_LossAssess:损失评估辅助工具
  • ReadRecord:地震记录读取工具

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mdofmodel-0.1.0.tar.gz (8.2 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mdofmodel-0.1.0-py3-none-any.whl (8.1 MB view details)

Uploaded Python 3

File details

Details for the file mdofmodel-0.1.0.tar.gz.

File metadata

  • Download URL: mdofmodel-0.1.0.tar.gz
  • Upload date:
  • Size: 8.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for mdofmodel-0.1.0.tar.gz
Algorithm Hash digest
SHA256 2d6ebc19b8dabb0635520fbbf989fee161f82ba0d9e232b5a2b38b7aa7a57c08
MD5 62109ad6033cd0c3a08ce86da10c17fe
BLAKE2b-256 4d7d9b80a2cbf25287108d286cf64da59b2844487d0d9b177d2294b70d8a2572

See more details on using hashes here.

File details

Details for the file mdofmodel-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: mdofmodel-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 8.1 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for mdofmodel-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8f6202f42afc7807460cde07327147c8648349dccf4598b0e2169a75a1cedceb
MD5 f829ed41e99ea59d12a0141ff0fbbf3f
BLAKE2b-256 4def098a7d803ba5a42695e0e876327cfa1a983ac00f8a4724781884a4af8c64

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page