qtmodel 0.5.53__tar.gz → 0.5.56__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.
@@ -1,7 +1,7 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: qtmodel
3
- Version: 0.5.53
4
- Summary: python modeling for qt 2024-12-28
3
+ Version: 0.5.56
4
+ Summary: python modeling for qt 2025-01-08
5
5
  Home-page: https://github.com/Inface0443/pyqt
6
6
  Author: dqy-zhj
7
7
  Author-email: 1105417715@qq.com
@@ -12,9 +12,9 @@ Classifier: Programming Language :: Python :: 3
12
12
  Classifier: Operating System :: OS Independent
13
13
  Description-Content-Type: text/markdown
14
14
 
15
- # 最新版本 V0.5.53 - 2024-12-28
15
+ # 最新版本 V0.5.56 - 2025-01-08
16
16
  > pip install --upgrade qtmodel -i https://pypi.org/simple
17
- - 增加边界更新接口
17
+ - 修改部分接口
18
18
  ## 项目管理
19
19
  ### update_bim
20
20
  刷新Bim模型信息
@@ -247,6 +247,66 @@ from qtmodel import *
247
247
  mdb.update_response_spectrum_setting(do_analysis=True,kind=1,damping_ratio=0.05)
248
248
  ```
249
249
  Returns: 无
250
+ ## 结构组操作
251
+ ### add_structure_group
252
+ 添加结构组
253
+ > 参数:
254
+ > name: 结构组名
255
+ > node_ids: 节点编号列表(可选参数)
256
+ > element_ids: 单元编号列表(可选参数)
257
+ ```Python
258
+ # 示例代码
259
+ from qtmodel import *
260
+ mdb.add_structure_group(name="新建结构组1")
261
+ mdb.add_structure_group(name="新建结构组2",node_ids=[1,2,3,4],element_ids=[1,2])
262
+ ```
263
+ Returns: 无
264
+ ### update_structure_group_name
265
+ 更新结构组名
266
+ > 参数:
267
+ > name: 结构组名
268
+ > new_name: 节点编号列表(可选参数)
269
+ ```Python
270
+ # 示例代码
271
+ from qtmodel import *
272
+ mdb.update_structure_group_name(name="结构组1",new_name="新结构组")
273
+ ```
274
+ Returns: 无
275
+ ### remove_structure_group
276
+ 可根据结构与组名删除结构组,当组名为默认则删除所有结构组
277
+ > 参数:
278
+ > name:结构组名称
279
+ ```Python
280
+ # 示例代码
281
+ from qtmodel import *
282
+ mdb.remove_structure_group(name="新建结构组1")
283
+ mdb.remove_structure_group()
284
+ ```
285
+ Returns: 无
286
+ ### add_structure_to_group
287
+ 为结构组添加节点和/或单元
288
+ > 参数:
289
+ > name: 结构组名
290
+ > node_ids: 节点编号列表(可选参数)
291
+ > element_ids: 单元编号列表(可选参数)
292
+ ```Python
293
+ # 示例代码
294
+ from qtmodel import *
295
+ mdb.add_structure_to_group(name="现有结构组1",node_ids=[1,2,3,4],element_ids=[1,2])
296
+ ```
297
+ Returns: 无
298
+ ### remove_structure_from_group
299
+ 为结构组删除节点、单元
300
+ > 参数:
301
+ > name: 结构组名
302
+ > node_ids: 节点编号列表(可选参数)
303
+ > element_ids: 单元编号列表(可选参数)
304
+ ```Python
305
+ # 示例代码
306
+ from qtmodel import *
307
+ mdb.remove_structure_from_group(name="现有结构组1",node_ids=[1,2,3,4],element_ids=[1,2])
308
+ ```
309
+ Returns: 无
250
310
  ## 节点操作
251
311
  ### add_node
252
312
  根据坐标信息和节点编号添加节点
@@ -327,13 +387,16 @@ mdb.remove_node(ids=1)
327
387
  mdb.remove_node(ids=[1,2,3])
328
388
  ```
329
389
  Returns: 无
330
- ### renumber_node
331
- 节点编号重拍
390
+ ### renumber_nodes
391
+ 节点编号重排序,默认按1升序重排所有节点
332
392
  > 参数:
393
+ > node_ids:被修改节点号
394
+ > new_ids:新节点号
333
395
  ```Python
334
396
  # 示例代码
335
397
  from qtmodel import *
336
- mdb.renumber_node()
398
+ mdb.renumber_nodes()
399
+ mdb.renumber_nodes([7,9,22],[1,2,3])
337
400
  ```
338
401
  Returns: 无
339
402
  ### move_node
@@ -349,55 +412,6 @@ from qtmodel import *
349
412
  mdb.move_node(node_id=1,offset_x=1.5,offset_y=1.5,offset_z=1.5)
