Reputation: 5
in abaqus/cae mode ,i use getMassProperties() function to query the volume,but in viewr mode(visualization module only),that not work..
Upvotes: 0
Views: 3076
Reputation: 46
Part volume in CAE:
from abaqus import *
mask=mdb.models['Model'].parts['part'].cells.getMask()
cellobj_sequence=mdb.models['Model'].parts['part'].cells.getSequenceFromMask(mask=mask)
part_volume=mdb.models['Model'].parts[part'].getVolume(cells=cellobj_sequence)
Assembly volume in CAE:
from abaqus import *
prop=mdb.models['Model'].rootAssembly.getMassProperties()
(Now, the 'prop' variable is a dictionary object. prop[volume] should give your desired result.
Option #2: If you want to access volumes of only certain part instances, create a part instance object and call that in your getMassProperties()
m=mdb.models['Model'].rootAssembly
inst=m.instances['instance']
mask=inst.cells.getMask()
partinstance_obj1=inst.cells.getSequenceFromMask(mask=mask)
prop1=mdb.models['Model'].rootAssembly.getMassProperties(regions=(partinstance_obj1,)) #Regions here will accept only a sequence of part instance obj
Upvotes: 1