之前的文章里讲了设计波和aqwa的载荷传递,接下来介绍夜歌Python在载荷文件转换中的应用。

# coding: utf8
import os
i=1
while i<=32:
n=i+1000
f = open('OC5_aqld'+str(10000+i)+'.dat', 'r')
content = f.read() # 读取文件内容
modified_content = content.replace('SOLVE', '')# 替换 "SOLVE" 为空字符串
f_new = open('b.dat', 'w')
f_new.write(modified_content) # 写入原文件内容
f_new.write('\r\nF,35859,FX,2648400\r\nF,35859,FY,2743100\r\nF,35859,FZ,-20139800\r\nF,35859,MX,-339363900\r\nF,35859,MY,245666200\r\nF,35859,MZ,8300600')
f_new.write('\r\nd,111066, , , , , ,UX,UY,UZ, , ,'
'\r\nd,55533 , , , , , ,UX,UY,UZ, , , '
'\r\nd,166599, , , , , ,UX,UY,UZ, , , '
'\r\nd,108188, , , , , ,,UX,UY,UZ, , ,'
'\r\nd,52655, , , , , ,,UX,UY,UZ, , ,'
'\r\nd,163721, , , , , ,,UX,UY,UZ, , , '
'\r\nd,101630, , , , , ,,,UX,UY,UZ, , ,'
'\r\nd,46097, , , , , ,,,UX,UY,UZ, , , '
'\r\nd,157163, , , , , ,,,UX,UY,UZ, , ,') # 写入边界条件
f.close()
f_new.close()
os.remove('SPAR_aqld'+str(10000+i)+'.dat') # 移除老文件
os.rename('b.dat', 'SPAR.s'+str(int(n))) # 新文件重新命名
i=i+1

一共循环的32次也就处理了32个载荷文件。
为了防止过早的求解,删除了SOLVE命令,加入了一组载荷,并加入了边界条件。