350
413
  ```
351
414
  Returns: 无
352
- ### add_structure_group
353
- 添加结构组
354
- > 参数:
355
- > name: 结构组名
356
- > index: 结构组编号(非必须参数),默认自动识别当前编号
357
- > node_ids: 节点编号列表(可选参数)
358
- > element_ids: 单元编号列表(可选参数)
359
- ```Python
360
- # 示例代码
361
- from qtmodel import *
362
- mdb.add_structure_group(name="新建结构组1")
363
- mdb.add_structure_group(name="新建结构组2",node_ids=[1,2,3,4],element_ids=[1,2])
364
- ```
365
- Returns: 无
366
- ### remove_structure_group
367
- 可根据结构与组名删除结构组,当组名为默认则删除所有结构组
368
- > 参数:
369
- > name:结构组名称
370
- ```Python
371
- # 示例代码
372
- from qtmodel import *
373
- mdb.remove_structure_group(name="新建结构组1")
374
- mdb.remove_structure_group()
375
- ```
376
- Returns: 无
377
- ### add_structure_to_group
378
- 为结构组添加节点和/或单元
379
- > 参数:
380
- > name: 结构组名
381
- > node_ids: 节点编号列表(可选参数)
382
- > element_ids: 单元编号列表(可选参数)
383
- ```Python
384
- # 示例代码
385
- from qtmodel import *
386
- mdb.add_structure_to_group(name="现有结构组1",node_ids=[1,2,3,4],element_ids=[1,2])
387
- ```
388
- Returns: 无
389
- ### remove_structure_in_group
390
- 为结构组删除节点和/或单元
391
- > 参数:
392
- > name: 结构组名
393
- > node_ids: 节点编号列表(可选参数)
394
- > element_ids: 单元编号列表(可选参数)
395
- ```Python
396
- # 示例代码
397
- from qtmodel import *
398
- mdb.add_structure_to_group(name="现有结构组1",node_ids=[1,2,3,4],element_ids=[1,2])
399
- ```
400
- Returns: 无
401
415
  ## 单元操作
402
416
  ### update_local_orientation
403
417
  反转杆系单元局部方向
@@ -540,7 +554,41 @@ mdb.remove_element()
540
554
  mdb.remove_element(index=1)
541
555
  ```
542
556
  Returns: 无
557
+ ### renumber_elements
558
+ 单元编号重排序,默认按1升序重排所有节点
559
+ > 参数:
560
+ > ele_ids:被修改单元号
561
+ > new_ids:新单元号
562
+ ```Python
563
+ # 示例代码
564
+ from qtmodel import *
565
+ mdb.renumber_elements()
566
+ mdb.renumber_elements([7,9,22],[1,2,3])
567
+ ```
568
+ Returns: 无
543
569
  ## 材料操作
570
+ ### update_material
571
+ 添加材料
572
+ > 参数:
573
+ > name:旧材料名称
574
+ > new_name:新材料名称,默认不更改名称
575
+ > new_id:新材料Id,默认不更改Id
576
+ > mat_type: 材料类型,1-混凝土 2-钢材 3-预应力 4-钢筋 5-自定义 6-组合材料
577
+ > standard:规范序号,参考UI 默认从1开始
578
+ > database:数据库名称
579
+ > construct_factor:构造系数
580
+ > modified:是否修改默认材料参数,默认不修改 (可选参数)
581
+ > data_info:材料参数列表[弹性模量,容重,泊松比,热膨胀系数] (可选参数)
582
+ > creep_id:徐变材料id (可选参数)
583
+ > f_cuk: 立方体抗压强度标准值 (可选参数)
584
+ > composite_info: 主材名和辅材名 (仅组合材料需要)
585
+ ```Python
586
+ # 示例代码
587
+ from qtmodel import *
588
+ mdb.update_material(name="混凝土材料1",mat_type=1,standard=1,database="C50")
589
+ mdb.update_material(name="自定义材料1",mat_type=5,data_info=[3.5e10,2.5e4,0.2,1.5e-5])
590
+ ```
591
+ Returns: 无
544
592
  ### add_material
545
593
  添加材料
546
594
  > 参数:
