二维结构有限元分析
项目描述
anaStruct 2D Frames and Trusses
分析二维框架和桁架的细长结构。确定弯矩、剪力、轴向力和位移。
安装
对于活跃开发版本
$ pip install git+https://github.com/ritchie46/anaStruct.git
或者对于某个发布版
$ pip install anastruct
阅读文档!
问题
有问题?请在 gitter 上提问。
包含
- 桁架 :heavy_check_mark
- 梁 :heavy_check_mark
- 弯矩线 :heavy_check_mark
- 轴向力线 :heavy_check_mark
- 剪力线 :heavy_check_mark
- 位移线 :heavy_check_mark
- 铰支座 :heavy_check_mark
- 固定支座 :heavy_check_mark
- 弹簧支座 :heavy_check_mark
- 元素方向上的q载 :heavy_check_mark
- 节点在全局x, y方向的点荷载:√
- 恒载:√
- 全局y方向的q荷载:√
- 铰接元素:√
- 旋转弹簧:√
- 非线性节点:√
- 几何非线性:√
- 荷载情况和荷载组合:√
- 截面通用类型 - 矩形和圆形:√
- EU、US、UK钢材截面数据库:√
示例
from anastruct import SystemElements
import numpy as np
ss = SystemElements()
element_type = 'truss'
# Create 2 towers
width = 6
span = 30
k = 5e3
# create triangles
y = np.arange(1, 10) * np.pi
x = np.cos(y) * width * 0.5
x -= x.min()
for length in [0, span]:
x_left_column = np.ones(y[::2].shape) * x.min() + length
x_right_column = np.ones(y[::2].shape[0] + 1) * x.max() + length
# add triangles
ss.add_element_grid(x + length, y, element_type=element_type)
# add vertical elements
ss.add_element_grid(x_left_column, y[::2], element_type=element_type)
ss.add_element_grid(x_right_column, np.r_[y[0], y[1::2], y[-1]], element_type=element_type)
ss.add_support_spring(
node_id=ss.find_node_id(vertex=[x_left_column[0], y[0]]),
translation=2,
k=k)
ss.add_support_spring(
node_id=ss.find_node_id(vertex=[x_right_column[0], y[0]]),
translation=2,
k=k)
# add top girder
ss.add_element_grid([0, width, span, span + width], np.ones(4) * y.max(), EI=10e3)
# Add stability elements at the bottom.
ss.add_truss_element([[0, y.min()], [width, y.min()]])
ss.add_truss_element([[span, y.min()], [span + width, y.min()]])
for el in ss.element_map.values():
# apply wind load on elements that are vertical
if np.isclose(np.sin(el.ai), 1):
ss.q_load(
q=1,
element_id=el.id,
direction='x'
)
ss.show_structure()
ss.solve()
ss.show_displacement(factor=2)
ss.show_bending_moment()
from anastruct import SystemElements
ss = SystemElements(EA=15000, EI=5000)
# Add beams to the system.
ss.add_element(location=[0, 5])
ss.add_element(location=[[0, 5], [5, 5]])
ss.add_element(location=[[5, 5], [5, 0]])
# Add a fixed support at node 1.
ss.add_support_fixed(node_id=1)
# Add a rotational spring support at node 4.
ss.add_support_spring(node_id=4, translation=3, k=4000)
# Add loads.
ss.point_load(Fx=30, node_id=2)
ss.q_load(q=-10, element_id=2)
# Solve
ss.solve()
# Get visual results.
ss.show_structure()
ss.show_reaction_force()
ss.show_axial_force()
ss.show_shear_force()
ss.show_bending_moment()
ss.show_displacement()
实际应用案例。
项目详情
下载文件
下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。
源分发
anastruct-1.6.0.tar.gz (540.9 kB 查看哈希值)
构建分发
anastruct-1.6.0-cp312-cp312-win_amd64.whl (610.2 kB 查看哈希值)
anastruct-1.6.0-cp311-cp311-win_amd64.whl (610.0 kB 查看哈希)
anastruct-1.6.0-cp310-cp310-win_amd64.whl (610.0 kB 查看哈希)
关闭
anastruct-1.6.0.tar.gz 的哈希
算法 | 哈希摘要 | |
---|---|---|
SHA256 | ff37ea1e381a97e4b9bda2d43316e0db09268b8a2e52502e2790b63602052b22 |
|
MD5 | db7a3ceda7062dd39f032c9d836cdb7d |
|
BLAKE2b-256 | 2154e8f1ce3a9890714f8ad6639ff612bd0ce7d404c485d94b8a943aa9b6e009 |
关闭
哈希值 for anastruct-1.6.0-cp312-cp312-musllinux_1_2_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 4b1304d6c86abe9a6e1278c7c5b707545ca1d98f26aab1e3677c8d7babb2f9af |
|
MD5 | 410492b537ead59a0c7967dced5e885e |
|
BLAKE2b-256 | d1cb491469faeebf9f14308ecd8df6d3a72f89484e804c127887ba146253e130 |
关闭
哈希值 for anastruct-1.6.0-cp312-cp312-manylinux_2_17_x86_64.manylinux_2_5_x86_64.manylinux1_x86_64.manylinux2014_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | cb2729a0e38a793ff4760f46d98b173b11f0e2a1deecb0cec0bd7b65430fad69 |
|
MD5 | 05a3c2beffa16cff23dcdf04f9ea54b0 |
|
BLAKE2b-256 | f0b5f8d64a5ef185bf45b5e80f934cd2f2579c2b212e42ac07ae190a7c9bea09 |
关闭
哈希值 for anastruct-1.6.0-cp312-cp312-macosx_14_0_arm64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 835ecb4d4cbbe9ae37cc7b23a640e3fc3091d47f197339854389542b948b72fc |
|
MD5 | a3c00cb6caefe3782ff5d6cfae336047 |
|
BLAKE2b-256 | b6453e39f0211a73f274e7244393e23134842fd02f32c99deede0bc045004cfa |
关闭
哈希值 for anastruct-1.6.0-cp312-cp312-macosx_13_0_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 8dec3aeb47f6cd48399be4ec3833050cfca3957c9ee298fcebac3bdd5f037803 |
|
MD5 | daac6dbf8df5d1ac133ea27f590f0413 |
|
BLAKE2b-256 | f51f8bc00c54e9bd643662fee6aa5b9860da78cad4155e307d957cc106957c03 |
关闭
哈希值 for anastruct-1.6.0-cp311-cp311-musllinux_1_2_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 2639ba5c4dee54587ef5deb95c0c3cbbac317cbaf06ea8cd724abcd4ca42026b |
|
MD5 | 0417425c0b46a0004c6939d51df169d2 |
|
BLAKE2b-256 | 71ae97acd33c38e416de8b891fe9032b786fc267bc068b7a7e81925446eee0a1 |
关闭
哈希值 for anastruct-1.6.0-cp311-cp311-manylinux_2_17_x86_64.manylinux_2_5_x86_64.manylinux1_x86_64.manylinux2014_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 54124718e3b522c1836a1ef26b57e15860f04dbe9cd3fcf11e7e4a35d5bc6957 |
|
MD5 | cc999b0c9bf0e70cea3e5d30bc8e0945 |
|
BLAKE2b-256 | e29259179467f6d92caa8d1deab23e08c2b02c6f5489ad8de83c31c88ccc6516 |
关闭
哈希值 for anastruct-1.6.0-cp311-cp311-macosx_14_0_arm64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 4baa037c390e10b81f3b984254227a3baf2ebc284a7e9556b77e4e0bb7ccb8b4 |
|
MD5 | bc1111e66850c8a529aa89e22e806d9f |
|
BLAKE2b-256 | e47b8fc9477c154e567ec65fbf525e415895bdbf9940a944dced45e7d9795209 |
关闭
哈希值 for anastruct-1.6.0-cp311-cp311-macosx_13_0_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 6b18c534718085aae4d09c06ef7db3560c942f6c275d4a2c107fd48b6d2ab983 |
|
MD5 | 40efb4bdea46c770fff2829e3422638c |
|
BLAKE2b-256 | fb4a30dc539eb2a69ad6ec3fa71ccb9d688477a7879ee78a3a87ec8e1b612ed9 |
关闭
哈希值 for anastruct-1.6.0-cp310-cp310-musllinux_1_2_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 257f2fbe9b1f8793b06cf4b7e6198adb2d707b5c19dcdc751384d40f178a0cfd |
|
MD5 | 9d6c688fcfb1eb45e2bdb4cf07aee04d |
|
BLAKE2b-256 | 493aba9f3551f2b6768b558390241c7584ac959a7661dca0ffc8436fb4fdaf36 |
关闭
哈希值 for anastruct-1.6.0-cp310-cp310-manylinux_2_17_x86_64.manylinux_2_5_x86_64.manylinux1_x86_64.manylinux2014_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | d3e8b35ff34bfeea25be95c001447a0c4cbae5c6f86218f9d797a388d53c2cf0 |
|
MD5 | 8ffb5fa325e45f6ba2bb9deb6b505e1d |
|
BLAKE2b-256 | a30715df3634bfef9536e33c1e24c11f30862f4a37902467d0d7f1efa7fc416f |
关闭
哈希值 for anastruct-1.6.0-cp310-cp310-macosx_14_0_arm64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | f3102aebb44ab0835a7bd7dfc386aa367cc6ff8ad92e74c19160f11bc7d27897 |
|
MD5 | 2f9a174e73c32707238c9f5111b4ef1f |
|
BLAKE2b-256 | 108d07644caa425c4271790302711bd330ac6da6d3001937f9c1f9cfd769da9b |
关闭
哈希值 for anastruct-1.6.0-cp310-cp310-macosx_13_0_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 75b2b6604d28db57cc3faeaadf10538115de7cac060ec441eaa2492a43ea888e |
|
MD5 | b7cb98c68e421c1b40e98f0d1e87ad50 |
|
BLAKE2b-256 | 72f2c337951a9e42f224731d487f8869e4b6a2707d946af9c9b6263ec1fdafc0 |