【整車碰撞】12輛“偷油塔”相撞!!!免費領有限元模型+Abaqus Inp文件分割腳本

1


1

領取整車碰撞模型


今天講一下如何分割Abaqus inp文件,有的模型規模非常大,節點和單元數超級多,導致inp文件有好幾百MB、甚至幾個G,不僅占內存而且編輯起來困難,即使用Vim也要半天才能打開,這個時候就需要分割inp文件了,分割出來的主文件一般只有幾KB,格式清晰明了,便于查看和修改模型參數。下面是它的一個應用場景,本文可以直接領取這個模型的原始文件。

Toyota Venza(2010款)模型來自于公路交通安全局(美國)官網,原始文件是LS-DYNAK文件,通過命令行轉換成Abaqus inp文件。

【整車碰撞】12輛“偷油塔”相撞!!!免費領有限元模型+Abaqus Inp文件分割腳本的圖1

基礎模型信息

【整車碰撞】12輛“偷油塔”相撞!!!免費領有限元模型+Abaqus Inp文件分割腳本的圖2

Base Model - 正面碰撞


基礎模型的inp文件大小是690MB,被分割成為主文件和一系列附屬文件,這些附屬文件可以被別的路徑下的其他分析模型的主文件引用,如此以來,下圖中的幾個Benchmark Model一共節省了2G左右的存儲空間。

【整車碰撞】12輛“偷油塔”相撞!!!免費領有限元模型+Abaqus Inp文件分割腳本的圖3

Benchmark Model - 4/8/12輛車相撞


引用格式如下,input可以包含路徑,若是在相同文件夾下則忽略路徑。


*Part, name=car
*Include, input = venza_data-nodeelem-car.inp
*Include, input = venza_data-set-car.inp
*Include, input = venza_data-mpc-car.inp
*Include, input = venza_data-section-car.inp
*Include, input = venza_data-partdata.inp
*End Part
...
*Include, input = venza_data-modeldata.inp
*Include, input = venza_data-material.inp
*Include, input = venza_data-connector.inp
...
*Include, input = venza_data-contact.inp
...
*step,name=Step-1
*dynamic,explicit
 , 0.12
*Include, input = venza_data-step.inp
*endstep

【整車碰撞】12輛“偷油塔”相撞!!!免費領有限元模型+Abaqus Inp文件分割腳本的圖4

Benchmark Model - 12輛Venza相撞(達索·3DE平臺)


Toyota Venza(2010款)基礎模型原始文件下載:

鏈接:

https://pan.baidu.com/s/1MC1t432pPowyEYm-9KEg5Fw   (去掉m-9之間的“-”!!! m九被屏蔽了)

提取碼:f979

注:

1、該鏈接30日有效。

2、命令行轉換K文件為Abaqus inp文件,由于求解器不同,轉換后部分關鍵字可能失敗,需要手動修改一下,命令行格式:

abaqus fromdyna

job=job-name


input=dyna-input-file

[splitFile={OFF | ON}]

可以看到,在這里也可以選擇是否分割轉換后的inp文件,但是功能比較單一,下面介紹一個功能更多的腳本fileSplitter.py~

2

Abaqus inp文件分割


如何使用fileSplitter.py

先把腳本放到目標路徑下,在Abaqus Command窗口運行:


abaqus python fileSplitter.py -help


會返回如何使用該腳本的簡易幫助文檔:


[-keywords ] # Comma separated list of keys 
# Default keys are node, element, nset, elset
# Allowed keys must support an INPUT parameter

[-output ] 
# Name of base outputFile
# Default value input_base.inp
 
[-raw 0
# Turns off raw mode. Note: script may not run
# due to increase memory usage when raw mode is off.
# A 64-bit machine is likely required.
 
[-count #] 
# Only extract the #th instance of keys
# Default is all instances of each key in list.
 
[-size ] 
# minimum size of data to split
# Only allowed when raw mode is off.
# default size: 5000    
 
[-test] 
# Perform a syntaxcheck on new deck
# Note: On 32-bit machines large input models mail fail this step due to
# not enough memory.
 
[-print
# Print out input deck only. No files generated
# This option only supported when raw mode is OFF.
 
[-verbose ] 
# used for progress feedback. Default = 1 
 
[-help] 
# This Usage information.


這個腳本可以自定義需要被分割的關鍵字、限制文件大小、執行格式檢查、查看分割進度等,功能比較全面。

運行示例:


abaqus python fileSplitter.py -inp Sample

【整車碰撞】12輛“偷油塔”相撞!!!免費領有限元模型+Abaqus Inp文件分割腳本的圖5

inp文件分割示例


近期培訓

通知:9月直播培訓招生即將結束,欲參加者請點擊圖片了解更多。

【整車碰撞】12輛“偷油塔”相撞!!!免費領有限元模型+Abaqus Inp文件分割腳本的圖6


fileSplitter.pyToyota Venza Base Model(Abaqus版,可直接運行)領取(2021年9月7號截止)→在此公眾號后臺回復:

偷油塔

登錄后免費查看全文
立即登錄
App下載
技術鄰APP
工程師必備
  • 項目客服
  • 培訓客服
  • 平臺客服

TOP

11
6
9