ABAQUS Python 二次開發攻略 CAE 分析大系
蘇景鶴 江丙雲
買這商品的人也買了...
-
$800$632 -
$480$432 -
$980$774 -
$301Abaqus GUI 程式開發指南 Python 語言
-
$480$379 -
$500$390 -
$500Linux 命令速查手冊, 2/e (Linux Phrasebook, 2/e)
-
$380$296 -
$414$393 -
$403OpenCV 4 電腦視覺項目實戰, 2/e
-
$780$616 -
$403Python 語言在 Abaqus 中的應用, 2/e
-
$980$774 -
$900$711 -
$699$552 -
$900$711 -
$980$764 -
$560$442 -
$490$387
相關主題
商品描述
本書是作者結合自己多年Abaqus 使用經驗,在汲取國內外大量資料的基礎上編寫的一本Python 二次開發知識點筆記。內容涉及開發環境的搭建、Python 基礎語法知識、Abaqus Python API 講解,並以實例展示的方式詳細闡明瞭二次開發的流程和方法。本書可以幫助正在使用Abaqus 進行模擬分析工作的工程師或者科研人員學習Abaqus Python 二次開發方法,同時對熟悉Abaqus 二次開發流程的讀者也有一定的借鑒價值。
作者簡介
苏景鹤:SimWe论坛版主,自西安交通大学力学硕士毕业后一直从事结构分析与优化相关工作,有丰富的有限元分析经验。业余爱好程序设计,兴趣主要集中在数值分析方法与CAE软件二次开发方面。
江丙云:SimWe论坛、研发埠版主,精通ABAQUS结构分析、多物理场联合分析等,超过6年世界500强电子企业有限元分析经验,专职于机电产品工程分析及其优化设计;上海交通大学博士,出版有《CAE分析大系——ABAQUS工程实例详解》。
目錄大綱
第 一部分 引言
第 1章 Abaqus二次開發簡介 12
1.1 為什麽是Python 12
1.2 Python、FORTRAN與Abaqus 13
1.3 基於Python二次開發 14
第 2章 Python能力確認 17
2.1 測試程序 17
2.2 程序運行結果 22
第3章 腳本的運行與開發環境 23
3.1 Abaqus中腳本的運行 23
3.1.1 命令區KCLI(Kernel Command Line Interface) 23
3.1.2 CAE-Run Script 24
3.1.3 Abaqus Command 24
3.1.4 Abaqus PDE 25
3.2 選擇自己的Python開發環境 26
3.2.1 Abaqus PDE 26
3.2.2 IDLE 27
3.2.3 Notepad++ 28
3.2.4 EditPlus 29
3.2.5 選擇合適的編程環境 32
第 二部分 Python基礎
第4章 Python數據類型與操作符 34
4.1 基本數據類型 34
4.2 列表、元組和字符串 36
4.2.1 列表(list) 36
4.2.2 元組(tuple) 38
4.2.3 字符串(str) 40
4.2.4 列表、元組和字符串的關系 42
4.3 字典 43
4.4 集合 45
4.5 操作符 46
4.5.1 賦值操作符 46
4.5.2 數字類型的操作符 46
4.5.3 序列類型的操作符 48
4.5.4 字典和集合的操作符 50
第5章 表達式和流程控制 51
5.1 表達式和程序執行流程 51
5.2 分支語句if-else 52
5.3 循環語句 54
5.3.1 while循環語句 54
5.3.2 for循環語句 55
5.4 中斷和退出 58
5.4.1 break語句 58
5.4.2 continue語句 59
5.5 特殊語句pass 60
第6章 函數 61
6.1 定義函數 61
6.2 函數中的參數傳遞與調用方法 63
6.3 幾個特殊的函數關鍵字 64
6.3.1 Lambda關鍵字與匿名函數 64
6.3.2 Map關鍵字與批量化函數操作 66
6.3.3 Reduce關鍵字和求和 67
6.3.4 Filter關鍵字和條件選擇 67
第7章 對象和類 69
7.1 對象 69
7.2 類 70
7.2.1 如何定義類 70
7.2.2 如何使用類 71
7.2.3 子類、父類和繼承 72
7.2.4 幾個特殊的實例屬性和類方法 74
7.3 模塊和包 75
7.3.1 模塊 75
7.3.2 模塊的路徑搜索 76
7.3.3 名稱空間 77
7.3.4 包 78
第8章 文件和目錄 79
8.1 文件讀寫操作 79
8.2 目錄操作 82
8.3 文件的壓縮和備份 85
8.4 綜合實例 87
第9章 異常處理 89
9.1 Python中常見的異常 90
9.2 自定義異常 92
9.3 使用異常 93
9.4 再看異常處理的作用 95
第 10章 常用Python擴展模塊介紹 96
10.1 NumPy和高效數據處理 97
10.1.1 創建數組 98
10.1.2 數組操作 99
10.1.3 數組運算 100
10.1.4 線性代數 100
10.2 SciPy與數值計算 101
10.2.1 插值 101
10.2.2 擬合 101
10.2.3 極值問題 102
10.3 Matplotlib和圖表繪制 103
10.3.1 二維點線數據繪制 104
10.3.2 輔助散點和線圖繪制 105
10.3.3 簡單三維數據可視化 107
10.4 Xlrd/xlwt與讀寫Excel 109
10.4.1 讀取Excel文件 109
10.4.2 寫入Excel數據 109
10.5 Reportlab和PDF 110
10.6 聯合使用類庫 111
第 11章 Python編程中的效率問題 114
11.1 時間成本優化 114
11.1.1 使用內建函數(built-in Function) 114
11.1.2 循環內部的變量創建 115
11.1.3 循環內部避免不必要的函數調用 117
11.1.4 使用列表解析 118
11.1.5 盡量減少IO讀寫 118
11.1.6 使用優 秀的第三方庫 119
11.1.7 其他 120
11.2 空間成本優化 120
11.2.1 使用xrange處理長序列 120
11.2.2 註意數據類型的使用 121
11.2.3 使用iterator 122
第三部分 Abaqus/Python基礎
第 12章 Abaqus Script入門 124
12.1 GUI操作Vs rpy腳本日誌 124
12.2 對腳本進行簡單的二次開發 133
第 13章 Abaqus/Python基礎 135
13.1 Abaqus/Python中的數據類型 135
13.1.1 符號常值(SymbolicConstants) 135
13.1.2 布爾值(Booleans) 135
13.1.3 特有的模型對象 136
13.1.4 序列(Sequences) 136
13.1.5 倉庫(Repositories) 137
13.2 Abaqus/Python的對象的訪問和創建 138
13.2.1 對象的訪問 139
13.2.2 對象數據的修改 140
13.2.3 對象的創建 140
13.3 Abaqus/Python中的主要對象概況 141
13.3.1 Abaqus中的Session對象 142
13.3.2 Abaqus中的Mdb對象 143
13.3.3 Abaqus中的Odb對象 145
第 14章 Session對象的使用 146
14.1 Viewport及其相關對象 147
14.2 Path對象 152
14.3 XYData對象 153
14.4 XYCurve和XYPlot對象 154
14.5 writeXYReport和writeFieldReport函數 157
第 15章 Mdb對象的使用 160
15.1 Model類與有限元模型的建立 161
15.1.1 Sketch和Part對象 162
15.1.2 Material和Section對象 166
15.1.3 Assembly對象 167
15.1.4 Step對象 169
15.1.5 Region對象 170
15.1.6 Constraint和Interaction對象 171
15.1.7 Mesh函數 172
15.1.8 BoundaryCondition和Load對象 173
15.2 Job命令 176
第 16章 Odb對象的使用 177
16.1 Odb對象中模型數據 178
16.1.1 Material對象 178
16.1.2 孤立網格數據信息 178
16.1.3 集合對象 182
16.2 Odb對象中結果數據的讀取 184
16.2.1 場變量數據的處理 186
16.2.2 歷史變量數據的處理 189
16.3 Odb數據文件的寫入 190
16.3.1 已有模型添加特定數據 190
16.3.2 生成完整的Odb對象 192
第 17章 幾個常見問題 195
17.1 幾何和網格元素的選擇 195
17.1.1 內置的選擇函數 195
17.1.2 基於特徵的篩選方法 197
17.2 幾何元素的特徵操作 199
17.3 具有集合性質的對象 201
17.4 監測任務運行過程和結果 204
17.5 交互式輸入與GUI插件 206
17.5.1 交互輸入 207
17.5.2 GUI插件製作 208
第四部分 應用實例
第 18章 懸鏈線問題 218
18.1 懸鏈線的方程 218
18.2 利用Abaqus分析懸鏈線曲線特徵 221
18.2.1 建立分析腳本 221
18.2.2 確定合適的初始拉伸量 223
18.2.3 拉伸剛度的影響 224
第 19章 扭力彈簧的剛度 227
19.1 扭力彈簧的理論分析公式 227
19.2 利用Abaqus分析扭力彈簧 229
19.2.1 梁單元模擬扭力彈簧 229
19.2.2 實體單元模擬扭力彈簧 234
19.3 結果對比 236
第 20章 圓角處網格研究 238
20.1 帶孔薄板 238
20.1.1 理論分析 238
20.1.2 模型計算 239
20.2 台階板倒角處的應力 244
20.2.1 理論分析 244
20.2.2 有限元模擬 245
第 21章 優化問題 249
21.1 水下圓筒的抗屈曲設計 249
21.1.1 問題的描述 249
21.1.2 參數化模型 250
21.1.3 優化策略 251
21.1.4 求解與結果 254
21.2 過盈配合設計 258
21.2.1 問題描述 258
21.2.2 參數化模型建模 258
21.2.3 優化策略與結果 263
21.3 筆蓋的插入力的確定 268
21.3.1 問題描述 268
21.3.2 參數化模型建模 268
21.3.3 優化策略與結果 273
第 22章 分析之間的數據傳遞 277
22.1 數據傳遞方法之InitialState 277
22.1.1 數據傳遞前的準備 277
22.1.2 Standard數據導入Explicit的步驟 278
22.1.3 數據導入實例:沖壓成型分析 279
22.2 數據傳遞方法之Map solution 284
22.2.1 Map solution使用格式 284
22.2.2 數據映射實例:拉拔成型 287
第 23章 Python和子程序 295
23.1 Fortran基本用法 295
23.1.1 Fortran基本語法 295
23.1.2 Fortran程序實例 296
23.2 Python處理子程序的一般方法 297
23.3 實例:Dload動態軸承載荷 299
23.3.1 滾子間力的分佈 299
23.3.2 Hertz接觸理論 300
23.3.3 Dload子程序模板 301
23.3.4 Python建模程序 303
23.4 實例:基於Dflux的焊接熱分析 305
23.4.1 焊接分析熱源類型 306
23.4.2 Dflux子程序模板 307
23.4.3 焊接自動化分析腳本 309
參考文獻 316