@@ -562,35 +610,136 @@ mdb.add_material(index=1,name="混凝土材料1",mat_type=1,standard=1,database=
562
610
  mdb.add_material(index=1,name="自定义材料1",mat_type=5,data_info=[3.5e10,2.5e4,0.2,1.5e-5])
563
611
  ```
564
612
  Returns: 无
565
- ### add_time_material
613
+ ### add_time_parameter
566
614
  添加收缩徐变材料
567
615
  > 参数:
568
- > index: 指定收缩徐变编号,默认则自动识别 (可选参数)
569
616
  > name: 收缩徐变名
570
617
  > code_index: 收缩徐变规范索引
571
618
  > time_parameter: 对应规范的收缩徐变参数列表,默认不改变规范中信息 (可选参数)
619
+ > creep_data: 徐变数据 [(函数名,龄期)...]
620
+ > shrink_data: 收缩函数名
621
+ ```Python
622
+ # 示例代码
623
+ from qtmodel import *
624
+ mdb.add_time_parameter(name="收缩徐变材料1",code_index=1)
625
+ ```
626
+ Returns: 无
627
+ ### update_time_parameter
628
+ 添加收缩徐变材料
629
+ > 参数:
630
+ > name: 收缩徐变名
631
+ > new_name: 新收缩徐变名,默认不改变名称
632
+ > code_index: 收缩徐变规范索引
633
+ > time_parameter: 对应规范的收缩徐变参数列表,默认不改变规范中信息 (可选参数)
634
+ > creep_data: 徐变数据 [(函数名,龄期)...]
635
+ > shrink_data: 收缩函数名
636
+ ```Python
637
+ # 示例代码
638
+ from qtmodel import *
639
+ mdb.update_time_parameter(name="收缩徐变材料1",new_name="新收缩徐变材料1",code_index=1)
640
+ ```
641
+ Returns: 无
642
+ ### add_creep_function
643
+ 添加徐变函数
644
+ > 参数:
645
+ > name:徐变函数名
646
+ > creep_data:徐变数据[(时间,徐变系数)...]
647
+ > scale_factor:缩放系数
572
648
  ```Python
573
649
  # 示例代码
574
650
  from qtmodel import *
575
- mdb.add_time_material(index=1,name="收缩徐变材料1",code_index=1)
651
+ mdb.add_creep_function(name="徐变函数名",creep_data=[(5,0.5),(100,0.75)])
576
652
  ```
577
653
  Returns: 无
578
- ### update_material_creep
654
+ ### update_creep_function
655
+ 添加徐变函数
656
+ > 参数:
657
+ > name:徐变函数名
658
+ > new_name: 新徐变函数名,默认不改变函数名
659
+ > creep_data:徐变数据,默认不改变函数名 [(时间,徐变系数)...]
660
+ > scale_factor:缩放系数
661
+ ```Python
662
+ # 示例代码
663
+ from qtmodel import *
664
+ mdb.add_creep_function(name="徐变函数名",creep_data=[(5,0.5),(100,0.75)])
665
+ ```
666
+ Returns: 无
667
+ ### add_shrink_function
668
+ 添加收缩函数
669
+ > 参数:
670
+ > name:收缩函数名
671
+ > shrink_data:收缩数据[(时间,收缩系数)...]
672
+ > scale_factor:缩放系数
673
+ ```Python
674
+ # 示例代码
675
+ from qtmodel import *
676
+ mdb.add_shrink_function(name="收缩函数名",shrink_data=[(5,0.5),(100,0.75)])
677
+ mdb.add_shrink_function(name="收缩函数名",scale_factor=1.2)
678
+ ```
679
+ Returns: 无
680
+ ### update_shrink_function
681
+ 添加收缩函数
682
+ > 参数:
683
+ > name:收缩函数名
684
+ > new_name:收缩函数名
685
+ > shrink_data:收缩数据,默认不改变数据 [(时间,收缩系数)...]
686
+ > scale_factor:缩放系数
687
+ ```Python
688
+ # 示例代码
689
+ from qtmodel import *
690
+ mdb.update_shrink_function(name="收缩函数名",new_name="函数名2")
691
+ mdb.update_shrink_function(name="收缩函数名",shrink_data=[(5,0.5),(100,0.75)])
692
+ mdb.update_shrink_function(name="收缩函数名",scale_factor=1.2)
693
+ ```
694
+ Returns: 无
695
+ ### remove_shrink_function
696
+ 删除收缩函数
697
+ > 参数:
698
+ > name:收缩函数名
699
+ ```Python
700
+ # 示例代码
701
+ from qtmodel import *
702
+ mdb.remove_shrink_function(name="收缩函数名")
703
+ ```
704
+ Returns: 无
705
+ ### remove_creep_function
706
+ 删除徐变函数
707
+ > 参数:
708
+ > name:徐变函数名
709
+ ```Python
710
+ # 示例代码
711
+ from qtmodel import *
712
+ mdb.remove_creep_function(name="徐变函数名")
713
+ ```
714
+ Returns: 无
715
+ ### update_material_time_parameter
579
716
  将收缩徐变参数连接到材料
580
717
  > 参数:
581
- > index: 材料编号
582
- > creep_name: 收缩徐变名称
718
+ > name: 材料名
719
+ > time_parameter_name: 收缩徐变名称
583
720
  > f_cuk: 材料标准抗压强度,仅自定义材料是需要输入
584
721
  ```Python
585
722
  # 示例代码
586
723
  from qtmodel import *
587
- mdb.update_material_creep(index=1,creep_name="C60",f_cuk=5e7)
724
+ mdb.update_material_time_parameter(name="C60",time_parameter_name="收缩徐变1",f_cuk=5e7)
725
+ ```
726
+ Returns: 无
727
+ ### update_material_id
728
+ 更新材料编号
729
+ > 参数:
730
+ > name:材料名称
731
+ > new_id:新编号
732
+ ```Python
733
+ # 示例代码
734
+ from qtmodel import *
735
+ mdb.update_material_id(name="材料1",new_id=2)
588
736
  ```
589
737
  Returns: 无
590
738
  ### remove_material
591
739
  删除指定材料
592
740
  > 参数:
593
741
  > index:指定材料编号,默认则删除所有材料
742
+ > name: 指定材料名,材料名为空时按照index删除
594
743
  ```Python
595
744
  # 示例代码
596
745
  from qtmodel import *
@@ -598,6 +747,73 @@ mdb.remove_material()
598
747
  mdb.remove_material(index=1)
599
748
  ```
600
749
  Returns: 无
750
+ ### update_material_construction_factor
751
+ 更新材料构造系数
752
+ > 参数:
753
+ > name:指定材料编号,默认则删除所有材料
754
+ > factor:指定材料编号,默认则删除所有材料
755
+ ```Python
756
+ # 示例代码
757
+ from qtmodel import *
758
+ mdb.update_material_construction_factor(name="材料1",factor=1.0)
759
+ ```
760
+ Returns: 无
761
+ ### remove_time_parameter
762
+ 删除指定时间依存材料
763
+ > 参数:
764
+ > name: 指定收缩徐变材料名
765
+ ```Python
766
+ # 示例代码
767
+ from qtmodel import *
768
+ mdb.remove_time_parameter("收缩徐变材料1")
769
+ ```
770
+ Returns: 无
771
+ ## 板厚操作
772
+ ### add_thickness
773
+ 添加板厚
774
+ > 参数:
775
+ > index: 板厚id
776
+ > name: 板厚名称
777
+ > t: 板厚度
778
+ > thick_type: 板厚类型 0-普通板 1-加劲肋板
779
+ > bias_info: 默认不偏心,偏心时输入列表[type,value]
780
+ > _type:0-厚度比 1-数值_
781
+ > rib_pos: 肋板位置 0-下部 1-上部
782
+ > dist_v: 纵向截面肋板间距
783
+ > dist_l: 横向截面肋板间距
784
+ > rib_v: 纵向肋板信息
785
+ > rib_l: 横向肋板信息
786
+ ```Python
787
+ # 示例代码
788
+ from qtmodel import *
789
+ mdb.add_thickness(name="厚度1", t=0.2,thick_type=0,bias_info=(0,0.8))
790
+ mdb.add_thickness(name="厚度2", t=0.2,thick_type=1,rib_pos=0,dist_v=0.1,rib_v=[1,1,0.02,0.02])
791
+ ```
792
+ Returns: 无
793
+ ### update_thickness_id
794
+ 更新板厚编号
795
+ > 参数:
796
+ > index: 板厚id
797
+ > new_id: 新板厚id
798
+ ```Python
799
+ # 示例代码
800
+ from qtmodel import *
801
+ mdb.update_thickness_id(1,2)
802
+ ```
803
+ Returns: 无
804
+ ### remove_thickness
805
+ 删除板厚
806
+ > 参数:
807
+ > index:板厚编号,默认时删除所有板厚信息
808
+ > name:默认按照编号删除,如果不为空则按照名称删除
809
+ ```Python
810
+ # 示例代码
811
+ from qtmodel import *
812
+ mdb.remove_thickness()
813
+ mdb.remove_thickness(index=1)
814
+ mdb.remove_thickness(name="板厚1")
815
+ ```
816
+ Returns: 无
601
817
  ## 截面操作
602
818
  ### add_section
603
819
  添加单一截面信息,如果截面存在则自动覆盖
@@ -617,7 +833,6 @@ Returns: 无
617
833
  > rib_place:肋板位置 list[tuple[布置具体部位,参考点0-下/左,距参考点间距,肋板名,加劲肋位置0-上/左 1-下/右 2-两侧,加劲肋名]]
618
834
  > 布置具体部位(工字钢梁):1-上左 2-上右 3-腹板 4-下左 5-下右
619
835
  > 布置具体部位(箱型钢梁):1-上左 2-上中 3-上右 4-左腹板 5-右腹板 6-下左 7-下中 8-下右
620
- > sec_info:截面特性列表,共计26个参数参考UI截面
621
836
  > loop_segments:线圈坐标集合 list[dict] dict示例:{"main":[(x1,y1),(x2,y2)...],"sub1":[(x1,y1),(x2,y2)...],"sub2":[(x1,y1),(x2,y2)...]}
622
837
  > sec_lines:线宽集合[(x1,y1,x2,y3,thick),]
623
838
  > secondary_loop_segments:辅材线圈坐标集合 list[dict] (同loop_segments)
@@ -647,12 +862,27 @@ Returns: 无
647
862
  > index:截面编号
648
863
  > name:截面名称
649
864
  > sec_type:截面类型
650
- > sec_dict:截面始端编号
865
+ > sec_data:截面信息字典,键值参考添加add_section方法参数
651
866
  ```Python
652
867
  # 示例代码
653
868
  from qtmodel import *
654
869
  mdb.add_single_section(index=1,name="变截面1",sec_type="矩形",
655
- sec_dict={"sec_info":[1,2],"bias_type":"中心"})
870
+ sec_data={"sec_info":[1,2],"bias_type":"中心"})
871
+ ```
872
+ Returns: 无
873
+ ### update_single_section
874
+ 以字典形式添加单一截面
875
+ > 参数:
876
+ > index:截面编号
877
+ > new_id:新截面编号,默认不修改截面编号
878
+ > name:截面名称
879
+ > sec_type:截面类型
880
+ > sec_data:截面信息字典,键值参考添加add_section方法参数
881
+ ```Python
882
+ # 示例代码
883
+ from qtmodel import *
884
+ mdb.update_single_section(index=1,name="变截面1",sec_type="矩形",
885
+ sec_data={"sec_info":[1,2],"bias_type":"中心"})
656
886
  ```
657
887
  Returns: 无
658
888
  ### add_tapper_section
@@ -661,6 +891,25 @@ Returns: 无
661
891
  > index:截面编号
662
892
  > name:截面名称
663
893
  > sec_type:截面类型
894
+ > sec_begin:截面始端截面信息字典,键值参考添加add_section方法参数
895
+ > sec_end:截面末端截面信息字典,键值参考添加add_section方法参数
896
+ > shear_consider:考虑剪切变形
897
+ > sec_normalize:变截面线段线圈重新排序
898
+ ```Python
899
+ # 示例代码
900
+ from qtmodel import *
901
+ mdb.add_tapper_section(index=1,name="变截面1",sec_type="矩形",
902
+ sec_begin={"sec_info":[1,2],"bias_type":"中心"},
903
+ sec_end={"sec_info":[2,2],"bias_type":"中心"})
904
+ ```
905
+ Returns: 无
906
+ ### update_tapper_section
907
+ 添加变截面,字典参数参考单一截面,如果截面存在则自动覆盖
908
+ > 参数:
909
+ > index:截面编号
910
+ > new_id:新截面编号,默认不修改截面编号
911
+ > name:截面名称
912
+ > sec_type:截面类型
664
913
  > sec_begin:截面始端编号
665
914
  > sec_end:截面末端编号
666
915
  > shear_consider:考虑剪切变形
@@ -699,44 +948,29 @@ mdb.remove_section()
699
948
  mdb.remove_section(1)
700
949
  ```
