qtmodel 0.7.1__tar.gz → 0.7.3__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.
Potentially problematic release.
This version of qtmodel might be problematic. Click here for more details.
- {qtmodel-0.7.1 → qtmodel-0.7.3}/PKG-INFO +46 -16
- {qtmodel-0.7.1 → qtmodel-0.7.3}/README.md +44 -14
- {qtmodel-0.7.1 → qtmodel-0.7.3}/qtmodel/qt_mdb.py +116 -57
- {qtmodel-0.7.1 → qtmodel-0.7.3}/qtmodel.egg-info/PKG-INFO +46 -16
- {qtmodel-0.7.1 → qtmodel-0.7.3}/setup.py +1 -1
- {qtmodel-0.7.1 → qtmodel-0.7.3}/qtmodel/__init__.py +0 -0
- {qtmodel-0.7.1 → qtmodel-0.7.3}/qtmodel/qt_db.py +0 -0
- {qtmodel-0.7.1 → qtmodel-0.7.3}/qtmodel/qt_odb.py +0 -0
- {qtmodel-0.7.1 → qtmodel-0.7.3}/qtmodel.egg-info/SOURCES.txt +0 -0
- {qtmodel-0.7.1 → qtmodel-0.7.3}/qtmodel.egg-info/dependency_links.txt +0 -0
- {qtmodel-0.7.1 → qtmodel-0.7.3}/qtmodel.egg-info/top_level.txt +0 -0
- {qtmodel-0.7.1 → qtmodel-0.7.3}/setup.cfg +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: qtmodel
|
|
3
|
-
Version: 0.7.
|
|
4
|
-
Summary: python modeling for qt 2025-06-
|
|
3
|
+
Version: 0.7.3
|
|
4
|
+
Summary: python modeling for qt 2025-06-27
|
|
5
5
|
Home-page: https://github.com/Inface0443/pyqt
|
|
6
6
|
Author: dqy-zhj
|
|
7
7
|
Author-email: 1105417715@qq.com
|
|
@@ -12,7 +12,7 @@ Classifier: Programming Language :: Python :: 3
|
|
|
12
12
|
Classifier: Operating System :: OS Independent
|
|
13
13
|
Description-Content-Type: text/markdown
|
|
14
14
|
|
|
15
|
-
> 最新版本 V0.7.
|
|
15
|
+
> 最新版本 V0.7.3 - 2025-06-27
|
|
16
16
|
> pip install --upgrade qtmodel -i https://pypi.org/simple
|
|
17
17
|
- 新增更新结构组接口
|
|
18
18
|
# 建模操作
|
|
@@ -503,7 +503,7 @@ Returns: 无
|
|
|
503
503
|
### update_local_orientation
|
|
504
504
|
反转杆系单元局部方向
|
|
505
505
|
> 参数:
|
|
506
|
-
>
|
|
506
|
+
> element_id: 杆系单元编号
|
|
507
507
|
```Python
|
|
508
508
|
# 示例代码
|
|
509
509
|
from qtmodel import *
|
|
@@ -644,7 +644,7 @@ Returns: 无
|
|
|
644
644
|
### renumber_elements
|
|
645
645
|
单元编号重排序,默认按1升序重排所有节点
|
|
646
646
|
> 参数:
|
|
647
|
-
>
|
|
647
|
+
> element_ids:被修改单元号
|
|
648
648
|
> new_ids:新单元号
|
|
649
649
|
```Python
|
|
650
650
|
# 示例代码
|
|
@@ -915,6 +915,8 @@ Returns: 无
|
|
|
915
915
|
> charm_right:混凝土截面右半倒角信息 (对称时可忽略,仅混凝土箱梁截面需要)
|
|
916
916
|
> box_num: 混凝土箱室数 (仅混凝土箱梁截面需要)
|
|
917
917
|
> box_height: 混凝土箱梁梁高 (仅混凝土箱梁截面需要)
|
|
918
|
+
> box_other_info: 混凝土箱梁额外信息(键包括"i1" "B0" "B4" "T4" 值为列表)
|
|
919
|
+
> box_other_right: 混凝土箱梁额外信息(对称时可忽略,键包括"i1" "B0" "B4" "T4" 值为列表)
|
|
918
920
|
> mat_combine: 组合截面材料信息 (仅组合材料需要) [弹性模量比s/c、密度比s/c、钢材泊松比、混凝土泊松比、热膨胀系数比s/c]
|
|
919
921
|
> rib_info:肋板信息
|
|
920
922
|
> rib_place:肋板位置 list[tuple[布置具体部位,参考点0-下/左,距参考点间距,肋板名,加劲肋位置0-上/左 1-下/右 2-两侧,加劲肋名]]
|
|
@@ -1154,6 +1156,34 @@ mdb.add_elements_to_tapper_section_group("变截面组1",ids="1to6")
|
|
|
1154
1156
|
```
|
|
1155
1157
|
Returns:无
|
|
1156
1158
|
## 边界操作
|
|
1159
|
+
### add_effective_width
|
|
1160
|
+
添加有效宽度系数
|
|
1161
|
+
> 参数:
|
|
1162
|
+
> element_ids:边界单元号支持整形和整形列表且支持XtoYbyN形式
|
|
1163
|
+
> factor_i:I端截面Iy折减系数
|
|
1164
|
+
> factor_j:J端截面Iy折减系数
|
|
1165
|
+
> dz_i:I端截面形心变换量
|
|
1166
|
+
> dz_j:J端截面形心变换量
|
|
1167
|
+
> group_name:边界组名
|
|
1168
|
+
```Python
|
|
1169
|
+
# 示例代码
|
|
1170
|
+
from qtmodel import *
|
|
1171
|
+
mdb.add_effective_width(element_ids=[1,2,3,4],factor_i=0.1,factor_j=0.1,dz_i=0.1,dz_j=0.1)
|
|
1172
|
+
mdb.add_effective_width(element_ids="1to4",factor_i=0.1,factor_j=0.1,dz_i=0.1,dz_j=0.1)
|
|
1173
|
+
```
|
|
1174
|
+
Returns: 无
|
|
1175
|
+
### remove_effective_width
|
|
1176
|
+
删除有效宽度系数
|
|
1177
|
+
> 参数:
|
|
1178
|
+
> element_ids:边界单元号支持整形和整形列表且支持XtoYbyN形式
|
|
1179
|
+
> group_name:边界组名
|
|
1180
|
+
```Python
|
|
1181
|
+
# 示例代码
|
|
1182
|
+
from qtmodel import *
|
|
1183
|
+
mdb.remove_effective_width(element_ids=[1,2,3,4],group_name="边界组1")
|
|
1184
|
+
mdb.remove_effective_width(element_ids="1to4",group_name="边界组1")
|
|
1185
|
+
```
|
|
1186
|
+
Returns: 无
|
|
1157
1187
|
### add_boundary_group
|
|
1158
1188
|
新建边界组
|
|
1159
1189
|
> 参数:
|
|
@@ -1199,14 +1229,14 @@ Returns: 无
|
|
|
1199
1229
|
根据节点号删除一般支撑、弹性支承/根据弹性连接I或J端(需指定)节点号删除弹性连接/根据单元号删除梁端约束/根据从节点号和约束方程名删除约束方程/根据从节点号删除主从约束
|
|
1200
1230
|
> 参数:
|
|
1201
1231
|
> remove_id:节点号 or 单元号 or 从节点号
|
|
1202
|
-
>
|
|
1203
|
-
>
|
|
1232
|
+
> kind:边界类型 ["一般支承", "弹性支承","一般弹性支承", "主从约束", "一般/受拉/受压/刚性弹性连接", "约束方程", "梁端约束"]
|
|
1233
|
+
> group_name:边界所处边界组名
|
|
1204
1234
|
> extra_name:删除弹性连接或约束方程时额外标识,约束方程名或指定删除弹性连接节点类型 I/J
|
|
1205
1235
|
```Python
|
|
1206
1236
|
# 示例代码
|
|
1207
1237
|
from qtmodel import *
|
|
1208
|
-
mdb.remove_boundary(remove_id=11,
|
|
1209
|
-
mdb.remove_boundary(remove_id=12,
|
|
1238
|
+
mdb.remove_boundary(remove_id=11, kind="一般弹性连接",group_name="边界组1", extra_name="J")
|
|
1239
|
+
mdb.remove_boundary(remove_id=12, kind="约束方程",group_name="边界组1", extra_name="约束方程名")
|
|
1210
1240
|
```
|
|
1211
1241
|
Returns: 无
|
|
1212
1242
|
### add_general_elastic_support_property
|
|
@@ -1303,7 +1333,7 @@ mdb.add_elastic_link(link_type=3,start_id=1,end_id=2,kx=1e6)
|
|
|
1303
1333
|
```
|
|
1304
1334
|
Returns: 无
|
|
1305
1335
|
### add_master_slave_links
|
|
1306
|
-
|
|
1336
|
+
批量添加主从约束,不指定编号默认为最大编号加1
|
|
1307
1337
|
> 参数:
|
|
1308
1338
|
> node_ids:主节点号和从节点号,主节点号位于首位
|
|
1309
1339
|
> boundary_info:边界信息 [X,Y,Z,Rx,Ry,Rz] ture-固定 false-自由
|
|
@@ -3097,14 +3127,14 @@ Returns: 无
|
|
|
3097
3127
|
> 参数:
|
|
3098
3128
|
> name:名称
|
|
3099
3129
|
> sec_id:截面号
|
|
3100
|
-
>
|
|
3130
|
+
> element_id:单元号,支持整型和整型列表,支持XtoYbyN形式字符串
|
|
3101
3131
|
> stage_name:结合阶段名
|
|
3102
3132
|
> age:材龄
|
|
3103
3133
|
> weight_type:辅材计自重方式 0-由主材承担 1-由整体承担 2-不计辅材自重
|
|
3104
3134
|
```Python
|
|
3105
3135
|
# 示例代码
|
|
3106
3136
|
from qtmodel import *
|
|
3107
|
-
mdb.add_section_connection_stage(name="联合阶段",sec_id=1,
|
|
3137
|
+
mdb.add_section_connection_stage(name="联合阶段",sec_id=1,element_id=[2,3,4,5],stage_name="施工阶段1")
|
|
3108
3138
|
```
|
|
3109
3139
|
Returns:无
|
|
3110
3140
|
### update_section_connection_stage
|
|
@@ -3113,15 +3143,15 @@ Returns:无
|
|
|
3113
3143
|
> name:名称
|
|
3114
3144
|
> new_name:新名称
|
|
3115
3145
|
> sec_id:截面号
|
|
3116
|
-
>
|
|
3146
|
+
> element_id:单元号,支持整型和整型列表且支持XtoYbyN形式字符串
|
|
3117
3147
|
> stage_name:结合阶段名
|
|
3118
3148
|
> age:材龄
|
|
3119
3149
|
> weight_type:辅材计自重方式 0-由主材承担 1-由整体承担 2-不计辅材自重
|
|
3120
3150
|
```Python
|
|
3121
3151
|
# 示例代码
|
|
3122
3152
|
from qtmodel import *
|
|
3123
|
-
mdb.update_section_connection_stage(name="联合阶段",sec_id=1,
|
|
3124
|
-
mdb.update_section_connection_stage(name="联合阶段",sec_id=1,
|
|
3153
|
+
mdb.update_section_connection_stage(name="联合阶段",sec_id=1,element_id=[2,3,4,5],stage_name="施工阶段1")
|
|
3154
|
+
mdb.update_section_connection_stage(name="联合阶段",sec_id=1,element_id="2to5",stage_name="施工阶段1")
|
|
3125
3155
|
```
|
|
3126
3156
|
Returns:无
|
|
3127
3157
|
### remove_section_connection_stage
|
|
@@ -3137,7 +3167,7 @@ Returns:无
|
|
|
3137
3167
|
### add_element_to_connection_stage
|
|
3138
3168
|
添加单元到施工阶段联合截面
|
|
3139
3169
|
> 参数:
|
|
3140
|
-
>
|
|
3170
|
+
> element_id:单元号,支持整型和整型列表且支持XtoYbyN形式字符串
|
|
3141
3171
|
> name:联合阶段名
|
|
3142
3172
|
```Python
|
|
3143
3173
|
# 示例代码
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
> 最新版本 V0.7.
|
|
1
|
+
> 最新版本 V0.7.3 - 2025-06-27
|
|
2
2
|
> pip install --upgrade qtmodel -i https://pypi.org/simple
|
|
3
3
|
- 新增更新结构组接口
|
|
4
4
|
# 建模操作
|
|
@@ -489,7 +489,7 @@ Returns: 无
|
|
|
489
489
|
### update_local_orientation
|
|
490
490
|
反转杆系单元局部方向
|
|
491
491
|
> 参数:
|
|
492
|
-
>
|
|
492
|
+
> element_id: 杆系单元编号
|
|
493
493
|
```Python
|
|
494
494
|
# 示例代码
|
|
495
495
|
from qtmodel import *
|
|
@@ -630,7 +630,7 @@ Returns: 无
|
|
|
630
630
|
### renumber_elements
|
|
631
631
|
单元编号重排序,默认按1升序重排所有节点
|
|
632
632
|
> 参数:
|
|
633
|
-
>
|
|
633
|
+
> element_ids:被修改单元号
|
|
634
634
|
> new_ids:新单元号
|
|
635
635
|
```Python
|
|
636
636
|
# 示例代码
|
|
@@ -901,6 +901,8 @@ Returns: 无
|
|
|
901
901
|
> charm_right:混凝土截面右半倒角信息 (对称时可忽略,仅混凝土箱梁截面需要)
|
|
902
902
|
> box_num: 混凝土箱室数 (仅混凝土箱梁截面需要)
|
|
903
903
|
> box_height: 混凝土箱梁梁高 (仅混凝土箱梁截面需要)
|
|
904
|
+
> box_other_info: 混凝土箱梁额外信息(键包括"i1" "B0" "B4" "T4" 值为列表)
|
|
905
|
+
> box_other_right: 混凝土箱梁额外信息(对称时可忽略,键包括"i1" "B0" "B4" "T4" 值为列表)
|
|
904
906
|
> mat_combine: 组合截面材料信息 (仅组合材料需要) [弹性模量比s/c、密度比s/c、钢材泊松比、混凝土泊松比、热膨胀系数比s/c]
|
|
905
907
|
> rib_info:肋板信息
|
|
906
908
|
> rib_place:肋板位置 list[tuple[布置具体部位,参考点0-下/左,距参考点间距,肋板名,加劲肋位置0-上/左 1-下/右 2-两侧,加劲肋名]]
|
|
@@ -1140,6 +1142,34 @@ mdb.add_elements_to_tapper_section_group("变截面组1",ids="1to6")
|
|
|
1140
1142
|
```
|
|
1141
1143
|
Returns:无
|
|
1142
1144
|
## 边界操作
|
|
1145
|
+
### add_effective_width
|
|
1146
|
+
添加有效宽度系数
|
|
1147
|
+
> 参数:
|
|
1148
|
+
> element_ids:边界单元号支持整形和整形列表且支持XtoYbyN形式
|
|
1149
|
+
> factor_i:I端截面Iy折减系数
|
|
1150
|
+
> factor_j:J端截面Iy折减系数
|
|
1151
|
+
> dz_i:I端截面形心变换量
|
|
1152
|
+
> dz_j:J端截面形心变换量
|
|
1153
|
+
> group_name:边界组名
|
|
1154
|
+
```Python
|
|
1155
|
+
# 示例代码
|
|
1156
|
+
from qtmodel import *
|
|
1157
|
+
mdb.add_effective_width(element_ids=[1,2,3,4],factor_i=0.1,factor_j=0.1,dz_i=0.1,dz_j=0.1)
|
|
1158
|
+
mdb.add_effective_width(element_ids="1to4",factor_i=0.1,factor_j=0.1,dz_i=0.1,dz_j=0.1)
|
|
1159
|
+
```
|
|
1160
|
+
Returns: 无
|
|
1161
|
+
### remove_effective_width
|
|
1162
|
+
删除有效宽度系数
|
|
1163
|
+
> 参数:
|
|
1164
|
+
> element_ids:边界单元号支持整形和整形列表且支持XtoYbyN形式
|
|
1165
|
+
> group_name:边界组名
|
|
1166
|
+
```Python
|
|
1167
|
+
# 示例代码
|
|
1168
|
+
from qtmodel import *
|
|
1169
|
+
mdb.remove_effective_width(element_ids=[1,2,3,4],group_name="边界组1")
|
|
1170
|
+
mdb.remove_effective_width(element_ids="1to4",group_name="边界组1")
|
|
1171
|
+
```
|
|
1172
|
+
Returns: 无
|
|
1143
1173
|
### add_boundary_group
|
|
1144
1174
|
新建边界组
|
|
1145
1175
|
> 参数:
|
|
@@ -1185,14 +1215,14 @@ Returns: 无
|
|
|
1185
1215
|
根据节点号删除一般支撑、弹性支承/根据弹性连接I或J端(需指定)节点号删除弹性连接/根据单元号删除梁端约束/根据从节点号和约束方程名删除约束方程/根据从节点号删除主从约束
|
|
1186
1216
|
> 参数:
|
|
1187
1217
|
> remove_id:节点号 or 单元号 or 从节点号
|
|
1188
|
-
>
|
|
1189
|
-
>
|
|
1218
|
+
> kind:边界类型 ["一般支承", "弹性支承","一般弹性支承", "主从约束", "一般/受拉/受压/刚性弹性连接", "约束方程", "梁端约束"]
|
|
1219
|
+
> group_name:边界所处边界组名
|
|
1190
1220
|
> extra_name:删除弹性连接或约束方程时额外标识,约束方程名或指定删除弹性连接节点类型 I/J
|
|
1191
1221
|
```Python
|
|
1192
1222
|
# 示例代码
|
|
1193
1223
|
from qtmodel import *
|
|
1194
|
-
mdb.remove_boundary(remove_id=11,
|
|
1195
|
-
mdb.remove_boundary(remove_id=12,
|
|
1224
|
+
mdb.remove_boundary(remove_id=11, kind="一般弹性连接",group_name="边界组1", extra_name="J")
|
|
1225
|
+
mdb.remove_boundary(remove_id=12, kind="约束方程",group_name="边界组1", extra_name="约束方程名")
|
|
1196
1226
|
```
|
|
1197
1227
|
Returns: 无
|
|
1198
1228
|
### add_general_elastic_support_property
|
|
@@ -1289,7 +1319,7 @@ mdb.add_elastic_link(link_type=3,start_id=1,end_id=2,kx=1e6)
|
|
|
1289
1319
|
```
|
|
1290
1320
|
Returns: 无
|
|
1291
1321
|
### add_master_slave_links
|
|
1292
|
-
|
|
1322
|
+
批量添加主从约束,不指定编号默认为最大编号加1
|
|
1293
1323
|
> 参数:
|
|
1294
1324
|
> node_ids:主节点号和从节点号,主节点号位于首位
|
|
1295
1325
|
> boundary_info:边界信息 [X,Y,Z,Rx,Ry,Rz] ture-固定 false-自由
|
|
@@ -3083,14 +3113,14 @@ Returns: 无
|
|
|
3083
3113
|
> 参数:
|
|
3084
3114
|
> name:名称
|
|
3085
3115
|
> sec_id:截面号
|
|
3086
|
-
>
|
|
3116
|
+
> element_id:单元号,支持整型和整型列表,支持XtoYbyN形式字符串
|
|
3087
3117
|
> stage_name:结合阶段名
|
|
3088
3118
|
> age:材龄
|
|
3089
3119
|
> weight_type:辅材计自重方式 0-由主材承担 1-由整体承担 2-不计辅材自重
|
|
3090
3120
|
```Python
|
|
3091
3121
|
# 示例代码
|
|
3092
3122
|
from qtmodel import *
|
|
3093
|
-
mdb.add_section_connection_stage(name="联合阶段",sec_id=1,
|
|
3123
|
+
mdb.add_section_connection_stage(name="联合阶段",sec_id=1,element_id=[2,3,4,5],stage_name="施工阶段1")
|
|
3094
3124
|
```
|
|
3095
3125
|
Returns:无
|
|
3096
3126
|
### update_section_connection_stage
|
|
@@ -3099,15 +3129,15 @@ Returns:无
|
|
|
3099
3129
|
> name:名称
|
|
3100
3130
|
> new_name:新名称
|
|
3101
3131
|
> sec_id:截面号
|
|
3102
|
-
>
|
|
3132
|
+
> element_id:单元号,支持整型和整型列表且支持XtoYbyN形式字符串
|
|
3103
3133
|
> stage_name:结合阶段名
|
|
3104
3134
|
> age:材龄
|
|
3105
3135
|
> weight_type:辅材计自重方式 0-由主材承担 1-由整体承担 2-不计辅材自重
|
|
3106
3136
|
```Python
|
|
3107
3137
|
# 示例代码
|
|
3108
3138
|
from qtmodel import *
|
|
3109
|
-
mdb.update_section_connection_stage(name="联合阶段",sec_id=1,
|
|
3110
|
-
mdb.update_section_connection_stage(name="联合阶段",sec_id=1,
|
|
3139
|
+
mdb.update_section_connection_stage(name="联合阶段",sec_id=1,element_id=[2,3,4,5],stage_name="施工阶段1")
|
|
3140
|
+
mdb.update_section_connection_stage(name="联合阶段",sec_id=1,element_id="2to5",stage_name="施工阶段1")
|
|
3111
3141
|
```
|
|
3112
3142
|
Returns:无
|
|
3113
3143
|
### remove_section_connection_stage
|
|
@@ -3123,7 +3153,7 @@ Returns:无
|
|
|
3123
3153
|
### add_element_to_connection_stage
|
|
3124
3154
|
添加单元到施工阶段联合截面
|
|
3125
3155
|
> 参数:
|
|
3126
|
-
>
|
|
3156
|
+
> element_id:单元号,支持整型和整型列表且支持XtoYbyN形式字符串
|
|
3127
3157
|
> name:联合阶段名
|
|
3128
3158
|
```Python
|
|
3129
3159
|
# 示例代码
|
|
@@ -223,8 +223,8 @@ class Mdb:
|
|
|
223
223
|
|
|
224
224
|
# region 分析设置
|
|
225
225
|
@staticmethod
|
|
226
|
-
def update_general_setting(project: str = "",company: str = "",designer: str = "",reviewer: str = "",
|
|
227
|
-
date_time: str = "",gravity: float = 9.8,temperature: float = 0,description: str = "") -> None:
|
|
226
|
+
def update_general_setting(project: str = "", company: str = "", designer: str = "", reviewer: str = "",
|
|
227
|
+
date_time: str = "", gravity: float = 9.8, temperature: float = 0, description: str = "") -> None:
|
|
228
228
|
"""
|
|
229
229
|
更新总体设置
|
|
230
230
|
Args:
|
|
@@ -241,8 +241,8 @@ class Mdb:
|
|
|
241
241
|
Returns: 无
|
|
242
242
|
"""
|
|
243
243
|
try:
|
|
244
|
-
qt_model.update_general_setting(project=project,company=company,designer=designer,reviewer=reviewer,
|
|
245
|
-
|
|
244
|
+
qt_model.update_general_setting(project=project, company=company, designer=designer, reviewer=reviewer,
|
|
245
|
+
date_time=date_time, gravity=gravity, temperature=temperature, description=description)
|
|
246
246
|
except Exception as ex:
|
|
247
247
|
raise Exception(ex)
|
|
248
248
|
|
|
@@ -445,8 +445,8 @@ class Mdb:
|
|
|
445
445
|
raise Exception(ex)
|
|
446
446
|
|
|
447
447
|
@staticmethod
|
|
448
|
-
def update_bulking_setting(do_analysis: bool = True,mode_count:int=3,stage_id:int
|
|
449
|
-
|
|
448
|
+
def update_bulking_setting(do_analysis: bool = True, mode_count: int = 3, stage_id: int = -1, calculate_kind: int = 1,
|
|
449
|
+
stressed: bool = True, constant_cases: list[str] = None, variable_cases: list[str] = None):
|
|
450
450
|
"""
|
|
451
451
|
更新屈曲分析设置
|
|
452
452
|
Args:
|
|
@@ -462,10 +462,11 @@ class Mdb:
|
|
|
462
462
|
Returns: 无
|
|
463
463
|
"""
|
|
464
464
|
try:
|
|
465
|
-
qt_model.UpdateBulkingSetting(doAnalysis=do_analysis, modeCount=mode_count, stageId=stage_id,stressed=stressed,
|
|
466
|
-
calculateKind=calculate_kind,constantCases=constant_cases,variableCases=variable_cases)
|
|
465
|
+
qt_model.UpdateBulkingSetting(doAnalysis=do_analysis, modeCount=mode_count, stageId=stage_id, stressed=stressed,
|
|
466
|
+
calculateKind=calculate_kind, constantCases=constant_cases, variableCases=variable_cases)
|
|
467
467
|
except Exception as ex:
|
|
468
468
|
raise Exception(ex)
|
|
469
|
+
|
|
469
470
|
# endregion
|
|
470
471
|
|
|
471
472
|
# region 结构组操作
|
|
@@ -672,7 +673,7 @@ class Mdb:
|
|
|
672
673
|
raise Exception(ex)
|
|
673
674
|
|
|
674
675
|
@staticmethod
|
|
675
|
-
def merge_nodes(ids
|
|
676
|
+
def merge_nodes(ids=None, tolerance: float = 1e-4):
|
|
676
677
|
"""
|
|
677
678
|
根据坐标信息和节点编号添加节点,默认自动识别编号
|
|
678
679
|
Args:
|
|
@@ -752,17 +753,17 @@ class Mdb:
|
|
|
752
753
|
|
|
753
754
|
# region 单元操作
|
|
754
755
|
@staticmethod
|
|
755
|
-
def update_local_orientation(
|
|
756
|
+
def update_local_orientation(element_id: int):
|
|
756
757
|
"""
|
|
757
758
|
反转杆系单元局部方向
|
|
758
759
|
Args:
|
|
759
|
-
|
|
760
|
+
element_id: 杆系单元编号
|
|
760
761
|
Example:
|
|
761
762
|
mdb.update_local_orientation(1)
|
|
762
763
|
Returns: 无
|
|
763
764
|
"""
|
|
764
765
|
try:
|
|
765
|
-
qt_model.UpdateLocalOrientation(elementId=
|
|
766
|
+
qt_model.UpdateLocalOrientation(elementId=element_id)
|
|
766
767
|
except Exception as ex:
|
|
767
768
|
raise Exception(ex)
|
|
768
769
|
|
|
@@ -975,11 +976,11 @@ class Mdb:
|
|
|
975
976
|
raise Exception(ex)
|
|
976
977
|
|
|
977
978
|
@staticmethod
|
|
978
|
-
def renumber_elements(
|
|
979
|
+
def renumber_elements(element_ids: list[int] = None, new_ids: list[int] = None):
|
|
979
980
|
"""
|
|
980
981
|
单元编号重排序,默认按1升序重排所有节点
|
|
981
982
|
Args:
|
|
982
|
-
|
|
983
|
+
element_ids:被修改单元号
|
|
983
984
|
new_ids:新单元号
|
|
984
985
|
Example:
|
|
985
986
|
mdb.renumber_elements()
|
|
@@ -987,7 +988,7 @@ class Mdb:
|
|
|
987
988
|
Returns: 无
|
|
988
989
|
"""
|
|
989
990
|
try:
|
|
990
|
-
qt_model.RenumberElements(elementIds=
|
|
991
|
+
qt_model.RenumberElements(elementIds=element_ids, newIds=new_ids)
|
|
991
992
|
except Exception as ex:
|
|
992
993
|
raise Exception(ex)
|
|
993
994
|
|
|
@@ -1475,14 +1476,31 @@ class Mdb:
|
|
|
1475
1476
|
|
|
1476
1477
|
# region 截面操作
|
|
1477
1478
|
@staticmethod
|
|
1478
|
-
def add_section(
|
|
1479
|
-
|
|
1480
|
-
|
|
1481
|
-
|
|
1482
|
-
|
|
1483
|
-
|
|
1484
|
-
|
|
1485
|
-
|
|
1479
|
+
def add_section(
|
|
1480
|
+
index: int = -1,
|
|
1481
|
+
name: str = "",
|
|
1482
|
+
sec_type: str = "矩形",
|
|
1483
|
+
sec_info: list[float] = None,
|
|
1484
|
+
symmetry: bool = True,
|
|
1485
|
+
charm_info: list[str] = None,
|
|
1486
|
+
sec_right: list[float] = None,
|
|
1487
|
+
charm_right: list[str] = None,
|
|
1488
|
+
box_num: int = 3,
|
|
1489
|
+
box_height: float = 2,
|
|
1490
|
+
box_other_info:list[dict]=None,
|
|
1491
|
+
box_other_right:list[dict]=None,
|
|
1492
|
+
mat_combine: list[float] = None,
|
|
1493
|
+
rib_info: dict[str, list[float]] = None,
|
|
1494
|
+
rib_place: list[tuple[int, int, float, str, int, str]] = None,
|
|
1495
|
+
loop_segments: list[dict] = None,
|
|
1496
|
+
sec_lines: list[tuple[float, float, float, float, float]] = None,
|
|
1497
|
+
secondary_loop_segments: list[dict] = None,
|
|
1498
|
+
sec_property: list[float] = None,
|
|
1499
|
+
bias_type: str = "中心",
|
|
1500
|
+
center_type: str = "质心",
|
|
1501
|
+
shear_consider: bool = True,
|
|
1502
|
+
bias_x: float = 0,
|
|
1503
|
+
bias_y: float = 0):
|
|
1486
1504
|
"""
|
|
1487
1505
|
添加单一截面信息,如果截面存在则自动覆盖
|
|
1488
1506
|
Args:
|
|
@@ -1496,6 +1514,8 @@ class Mdb:
|
|
|
1496
1514
|
charm_right:混凝土截面右半倒角信息 (对称时可忽略,仅混凝土箱梁截面需要)
|
|
1497
1515
|
box_num: 混凝土箱室数 (仅混凝土箱梁截面需要)
|
|
1498
1516
|
box_height: 混凝土箱梁梁高 (仅混凝土箱梁截面需要)
|
|
1517
|
+
box_other_info: 混凝土箱梁额外信息(键包括"i1" "B0" "B4" "T4" 值为列表)
|
|
1518
|
+
box_other_right: 混凝土箱梁额外信息(对称时可忽略,键包括"i1" "B0" "B4" "T4" 值为列表)
|
|
1499
1519
|
mat_combine: 组合截面材料信息 (仅组合材料需要) [弹性模量比s/c、密度比s/c、钢材泊松比、混凝土泊松比、热膨胀系数比s/c]
|
|
1500
1520
|
rib_info:肋板信息
|
|
1501
1521
|
rib_place:肋板位置 list[tuple[布置具体部位,参考点0-下/左,距参考点间距,肋板名,加劲肋位置0-上/左 1-下/右 2-两侧,加劲肋名]]
|
|
@@ -1527,7 +1547,8 @@ class Mdb:
|
|
|
1527
1547
|
qt_model.AddSection(id=index, name=name, secType=sec_type, secInfo=sec_info, charmInfo=charm_info,
|
|
1528
1548
|
symmetry=symmetry, boxNum=box_num, boxHeight=box_height, charmRight=charm_right, secRight=sec_right,
|
|
1529
1549
|
biasType=bias_type, centerType=center_type, shearConsider=shear_consider,
|
|
1530
|
-
biasX=bias_x, biasY=bias_y, secProperty=sec_property
|
|
1550
|
+
biasX=bias_x, biasY=bias_y, secProperty=sec_property,
|
|
1551
|
+
boxOtherInfo=box_other_info,boxOtherRight=box_other_right)
|
|
1531
1552
|
elif sec_type == "工字钢梁" or sec_type == "箱型钢梁":
|
|
1532
1553
|
qt_model.AddSection(id=index, name=name, secType=sec_type, secInfo=sec_info,
|
|
1533
1554
|
ribInfo=rib_info, ribPlace=rib_place, biasType=bias_type, centerType=center_type,
|
|
@@ -1688,7 +1709,7 @@ class Mdb:
|
|
|
1688
1709
|
raise Exception(ex)
|
|
1689
1710
|
|
|
1690
1711
|
@staticmethod
|
|
1691
|
-
def add_tapper_section_group(ids
|
|
1712
|
+
def add_tapper_section_group(ids=None, name: str = "", factor_w: float = 1.0, factor_h: float = 1.0,
|
|
1692
1713
|
ref_w: int = 0, ref_h: int = 0, dis_w: float = 0, dis_h: float = 0):
|
|
1693
1714
|
"""
|
|
1694
1715
|
添加变截面组
|
|
@@ -1850,6 +1871,44 @@ class Mdb:
|
|
|
1850
1871
|
# endregion
|
|
1851
1872
|
|
|
1852
1873
|
# region 边界操作
|
|
1874
|
+
@staticmethod
|
|
1875
|
+
def add_effective_width(element_ids, factor_i: float, factor_j: float, dz_i: float, dz_j: float, group_name: str = "默认边界组"):
|
|
1876
|
+
"""
|
|
1877
|
+
添加有效宽度系数
|
|
1878
|
+
Args:
|
|
1879
|
+
element_ids:边界单元号支持整形和整形列表且支持XtoYbyN形式
|
|
1880
|
+
factor_i:I端截面Iy折减系数
|
|
1881
|
+
factor_j:J端截面Iy折减系数
|
|
1882
|
+
dz_i:I端截面形心变换量
|
|
1883
|
+
dz_j:J端截面形心变换量
|
|
1884
|
+
group_name:边界组名
|
|
1885
|
+
Example:
|
|
1886
|
+
mdb.add_effective_width(element_ids=[1,2,3,4],factor_i=0.1,factor_j=0.1,dz_i=0.1,dz_j=0.1)
|
|
1887
|
+
mdb.add_effective_width(element_ids="1to4",factor_i=0.1,factor_j=0.1,dz_i=0.1,dz_j=0.1)
|
|
1888
|
+
Returns: 无
|
|
1889
|
+
"""
|
|
1890
|
+
try:
|
|
1891
|
+
qt_model.AddEffectiveWidth(elementIds=element_ids, factorI=factor_i, factorJ=factor_j, dzI=dz_i, dzJ=dz_j, groupName=group_name)
|
|
1892
|
+
except Exception as ex:
|
|
1893
|
+
raise Exception(ex)
|
|
1894
|
+
|
|
1895
|
+
@staticmethod
|
|
1896
|
+
def remove_effective_width(element_ids, group_name: str = "默认边界组"):
|
|
1897
|
+
"""
|
|
1898
|
+
删除有效宽度系数
|
|
1899
|
+
Args:
|
|
1900
|
+
element_ids:边界单元号支持整形和整形列表且支持XtoYbyN形式
|
|
1901
|
+
group_name:边界组名
|
|
1902
|
+
Example:
|
|
1903
|
+
mdb.remove_effective_width(element_ids=[1,2,3,4],group_name="边界组1")
|
|
1904
|
+
mdb.remove_effective_width(element_ids="1to4",group_name="边界组1")
|
|
1905
|
+
Returns: 无
|
|
1906
|
+
"""
|
|
1907
|
+
try:
|
|
1908
|
+
qt_model.RemoveEffectiveWidth(elementIds=element_ids, groupName=group_name)
|
|
1909
|
+
except Exception as ex:
|
|
1910
|
+
raise Exception(ex)
|
|
1911
|
+
|
|
1853
1912
|
@staticmethod
|
|
1854
1913
|
def add_boundary_group(name: str = ""):
|
|
1855
1914
|
"""
|
|
@@ -1894,7 +1953,7 @@ class Mdb:
|
|
|
1894
1953
|
"""
|
|
1895
1954
|
try:
|
|
1896
1955
|
if name != "":
|
|
1897
|
-
qt_model.RemoveBoundaryGroup(name)
|
|
1956
|
+
qt_model.RemoveBoundaryGroup(name=name)
|
|
1898
1957
|
else:
|
|
1899
1958
|
qt_model.RemoveAllBoundaryGroup()
|
|
1900
1959
|
except Exception as ex:
|
|
@@ -1915,21 +1974,21 @@ class Mdb:
|
|
|
1915
1974
|
raise Exception(ex)
|
|
1916
1975
|
|
|
1917
1976
|
@staticmethod
|
|
1918
|
-
def remove_boundary(remove_id: int,
|
|
1977
|
+
def remove_boundary(remove_id: int, kind: str, group_name: str = "默认边界组", extra_name="I"):
|
|
1919
1978
|
"""
|
|
1920
1979
|
根据节点号删除一般支撑、弹性支承/根据弹性连接I或J端(需指定)节点号删除弹性连接/根据单元号删除梁端约束/根据从节点号和约束方程名删除约束方程/根据从节点号删除主从约束
|
|
1921
1980
|
Args:
|
|
1922
1981
|
remove_id:节点号 or 单元号 or 从节点号
|
|
1923
|
-
|
|
1924
|
-
|
|
1982
|
+
kind:边界类型 ["一般支承", "弹性支承","一般弹性支承", "主从约束", "一般/受拉/受压/刚性弹性连接", "约束方程", "梁端约束"]
|
|
1983
|
+
group_name:边界所处边界组名
|
|
1925
1984
|
extra_name:删除弹性连接或约束方程时额外标识,约束方程名或指定删除弹性连接节点类型 I/J
|
|
1926
1985
|
Example:
|
|
1927
|
-
mdb.remove_boundary(remove_id=11,
|
|
1928
|
-
mdb.remove_boundary(remove_id=12,
|
|
1986
|
+
mdb.remove_boundary(remove_id=11, kind="一般弹性连接",group_name="边界组1", extra_name="J")
|
|
1987
|
+
mdb.remove_boundary(remove_id=12, kind="约束方程",group_name="边界组1", extra_name="约束方程名")
|
|
1929
1988
|
Returns: 无
|
|
1930
1989
|
"""
|
|
1931
1990
|
try:
|
|
1932
|
-
qt_model.RemoveBoundary(
|
|
1991
|
+
qt_model.RemoveBoundary(removeId=remove_id, kind=kind, group=group_name, extraName=extra_name)
|
|
1933
1992
|
except Exception as ex:
|
|
1934
1993
|
raise Exception(ex)
|
|
1935
1994
|
|
|
@@ -1986,7 +2045,7 @@ class Mdb:
|
|
|
1986
2045
|
raise Exception(ex)
|
|
1987
2046
|
|
|
1988
2047
|
@staticmethod
|
|
1989
|
-
def add_general_elastic_support(node_id=
|
|
2048
|
+
def add_general_elastic_support(node_id=None, property_name: str = "", group_name: str = "默认边界组"):
|
|
1990
2049
|
"""
|
|
1991
2050
|
添加一般弹性支承特性
|
|
1992
2051
|
Args:
|
|
@@ -1998,7 +2057,7 @@ class Mdb:
|
|
|
1998
2057
|
Returns: 无
|
|
1999
2058
|
"""
|
|
2000
2059
|
try:
|
|
2001
|
-
qt_model.AddGeneralElasticSupport(
|
|
2060
|
+
qt_model.AddGeneralElasticSupport(nodeId=node_id, propertyName=property_name, groupName=group_name)
|
|
2002
2061
|
except Exception as ex:
|
|
2003
2062
|
raise Exception(ex)
|
|
2004
2063
|
|
|
@@ -2067,7 +2126,7 @@ class Mdb:
|
|
|
2067
2126
|
Returns: 无
|
|
2068
2127
|
"""
|
|
2069
2128
|
try:
|
|
2070
|
-
qt_model.AddElasticLink(
|
|
2129
|
+
qt_model.AddElasticLink(index=index, linkType=link_type, startId=start_id, endId=end_id, beta=beta_angle,
|
|
2071
2130
|
boundaryInfo=boundary_info, groupName=group_name, disRatio=dis_ratio, kDx=kx)
|
|
2072
2131
|
except Exception as ex:
|
|
2073
2132
|
raise Exception(ex)
|
|
@@ -2075,7 +2134,7 @@ class Mdb:
|
|
|
2075
2134
|
@staticmethod
|
|
2076
2135
|
def add_master_slave_links(node_ids: list[tuple[int, int]] = None, boundary_info: list[bool] = None, group_name: str = "默认边界组"):
|
|
2077
2136
|
"""
|
|
2078
|
-
|
|
2137
|
+
批量添加主从约束,不指定编号默认为最大编号加1
|
|
2079
2138
|
Args:
|
|
2080
2139
|
node_ids:主节点号和从节点号,主节点号位于首位
|
|
2081
2140
|
boundary_info:边界信息 [X,Y,Z,Rx,Ry,Rz] ture-固定 false-自由
|
|
@@ -2759,7 +2818,7 @@ class Mdb:
|
|
|
2759
2818
|
raise Exception(ex)
|
|
2760
2819
|
|
|
2761
2820
|
@staticmethod
|
|
2762
|
-
def update_load_to_mass(name:str="",factor:float=1):
|
|
2821
|
+
def update_load_to_mass(name: str = "", factor: float = 1):
|
|
2763
2822
|
"""
|
|
2764
2823
|
更新荷载转为质量
|
|
2765
2824
|
Args:
|
|
@@ -2770,7 +2829,7 @@ class Mdb:
|
|
|
2770
2829
|
Returns: 无
|
|
2771
2830
|
"""
|
|
2772
2831
|
try:
|
|
2773
|
-
qt_model.UpdateLoadToMass(name=name,factor=factor)
|
|
2832
|
+
qt_model.UpdateLoadToMass(name=name, factor=factor)
|
|
2774
2833
|
except Exception as ex:
|
|
2775
2834
|
raise Exception(ex)
|
|
2776
2835
|
|
|
@@ -3242,7 +3301,7 @@ class Mdb:
|
|
|
3242
3301
|
raise Exception(ex)
|
|
3243
3302
|
|
|
3244
3303
|
@staticmethod
|
|
3245
|
-
def remove_spectrum_function(ids
|
|
3304
|
+
def remove_spectrum_function(ids=None, name: str = "") -> None:
|
|
3246
3305
|
"""
|
|
3247
3306
|
删除反应谱函数
|
|
3248
3307
|
Args:
|
|
@@ -3273,7 +3332,7 @@ class Mdb:
|
|
|
3273
3332
|
raise Exception(ex)
|
|
3274
3333
|
|
|
3275
3334
|
@staticmethod
|
|
3276
|
-
def remove_time_history_function(ids
|
|
3335
|
+
def remove_time_history_function(ids=None, name: str = "") -> None:
|
|
3277
3336
|
"""
|
|
3278
3337
|
通过函数编号删除时程函数
|
|
3279
3338
|
Args:
|
|
@@ -3306,7 +3365,7 @@ class Mdb:
|
|
|
3306
3365
|
raise Exception(ex)
|
|
3307
3366
|
|
|
3308
3367
|
@staticmethod
|
|
3309
|
-
def remove_nodal_mass(node_id
|
|
3368
|
+
def remove_nodal_mass(node_id=None):
|
|
3310
3369
|
"""
|
|
3311
3370
|
删除节点质量
|
|
3312
3371
|
Args:
|
|
@@ -3337,7 +3396,7 @@ class Mdb:
|
|
|
3337
3396
|
raise Exception(ex)
|
|
3338
3397
|
|
|
3339
3398
|
@staticmethod
|
|
3340
|
-
def remove_boundary_element_link(ids
|
|
3399
|
+
def remove_boundary_element_link(ids=None) -> None:
|
|
3341
3400
|
"""
|
|
3342
3401
|
删除边界单元连接
|
|
3343
3402
|
Args:
|
|
@@ -3368,7 +3427,7 @@ class Mdb:
|
|
|
3368
3427
|
raise Exception(ex)
|
|
3369
3428
|
|
|
3370
3429
|
@staticmethod
|
|
3371
|
-
def remove_nodal_dynamic_load(ids=
|
|
3430
|
+
def remove_nodal_dynamic_load(ids=None) -> None:
|
|
3372
3431
|
"""
|
|
3373
3432
|
删除节点动力荷载
|
|
3374
3433
|
Args:
|
|
@@ -3643,7 +3702,7 @@ class Mdb:
|
|
|
3643
3702
|
raise Exception(f"修改钢束:{name}失败,{ex}")
|
|
3644
3703
|
|
|
3645
3704
|
@staticmethod
|
|
3646
|
-
def update_element_component_type(ids
|
|
3705
|
+
def update_element_component_type(ids=None, component_type: int = 2):
|
|
3647
3706
|
"""
|
|
3648
3707
|
赋予单元构件类型
|
|
3649
3708
|
Args:
|
|
@@ -3940,7 +3999,7 @@ class Mdb:
|
|
|
3940
3999
|
raise Exception(ex)
|
|
3941
4000
|
|
|
3942
4001
|
@staticmethod
|
|
3943
|
-
def add_beam_section_temperature(element_id
|
|
4002
|
+
def add_beam_section_temperature(element_id=1, case_name: str = "", code_index: int = 1,
|
|
3944
4003
|
sec_type: int = 1, t1: float = 0, t2: float = 0, t3: float = 0,
|
|
3945
4004
|
thick: float = 0, group_name: str = "默认荷载组"):
|
|
3946
4005
|
"""
|
|
@@ -4898,28 +4957,28 @@ class Mdb:
|
|
|
4898
4957
|
raise Exception(f"删除施工阶段自重:{name}错误,{ex}")
|
|
4899
4958
|
|
|
4900
4959
|
@staticmethod
|
|
4901
|
-
def add_section_connection_stage(name: str, sec_id: int,
|
|
4960
|
+
def add_section_connection_stage(name: str, sec_id: int, element_id=None, stage_name="", age: float = 0,
|
|
4902
4961
|
weight_type: int = 0):
|
|
4903
4962
|
"""
|
|
4904
4963
|
添加施工阶段联合截面
|
|
4905
4964
|
Args:
|
|
4906
4965
|
name:名称
|
|
4907
4966
|
sec_id:截面号
|
|
4908
|
-
|
|
4967
|
+
element_id:单元号,支持整型和整型列表,支持XtoYbyN形式字符串
|
|
4909
4968
|
stage_name:结合阶段名
|
|
4910
4969
|
age:材龄
|
|
4911
4970
|
weight_type:辅材计自重方式 0-由主材承担 1-由整体承担 2-不计辅材自重
|
|
4912
4971
|
Example:
|
|
4913
|
-
mdb.add_section_connection_stage(name="联合阶段",sec_id=1,
|
|
4972
|
+
mdb.add_section_connection_stage(name="联合阶段",sec_id=1,element_id=[2,3,4,5],stage_name="施工阶段1")
|
|
4914
4973
|
Returns:无
|
|
4915
4974
|
"""
|
|
4916
4975
|
try:
|
|
4917
|
-
qt_model.AddSectionConnectionStage(name=name, secId=sec_id, elementIds=
|
|
4976
|
+
qt_model.AddSectionConnectionStage(name=name, secId=sec_id, elementIds=element_id, stageName=stage_name, age=age, weightType=weight_type)
|
|
4918
4977
|
except Exception as ex:
|
|
4919
4978
|
raise Exception(f"添加施工阶段联合截面失败:{name}错误,{ex}")
|
|
4920
4979
|
|
|
4921
4980
|
@staticmethod
|
|
4922
|
-
def update_section_connection_stage(name: str, new_name="", sec_id: int = 1,
|
|
4981
|
+
def update_section_connection_stage(name: str, new_name="", sec_id: int = 1, element_id=None,
|
|
4923
4982
|
stage_name="", age: float = 0, weight_type: int = 0):
|
|
4924
4983
|
"""
|
|
4925
4984
|
更新施工阶段联合截面
|
|
@@ -4927,17 +4986,17 @@ class Mdb:
|
|
|
4927
4986
|
name:名称
|
|
4928
4987
|
new_name:新名称
|
|
4929
4988
|
sec_id:截面号
|
|
4930
|
-
|
|
4989
|
+
element_id:单元号,支持整型和整型列表且支持XtoYbyN形式字符串
|
|
4931
4990
|
stage_name:结合阶段名
|
|
4932
4991
|
age:材龄
|
|
4933
4992
|
weight_type:辅材计自重方式 0-由主材承担 1-由整体承担 2-不计辅材自重
|
|
4934
4993
|
Example:
|
|
4935
|
-
mdb.update_section_connection_stage(name="联合阶段",sec_id=1,
|
|
4936
|
-
mdb.update_section_connection_stage(name="联合阶段",sec_id=1,
|
|
4994
|
+
mdb.update_section_connection_stage(name="联合阶段",sec_id=1,element_id=[2,3,4,5],stage_name="施工阶段1")
|
|
4995
|
+
mdb.update_section_connection_stage(name="联合阶段",sec_id=1,element_id="2to5",stage_name="施工阶段1")
|
|
4937
4996
|
Returns:无
|
|
4938
4997
|
"""
|
|
4939
4998
|
try:
|
|
4940
|
-
qt_model.UpdateSectionConnectionStage(name=name, newName=new_name, secId=sec_id, elementIds=
|
|
4999
|
+
qt_model.UpdateSectionConnectionStage(name=name, newName=new_name, secId=sec_id, elementIds=element_id,
|
|
4941
5000
|
stageName=stage_name, age=age, weightType=weight_type)
|
|
4942
5001
|
except Exception as ex:
|
|
4943
5002
|
raise Exception(f"更新施工阶段联合截面失败:{name}错误,{ex}")
|
|
@@ -4958,18 +5017,18 @@ class Mdb:
|
|
|
4958
5017
|
raise Exception(f"删除施工阶段联合截面失败:{name}错误,{ex}")
|
|
4959
5018
|
|
|
4960
5019
|
@staticmethod
|
|
4961
|
-
def add_element_to_connection_stage(
|
|
5020
|
+
def add_element_to_connection_stage(element_id, name: str):
|
|
4962
5021
|
"""
|
|
4963
5022
|
添加单元到施工阶段联合截面
|
|
4964
5023
|
Args:
|
|
4965
|
-
|
|
5024
|
+
element_id:单元号,支持整型和整型列表且支持XtoYbyN形式字符串
|
|
4966
5025
|
name:联合阶段名
|
|
4967
5026
|
Example:
|
|
4968
5027
|
mdb.add_element_to_connection_stage([1,2,3,4],"联合阶段")
|
|
4969
5028
|
Returns:无
|
|
4970
5029
|
"""
|
|
4971
5030
|
try:
|
|
4972
|
-
qt_model.AddElementToConnectionStage(elementIds=
|
|
5031
|
+
qt_model.AddElementToConnectionStage(elementIds=element_id, name=name)
|
|
4973
5032
|
except Exception as ex:
|
|
4974
5033
|
raise Exception(f"添加单元到施工阶段联合截面失败:{name}错误,{ex}")
|
|
4975
5034
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: qtmodel
|
|
3
|
-
Version: 0.7.
|
|
4
|
-
Summary: python modeling for qt 2025-06-
|
|
3
|
+
Version: 0.7.3
|
|
4
|
+
Summary: python modeling for qt 2025-06-27
|
|
5
5
|
Home-page: https://github.com/Inface0443/pyqt
|
|
6
6
|
Author: dqy-zhj
|
|
7
7
|
Author-email: 1105417715@qq.com
|
|
@@ -12,7 +12,7 @@ Classifier: Programming Language :: Python :: 3
|
|
|
12
12
|
Classifier: Operating System :: OS Independent
|
|
13
13
|
Description-Content-Type: text/markdown
|
|
14
14
|
|
|
15
|
-
> 最新版本 V0.7.
|
|
15
|
+
> 最新版本 V0.7.3 - 2025-06-27
|
|
16
16
|
> pip install --upgrade qtmodel -i https://pypi.org/simple
|
|
17
17
|
- 新增更新结构组接口
|
|
18
18
|
# 建模操作
|
|
@@ -503,7 +503,7 @@ Returns: 无
|
|
|
503
503
|
### update_local_orientation
|
|
504
504
|
反转杆系单元局部方向
|
|
505
505
|
> 参数:
|
|
506
|
-
>
|
|
506
|
+
> element_id: 杆系单元编号
|
|
507
507
|
```Python
|
|
508
508
|
# 示例代码
|
|
509
509
|
from qtmodel import *
|
|
@@ -644,7 +644,7 @@ Returns: 无
|
|
|
644
644
|
### renumber_elements
|
|
645
645
|
单元编号重排序,默认按1升序重排所有节点
|
|
646
646
|
> 参数:
|
|
647
|
-
>
|
|
647
|
+
> element_ids:被修改单元号
|
|
648
648
|
> new_ids:新单元号
|
|
649
649
|
```Python
|
|
650
650
|
# 示例代码
|
|
@@ -915,6 +915,8 @@ Returns: 无
|
|
|
915
915
|
> charm_right:混凝土截面右半倒角信息 (对称时可忽略,仅混凝土箱梁截面需要)
|
|
916
916
|
> box_num: 混凝土箱室数 (仅混凝土箱梁截面需要)
|
|
917
917
|
> box_height: 混凝土箱梁梁高 (仅混凝土箱梁截面需要)
|
|
918
|
+
> box_other_info: 混凝土箱梁额外信息(键包括"i1" "B0" "B4" "T4" 值为列表)
|
|
919
|
+
> box_other_right: 混凝土箱梁额外信息(对称时可忽略,键包括"i1" "B0" "B4" "T4" 值为列表)
|
|
918
920
|
> mat_combine: 组合截面材料信息 (仅组合材料需要) [弹性模量比s/c、密度比s/c、钢材泊松比、混凝土泊松比、热膨胀系数比s/c]
|
|
919
921
|
> rib_info:肋板信息
|
|
920
922
|
> rib_place:肋板位置 list[tuple[布置具体部位,参考点0-下/左,距参考点间距,肋板名,加劲肋位置0-上/左 1-下/右 2-两侧,加劲肋名]]
|
|
@@ -1154,6 +1156,34 @@ mdb.add_elements_to_tapper_section_group("变截面组1",ids="1to6")
|
|
|
1154
1156
|
```
|
|
1155
1157
|
Returns:无
|
|
1156
1158
|
## 边界操作
|
|
1159
|
+
### add_effective_width
|
|
1160
|
+
添加有效宽度系数
|
|
1161
|
+
> 参数:
|
|
1162
|
+
> element_ids:边界单元号支持整形和整形列表且支持XtoYbyN形式
|
|
1163
|
+
> factor_i:I端截面Iy折减系数
|
|
1164
|
+
> factor_j:J端截面Iy折减系数
|
|
1165
|
+
> dz_i:I端截面形心变换量
|
|
1166
|
+
> dz_j:J端截面形心变换量
|
|
1167
|
+
> group_name:边界组名
|
|
1168
|
+
```Python
|
|
1169
|
+
# 示例代码
|
|
1170
|
+
from qtmodel import *
|
|
1171
|
+
mdb.add_effective_width(element_ids=[1,2,3,4],factor_i=0.1,factor_j=0.1,dz_i=0.1,dz_j=0.1)
|
|
1172
|
+
mdb.add_effective_width(element_ids="1to4",factor_i=0.1,factor_j=0.1,dz_i=0.1,dz_j=0.1)
|
|
1173
|
+
```
|
|
1174
|
+
Returns: 无
|
|
1175
|
+
### remove_effective_width
|
|
1176
|
+
删除有效宽度系数
|
|
1177
|
+
> 参数:
|
|
1178
|
+
> element_ids:边界单元号支持整形和整形列表且支持XtoYbyN形式
|
|
1179
|
+
> group_name:边界组名
|
|
1180
|
+
```Python
|
|
1181
|
+
# 示例代码
|
|
1182
|
+
from qtmodel import *
|
|
1183
|
+
mdb.remove_effective_width(element_ids=[1,2,3,4],group_name="边界组1")
|
|
1184
|
+
mdb.remove_effective_width(element_ids="1to4",group_name="边界组1")
|
|
1185
|
+
```
|
|
1186
|
+
Returns: 无
|
|
1157
1187
|
### add_boundary_group
|
|
1158
1188
|
新建边界组
|
|
1159
1189
|
> 参数:
|
|
@@ -1199,14 +1229,14 @@ Returns: 无
|
|
|
1199
1229
|
根据节点号删除一般支撑、弹性支承/根据弹性连接I或J端(需指定)节点号删除弹性连接/根据单元号删除梁端约束/根据从节点号和约束方程名删除约束方程/根据从节点号删除主从约束
|
|
1200
1230
|
> 参数:
|
|
1201
1231
|
> remove_id:节点号 or 单元号 or 从节点号
|
|
1202
|
-
>
|
|
1203
|
-
>
|
|
1232
|
+
> kind:边界类型 ["一般支承", "弹性支承","一般弹性支承", "主从约束", "一般/受拉/受压/刚性弹性连接", "约束方程", "梁端约束"]
|
|
1233
|
+
> group_name:边界所处边界组名
|
|
1204
1234
|
> extra_name:删除弹性连接或约束方程时额外标识,约束方程名或指定删除弹性连接节点类型 I/J
|
|
1205
1235
|
```Python
|
|
1206
1236
|
# 示例代码
|
|
1207
1237
|
from qtmodel import *
|
|
1208
|
-
mdb.remove_boundary(remove_id=11,
|
|
1209
|
-
mdb.remove_boundary(remove_id=12,
|
|
1238
|
+
mdb.remove_boundary(remove_id=11, kind="一般弹性连接",group_name="边界组1", extra_name="J")
|
|
1239
|
+
mdb.remove_boundary(remove_id=12, kind="约束方程",group_name="边界组1", extra_name="约束方程名")
|
|
1210
1240
|
```
|
|
1211
1241
|
Returns: 无
|
|
1212
1242
|
### add_general_elastic_support_property
|
|
@@ -1303,7 +1333,7 @@ mdb.add_elastic_link(link_type=3,start_id=1,end_id=2,kx=1e6)
|
|
|
1303
1333
|
```
|
|
1304
1334
|
Returns: 无
|
|
1305
1335
|
### add_master_slave_links
|
|
1306
|
-
|
|
1336
|
+
批量添加主从约束,不指定编号默认为最大编号加1
|
|
1307
1337
|
> 参数:
|
|
1308
1338
|
> node_ids:主节点号和从节点号,主节点号位于首位
|
|
1309
1339
|
> boundary_info:边界信息 [X,Y,Z,Rx,Ry,Rz] ture-固定 false-自由
|
|
@@ -3097,14 +3127,14 @@ Returns: 无
|
|
|
3097
3127
|
> 参数:
|
|
3098
3128
|
> name:名称
|
|
3099
3129
|
> sec_id:截面号
|
|
3100
|
-
>
|
|
3130
|
+
> element_id:单元号,支持整型和整型列表,支持XtoYbyN形式字符串
|
|
3101
3131
|
> stage_name:结合阶段名
|
|
3102
3132
|
> age:材龄
|
|
3103
3133
|
> weight_type:辅材计自重方式 0-由主材承担 1-由整体承担 2-不计辅材自重
|
|
3104
3134
|
```Python
|
|
3105
3135
|
# 示例代码
|
|
3106
3136
|
from qtmodel import *
|
|
3107
|
-
mdb.add_section_connection_stage(name="联合阶段",sec_id=1,
|
|
3137
|
+
mdb.add_section_connection_stage(name="联合阶段",sec_id=1,element_id=[2,3,4,5],stage_name="施工阶段1")
|
|
3108
3138
|
```
|
|
3109
3139
|
Returns:无
|
|
3110
3140
|
### update_section_connection_stage
|
|
@@ -3113,15 +3143,15 @@ Returns:无
|
|
|
3113
3143
|
> name:名称
|
|
3114
3144
|
> new_name:新名称
|
|
3115
3145
|
> sec_id:截面号
|
|
3116
|
-
>
|
|
3146
|
+
> element_id:单元号,支持整型和整型列表且支持XtoYbyN形式字符串
|
|
3117
3147
|
> stage_name:结合阶段名
|
|
3118
3148
|
> age:材龄
|
|
3119
3149
|
> weight_type:辅材计自重方式 0-由主材承担 1-由整体承担 2-不计辅材自重
|
|
3120
3150
|
```Python
|
|
3121
3151
|
# 示例代码
|
|
3122
3152
|
from qtmodel import *
|
|
3123
|
-
mdb.update_section_connection_stage(name="联合阶段",sec_id=1,
|
|
3124
|
-
mdb.update_section_connection_stage(name="联合阶段",sec_id=1,
|
|
3153
|
+
mdb.update_section_connection_stage(name="联合阶段",sec_id=1,element_id=[2,3,4,5],stage_name="施工阶段1")
|
|
3154
|
+
mdb.update_section_connection_stage(name="联合阶段",sec_id=1,element_id="2to5",stage_name="施工阶段1")
|
|
3125
3155
|
```
|
|
3126
3156
|
Returns:无
|
|
3127
3157
|
### remove_section_connection_stage
|
|
@@ -3137,7 +3167,7 @@ Returns:无
|
|
|
3137
3167
|
### add_element_to_connection_stage
|
|
3138
3168
|
添加单元到施工阶段联合截面
|
|
3139
3169
|
> 参数:
|
|
3140
|
-
>
|
|
3170
|
+
> element_id:单元号,支持整型和整型列表且支持XtoYbyN形式字符串
|
|
3141
3171
|
> name:联合阶段名
|
|
3142
3172
|
```Python
|
|
3143
3173
|
# 示例代码
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|