python - Abaqus:创建新的 FieldOutput(格式?)

标签 python abaqus

一直在努力解决以下问题:我想为给定的 el 创建一个新的 FieldOutput (可以说对张量进行一些简单的算术运算)。放。不是整个模型,因为这太昂贵了,而且我对那个特定的区域/集合很感兴趣。

我打开一个odb,其中包含结果......

from abaqus import *
from odbAccess import *
from abaqusConstants import *
import visualization
import fileinput
import os

# to make prettyPrint work!
from odbAccess import *
from textRepr import *

# open odb
odb_path="analysis45.odb"
my_odb=session.openOdb(name=odb_path,readOnly=FALSE)

一些替换可确保它始终打开步骤/实例,无论它们的名称是什么......

# automate the proces of reading the step no matter what its name is
StepNames=(my_odb.steps.keys() )        #   it is a list of all step names
lastStep=( StepNames[-1] )  

# automation of an instance naming (in the same way)
NaseInstance = (my_odb.rootAssembly.instances.keys())
MojeInstance = ( NaseInstance[-1] ) 
CelaMojeInstance=my_odb.rootAssembly.instances[MojeInstance]

找到了其他人计算新数据并将其填充到新标量中的方法:https://gist.github.com/crmccreary/5015483不过,我并没有成功地理解那里到底发生了什么,因为这个脚本要复杂得多,而且我根本不是程序员。

尝试通过直接向字段硬指定一些值来简化任务(目的是稍后用函数替换它,并最终以这种方式循环整个 elset)。我收到一条有关“内置操作的非法参数类型”表单的消息,我认为我尝试插入的数据的格式不正确。尝试了文档但没有成功。我可以请求提示/帮助吗?谢谢!

NewField =my_odb.steps[lastStep].frames[0].FieldOutput(name='New_scalar_field',description='Our brand new scalar field', type=SCALAR)
NewField.addData(position=NODAL, instance=CelaMojeInstance, labels=[1657, 1658, 1683, 1684, 14193, 14194, 14195, 14196], data=[(6),(12),(6),(12),(6),(12),(6),(12)])

my_odb.save()
my_odb.close()

这家伙的解决方案似乎与我的解决方案完全相同:http://abaqus-users.1086179.n5.nabble.com/Writing-Results-to-Existing-ODB-file-td21750.html

我知道这个问题对于老年人来说可能太琐碎或太愚蠢,对此表示抱歉。

最佳答案

出于某种原因,当我输入时它会起作用:

data=[(6.0,),(12.0,),(6.0,),(12.0,),(6.0,),(12.0,),(6.0,),(12.0,)]

值后面有逗号。我真的不知道为什么。希望它将来能对其他人有所帮助。

关于python - Abaqus:创建新的 FieldOutput(格式?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43316461/

相关文章:

python - ABAQUS 中wireType 的NameError 警告

python - 将输出存储为文本,而不是列表

python - 使用约束字典查询 Pandas

python - for 循环存储旧变量值?

python 3.x : Subtract Same Index from Sequential Lines

macros - 如何运行 Abaqus 宏 (.py) 脚本

python - 从字典数组 : Python 中检索值

python - 将 Matplotlib 与 Django 结合使用

python - 如何在 Abaqus 脚本中抑制 "Setting display..."

python - Abaqus 曲面 getSequenceFromMask