701
950
  Returns: 无
702
- ## 板厚操作
703
- ### add_thickness
704
- 添加板厚
705
- > 参数:
706
- > index: 板厚id
707
- > name: 板厚名称
708
- > t: 板厚度
709
- > thick_type: 板厚类型 0-普通板 1-加劲肋板
710
- > bias_info: 默认不偏心,偏心时输入列表[type,value]
711
- > _type:0-厚度比 1-数值_
712
- > rib_pos: 肋板位置 0-下部 1-上部
713
- > dist_v: 纵向截面肋板间距
714
- > dist_l: 横向截面肋板间距
715
- > rib_v: 纵向肋板信息
716
- > rib_l: 横向肋板信息
717
- ```Python
718
- # 示例代码
719
- from qtmodel import *
720
- mdb.add_thickness(name="厚度1", t=0.2,thick_type=0,bias_info=(0,0.8))
721
- mdb.add_thickness(name="厚度2", t=0.2,thick_type=1,rib_pos=0,dist_v=0.1,rib_v=[1,1,0.02,0.02])
722
- ```
723
- Returns: 无
724
- ### remove_thickness
725
- 删除板厚
951
+ ### add_tapper_section_group
952
+ 添加变截面组
726
953
  > 参数:
727
- > index:板厚编号,默认时删除所有板厚信息
954
+ > ids:变截面组单元号
955
+ > name: 变截面组名
956
+ > factor_w: 宽度方向变化阶数 线性(1.0) 非线性(!=1.0)
957
+ > factor_h: 高度方向变化阶数 线性(1.0) 非线性(!=1.0)
958
+ > ref_w: 宽度方向参考点 0-i 1-j
959
+ > ref_h: 高度方向参考点 0-i 1-j
960
+ > dis_w: 宽度方向距离
961
+ > dis_h: 高度方向距离
728
962
  ```Python
729
963
  # 示例代码
730
964
  from qtmodel import *
731
- mdb.remove_thickness()
732
- mdb.remove_thickness(index=1)
965
+ mdb.add_tapper_section_group(ids=[1,2,3,4],name="变截面组1")
733
966
  ```
734
967
  Returns: 无
735
- ### add_tapper_section_group
968
+ ### update_tapper_section_group
736
969
  添加变截面组
737
970
  > 参数:
738
- > ids:变截面组编号
739
- > name: 变截面组名
971
+ > name:变截面组组名
972
+ > new_name: 新变截面组名
973
+ > ids:变截面组单元号
740
974
  > factor_w: 宽度方向变化阶数 线性(1.0) 非线性(!=1.0)
741
975
  > factor_h: 高度方向变化阶数 线性(1.0) 非线性(!=1.0)
742
976
  > ref_w: 宽度方向参考点 0-i 1-j
@@ -757,6 +991,7 @@ Returns: 无
757
991
  > center_type:中心类型
758
992
  > shear_consider:考虑剪切
759
993
  > bias_point:自定义偏心点(仅自定义类型偏心需要)
994
+ > side_i: 是否为截面I,否则为截面J(仅变截面需要)
760
995
  ```Python
761
996
  # 示例代码
762
997
  from qtmodel import *
@@ -764,6 +999,62 @@ mdb.update_section_bias(index=1,bias_type="中上",center_type="几何中心")
764
999
  mdb.update_section_bias(index=1,bias_type="自定义",bias_point=[0.1,0.2])
765
1000
  ```
766
1001
  Returns: 无
1002
+ ### update_section_property
1003
+ 更新截面特性
1004
+ > 参数:
1005
+ > index:截面号
1006
+ > sec_property:截面特性值参考UI共计26个数值
1007
+ > side_i:是否为I端截面(仅变截面需要)
1008
+ ```Python
1009
+ # 示例代码
1010
+ from qtmodel import *
1011
+ mdb.update_section_property(index=1,sec_property=[i for i in range(1,27)])
1012
+ ```
1013
+ Returns: 无
1014
+ ### add_tapper_section_from_group
1015
+ 将变截面组转为变截面
1016
+ > 参数:
1017
+ > name: 变截面组名,默认则转化全部变截面组
1018
+ ```Python
1019
+ # 示例代码
1020
+ from qtmodel import *
1021
+ mdb.add_tapper_section_from_group()
1022
+ mdb.add_tapper_section_from_group("变截面组1")
1023
+ ```
1024
+ Returns: 无
1025
+ ### update_section_id
1026
+ 更新截面编号
1027
+ > 参数:
1028
+ > index: 原编号
1029
+ > new_id: 新编号
1030
+ ```Python
1031
+ # 示例代码
1032
+ from qtmodel import *
1033
+ mdb.update_section_id(index=1,new_id=2)
1034
+ ```
1035
+ Returns:无
1036
+ ### remove_tapper_section_group
1037
+ 删除变截面组,默认删除所有变截面组
1038
+ > 参数:
1039
+ > name:变截面组名称
1040
+ ```Python
1041
+ # 示例代码
1042
+ from qtmodel import *
1043
+ mdb.remove_tapper_section_group()
1044
+ mdb.remove_tapper_section_group("变截面组1")
1045
+ ```
1046
+ Returns:无
1047
+ ### add_elements_to_tapper_section_group
1048
+ 删除变截面组,默认删除所有变截面组
1049
+ > 参数:
1050
+ > name:变截面组名称
1051
+ > ids:新增单元编号
1052
+ ```Python
1053
+ # 示例代码
1054
+ from qtmodel import *
1055
+ mdb.add_elements_to_tapper_section_group("变截面组1",ids=[1,2,3,4,5,6])
1056
+ ```
1057
+ Returns:无
767
1058
  ## 边界操作
768
1059
  ### add_boundary_group
769
1060
  新建边界组
@@ -1050,15 +1341,14 @@ mdb.add_user_vehicle(name="车道荷载",load_type="车道荷载",p=270000,q=105
1050
1341
  ```
1051
1342
  Returns: 无
1052
1343
  ### add_node_tandem
1053
- 添加节点纵列
1344
+ 添加节点纵列,默认以最小X对应节点作为纵列起点
1054
1345
  > 参数:
1055
1346
  > name:节点纵列名
1056
- > start_id:起始节点号
1057
1347
  > node_ids:节点列表
1058
1348
  ```Python
1059
1349
  # 示例代码
1060
1350
  from qtmodel import *
1061
- mdb.add_node_tandem(name="节点纵列1",start_id=1,node_ids=[i+1 for i in range(12)])
1351
+ mdb.add_node_tandem(name="节点纵列1",node_ids=[i+1 for i in range(12)])
1062
1352
  ```
1063
1353
  Returns: 无
1064
1354
  ### add_influence_plane
@@ -1080,6 +1370,8 @@ Returns: 无
1080
1370
  > tandem_name:节点纵列名
1081
1371
  > offset:偏移
1082
1372
  > lane_width:车道宽度
1373
+ > optimize:是否允许车辆摆动
1374
+ > direction:0-向前 1-向后
1083
1375
  ```Python
1084
1376
  # 示例代码
1085
1377
  from qtmodel import *
@@ -1207,6 +1499,81 @@ from qtmodel import *
1207
1499
  mdb.remove_live_load_case(name="活载工况1")
1208
1500
  ```
1209
1501
  Returns: 无
1502
+ ### update_standard_vehicle
1503
+ 添加标准车辆
1504
+ > 参数:
1505
+ > name: 车辆荷载名称
1506
+ > new_name: 新车辆荷载名称,默认不修改
1507
+ > standard_code: 荷载规范
1508
+ > _1-中国铁路桥涵规范(TB10002-2017)_
1509
+ > _2-城市桥梁设计规范(CJJ11-2019)_
1510
+ > _3-公路工程技术标准(JTJ 001-97)_
1511
+ > _4-公路桥涵设计通规(JTG D60-2004)_
1512
+ > _5-公路桥涵设计通规(JTG D60-2015)_
1513
+ > _6-城市轨道交通桥梁设计规范(GB/T51234-2017)_
1514
+ > _7-市域铁路设计规范2017(T/CRS C0101-2017)
1515
+ > load_type: 荷载类型,支持类型参考软件内界面
1516
+ > load_length: 默认为0即不限制荷载长度 (铁路桥涵规范2017 所需参数)
1517
+ > factor: 默认为1.0(铁路桥涵规范2017 ZH荷载所需参数)
1518
+ > n:车厢数: 默认6节车厢 (城市轨道交通桥梁规范2017 所需参数)
1519
+ > calc_fatigue:计算公路疲劳 (公路桥涵设计通规2015 所需参数)
1520
+ ```Python
1521
+ # 示例代码
1522
+ from qtmodel import *
1523
+ mdb.update_standard_vehicle("高速铁路",standard_code=1,load_type="高速铁路")
1524
+ ```
1525
+ Returns: 无
1526
+ ### update_user_vehicle
1527
+ 修改自定义标准车辆
1528
+ > 参数:
1529
+ > name: 车辆荷载名称
1530
+ > new_name: 新车辆荷载名称,默认不修改
1531
+ > load_type: 荷载类型,支持类型 -车辆/车道荷载 列车普通活载 城市轻轨活载 旧公路人群荷载 轮重集合
1532
+ > p: 荷载Pk或Pi列表
1533
+ > q: 均布荷载Qk或荷载集度dW
1534
+ > dis:荷载距离Li列表
1535
+ > load_length: 荷载长度 (列车普通活载 所需参数)
1536
+ > n:车厢数: 默认6节车厢 (列车普通活载 所需参数)
1537
+ > empty_load:空载 (列车普通活载、城市轻轨活载 所需参数)
1538
+ > width:宽度 (旧公路人群荷载 所需参数)
1539
+ > wheelbase:轮间距 (轮重集合 所需参数)
1540
+ > min_dis:车轮距影响面最小距离 (轮重集合 所需参数))
1541
+ > unit_force:荷载单位 默认为"N"
1542
+ > unit_length:长度单位 默认为"M"
1543
+ ```Python
1544
+ # 示例代码
1545
+ from qtmodel import *
1546
+ mdb.update_user_vehicle(name="车道荷载",load_type="车道荷载",p=270000,q=10500)
1547
+ ```
1548
+ Returns: 无
1549
+ ### update_node_tandem
1550
+ 添加节点纵列,默认以最小X对应节点作为纵列起点
1551
+ > 参数:
1552
+ > name:节点纵列名
1553
+ > new_name: 新节点纵列名,默认不修改
1554
+ > node_ids:节点列表
1555
+ ```Python
1556
+ # 示例代码
1557
+ from qtmodel import *
1558
+ mdb.update_node_tandem(name="节点纵列1",node_ids=[i+1 for i in range(12)])
1559
+ ```
1560
+ Returns: 无
1561
+ ### update_live_load_case
1562
+ 添加移动荷载工况
1563
+ > 参数:
1564
+ > name:活载工况名
1565
+ > new_name:新移动荷载名,默认不修改
1566
+ > influence_plane:影响线名
1567
+ > span:跨度
1568
+ > sub_case:子工况信息 [(车辆名称,系数,["车道1","车道2"])...]
1569
+ > trailer_code:考虑挂车时挂车车辆名
1570
+ > special_code:考虑特载时特载车辆名
1571
+ ```Python
1572
+ # 示例代码
1573
+ from qtmodel import *
1574
+ mdb.update_live_load_case(name="活载工况1",influence_plane="影响面1",span=100,sub_case=[("车辆名称",1.0,["车道1","车道2"]),])
1575
+ ```
1576
+ Returns: 无
1210
1577
  ## 动力荷载操作
1211
1578
  ### add_load_to_mass
1212
1579
  添加荷载转为质量
@@ -1305,7 +1672,7 @@ Returns: 无
1305
1672
  > 参数:
1306
1673
  > name:钢束特性名
1307
1674
  > tendon_type: 0-PRE 1-POST
1308
- > material_id: 钢材材料编号
1675
+ > material_name: 钢材材料名
1309
1676
  > duct_type: 1-金属波纹管 2-塑料波纹管 3-铁皮管 4-钢管 5-抽芯成型
1310
1677
  > steel_type: 1-钢绞线 2-螺纹钢筋
1311
1678
  > steel_detail: 钢束详细信息
@@ -1319,10 +1686,45 @@ Returns: 无
1319
1686
  ```Python
1320
1687
  # 示例代码
1321
1688
  from qtmodel import *
1322
- mdb.add_tendon_property(name="钢束1",tendon_type=0,material_id=1,duct_type=1,steel_type=1,
1689
+ mdb.add_tendon_property(name="钢束1",tendon_type=0,material_name="预应力材料",duct_type=1,steel_type=1,
1323
1690
  steel_detail=[0.00014,0.10,0.25,0.0015],loos_detail=(1,1,1))
1324
1691
  ```
1325
1692
  Returns: 无
1693
+ ### update_tendon_property_material
1694
+ 更新钢束特性材料
1695
+ > 参数:
1696
+ > name:钢束特性名
1697
+ > material_name:材料名
1698
+ ```Python
1699
+ # 示例代码
1700
+ from qtmodel import *
1701
+ mdb.update_tendon_property_material("特性1",material_name="材料1")
1702
+ ```
1703
+ Returns:无
1704
+ ### update_tendon_property
1705
+ 更新钢束特性
1706
+ > 参数:
1707
+ > name:钢束特性名
1708
+ > new_name:新钢束特性名,默认不修改
1709
+ > tendon_type: 0-PRE 1-POST
1710
+ > material_name: 钢材材料名
1711
+ > duct_type: 1-金属波纹管 2-塑料波纹管 3-铁皮管 4-钢管 5-抽芯成型
1712
+ > steel_type: 1-钢绞线 2-螺纹钢筋
1713
+ > steel_detail: 钢束详细信息
1714
+ > _钢绞线[钢束面积,孔道直径,摩阻系数,偏差系数]_
1715
+ > _螺纹钢筋[钢筋直径,钢束面积,孔道直径,摩阻系数,偏差系数,张拉方式(1-一次张拉 2-超张拉)]_
1716
+ > loos_detail: 松弛信息[规范,张拉,松弛] (仅钢绞线需要,默认为[1,1,1])
1717
+ > _规范:1-公规 2-铁规_
1718
+ > _张拉方式:1-一次张拉 2-超张拉_
1719
+ > _松弛类型:1-一般松弛 2-低松弛_
1720
+ > slip_info: 滑移信息[始端距离,末端距离] 默认为[0.006, 0.006]
1721
+ ```Python
1722
+ # 示例代码
1723
+ from qtmodel import *
1724
+ mdb.update_tendon_property(name="钢束1",tendon_type=0,material_name="材料1",duct_type=1,steel_type=1,
1725
+ steel_detail=[0.00014,0.10,0.25,0.0015],loos_detail=(1,1,1))
1726
+ ```
1727
+ Returns:无
1326
1728
  ### add_tendon_3d
1327
1729
  添加三维钢束
1328
1730
  > 参数:
@@ -1360,7 +1762,7 @@ Returns: 无
1360
1762
  > line_type:1-导线点 2-折线点
1361
1763
  > position_type: 定位方式 1-直线 2-轨迹线
1362
1764
  > symmetry: 对称点 0-左端点 1-右端点 2-不对称
1363
- > control_points: 控制点信息[(x1,z1,r1),(x2,z2,r2)....]
1765
+ > control_points: 控制点信息[(x1,z1,r1),(x2,z2,r2)....] 三维[(x1,y1,z1,r1),(x2,y2,z2,r2)....]
1364
1766
  > control_points_lateral: 控制点横弯信息[(x1,y1,r1),(x2,y2,r2)....],无横弯时不必输入
1365
1767
  > point_insert: 定位方式
1366
1768
  > _直线: 插入点坐标[x,y,z]_
@@ -1379,14 +1781,46 @@ mdb.add_tendon_2d(name="BB1",property_name="22-15",num=2,position_type=2,
1379
1781
  control_points=[(0,-1,0),(10,-1,0)],point_insert=(1,1,1),track_group="轨迹线结构组1")
1380
1782
  ```
1381
1783
  Returns: 无
1382
- ### update_tendon_element
1383
- 赋予钢束构件
1784
+ ### update_tendon
1785
+ 添加三维钢束
1786
+ > 参数:
1787
+ > name:钢束名称
1788
+ > new_name:新钢束名称
1789
+ > tendon_2d:是否为2维钢束
1790
+ > property_name:钢束特性名称
1791
+ > group_name:默认钢束组
1792
+ > num:根数
1793
+ > line_type:1-导线点 2-折线点
1794
+ > position_type: 定位方式 1-直线 2-轨迹线
1795
+ > symmetry: 对称点 0-左端点 1-右端点 2-不对称
1796
+ > control_points: 控制点信息二维[(x1,z1,r1),(x2,z2,r2)....]
1797
+ > control_points_lateral: 控制点横弯信息[(x1,y1,r1),(x2,y2,r2)....],无横弯时不必输入
1798
+ > point_insert: 定位方式
1799
+ > _直线: 插入点坐标[x,y,z]_
1800
+ > _轨迹线: [插入端(1-I 2-J),插入方向(1-ij 2-ji),插入单元id]_
1801
+ > tendon_direction:直线钢束X方向向量 默认为[1,0,0] (轨迹线不用赋值)
1802
+ > _x轴-[1,0,0] y轴-[0,1,0] z轴-[0,0,1]_
1803
+ > rotation_angle:绕钢束旋转角度
1804
+ > track_group:轨迹线结构组名 (直线时不用赋值)
1805
+ > projection:直线钢束投影 (默认为true)
1806
+ ```Python
1807
+ # 示例代码
1808
+ from qtmodel import *
1809
+ mdb.update_tendon(name="BB1",property_name="22-15",num=2,position_type=1,
1810
+ control_points=[(0,-1,0),(10,-1,0)],point_insert=(0,0,0))
1811
+ mdb.update_tendon(name="BB1",property_name="22-15",num=2,position_type=2,
1812
+ control_points=[(0,-1,0),(10,-1,0)],point_insert=(1,1,1),track_group="轨迹线结构组1")
1813
+ ```
1814
+ Returns: 无
1815
+ ### update_element_component_type
1816
+ 赋予单元构件类型
1384
1817
  > 参数:
1385
1818
  > ids: 钢束构件所在单元编号集合
1819
+ > component_type:0-钢结构构件 1-钢筋混凝土构件 2-预应力混凝土构件
1386
1820
  ```Python
1387
1821
  # 示例代码
1388
1822
  from qtmodel import *
1389
- mdb.update_tendon_element(ids=[1,2,3,4])
1823
+ mdb.update_element_component_type(ids=[1,2,3,4],component_type=2)
1390
1824
  ```
1391
1825
  Returns: 无
1392
1826
  ### remove_tendon
@@ -1835,7 +2269,40 @@ from qtmodel import *
1835
2269
  mdb.remove_custom_temperature(case_name="工况1",element_id=1,group_name="默认荷载组")
1836
2270
  ```
1837
2271
  Returns: 无
1838
- ## 沉降操作
2272
+ ### add_plane_load_type
2273
+ 添加分配面荷载类型
2274
+ > 参数:
2275
+ > name:荷载类型名称
2276
+ > load_type:荷载类型 1-集中荷载 2-线荷载 3-面荷载
2277
+ > point_list:点列表,集中力时为列表内元素为 [x,y,force] 线荷载与面荷载时为 [x,y]
2278
+ > load:荷载值,仅线荷载与面荷载需要
2279
+ > copy_x:复制到x轴距离,与UI一致,支持3@2形式字符串,逗号分隔
2280
+ > copy_y:复制到y轴距离,与UI一致,支持3@2形式字符串,逗号分隔
2281
+ > describe:描述
2282
+ ```Python
2283
+ # 示例代码
2284
+ from qtmodel import *
2285
+ mdb.remove_custom_temperature(case_name="工况1",element_id=1,group_name="默认荷载组")
2286
+ ```
2287
+ Returns: 无
2288
+ ### add_plane_load
2289
+ 添加分配面荷载类型
2290
+ > 参数:
2291
+ > case_name:工况名
2292
+ > type_name:荷载类型 1-集中荷载 2-线荷载 3-面荷载
2293
+ > point1:第一点(原点)
2294
+ > point2:第一点(在x轴上)
2295
+ > point3:第一点(在y轴上)
2296
+ > plate_ids:指定板单元。默认时为全部板单元
2297
+ > coord_system:描述
2298
+ > group_name:描述
2299
+ ```Python
2300
+ # 示例代码
2301
+ from qtmodel import *
2302
+ mdb.remove_custom_temperature(case_name="工况1",element_id=1,group_name="默认荷载组")
2303
+ ```
2304
+ Returns: 无
2305
+ ## 荷载工况操作
1839
2306
  ### add_sink_group
1840
2307
  添加沉降组
1841
2308
  > 参数:
@@ -1848,6 +2315,19 @@ from qtmodel import *
1848
2315
  mdb.add_sink_group(name="沉降1",sink=0.1,node_ids=[1,2,3])
1849
2316
  ```
1850
2317
  Returns: 无
2318
+ ### update_sink_group
2319
+ 添加沉降组
2320
+ > 参数:
2321
+ > name: 沉降组名
2322
+ > new_name: 新沉降组名,默认不修改
2323
+ > sink: 沉降值
2324
+ > node_ids: 节点编号,支持数或列表
2325
+ ```Python
2326
+ # 示例代码
2327
+ from qtmodel import *
2328
+ mdb.update_sink_group(name="沉降1",sink=0.1,node_ids=[1,2,3])
2329
+ ```
2330
+ Returns: 无
1851
2331
  ### remove_sink_group
1852
2332
  按照名称删除沉降组
1853
2333
  > 参数:
@@ -1870,6 +2350,18 @@ from qtmodel import *
1870
2350
  mdb.add_sink_case(name="沉降工况1",sink_groups=["沉降1","沉降2"])
1871
2351
  ```
1872
2352
  Returns: 无
2353
+ ### update_sink_case
2354
+ 添加沉降工况
2355
+ > 参数:
2356
+ > name:荷载工况名
2357
+ > new_name: 新沉降组名,默认不修改
2358
+ > sink_groups:沉降组名,支持字符串或列表
2359
+ ```Python
2360
+ # 示例代码
2361
+ from qtmodel import *
2362
+ mdb.update_sink_case(name="沉降工况1",sink_groups=["沉降1","沉降2"])
2363
+ ```
2364
+ Returns: 无
1873
2365
  ### remove_sink_case
1874
2366
  按照名称删除沉降工况,不输入名称时默认删除所有沉降工况
1875
2367
  > 参数:
@@ -1975,6 +2467,7 @@ Returns: 无
1975
2467
  添加施工阶段信息
1976
2468
  > 参数:
1977
2469
  > name:施工阶段信息
2470
+ > new_name:新施工阶段名
1978
2471
  > duration:时长
1979
2472
  > active_structures:激活结构组信息 [(结构组名,龄期,安装方法,计自重施工阶段id),...]
1980
2473
  > _计自重施工阶段id: 0-不计自重,1-本阶段 n-第n阶段)_
@@ -1995,6 +2488,17 @@ mdb.update_construction_stage(name="施工阶段1",duration=5,active_structures=
1995
2488
  active_boundaries=[("默认边界组",1)],active_loads=[("默认荷载组1",0)])
1996
2489
  ```
1997
2490
  Returns: 无
2491
+ ### update_construction_stage_id
2492
+ 更新部分施工阶段到致电给编号位置,从1计算,例如从{1,2,3}中将 1,2移动到3
2493
+ > 参数:
2494
+ > stage_id:修改施工阶段编号
2495
+ > target_id:目标施工阶段编号
2496
+ ```Python
2497
+ # 示例代码
2498
+ from qtmodel import *
2499
+ mdb.update_construction_stage_id([1,2],3)
2500
+ ```
2501
+ Returns:无
1998
2502
  ### update_weight_stage
1999
2503
  更新施工阶段自重
2000
2504
  > 参数: