Я работаю с Abaqus/Python для анализа методом конечных элементов. У меня следующая проблема: у меня есть 3D-область, состоящая из 2D-области, содержащей края, а также круговые сегменты, и которая экструдирована в третьем измерении. Теперь я хочу создать сетку этой области с ограничением, что должен использоваться только один элемент вдоль направления толщины. Следующий минимальный пример вытянутой четверти круга в коде Python:
from abaqus import *
from abaqusConstants import *
import __main__
# Sketch quarter circle
s = mdb.models['Model-1'].ConstrainedSketch(name='__profile__',
sheetSize=50.0)
g, v, d, c = s.geometry, s.vertices, s.dimensions, s.constraints
s.setPrimaryObject(option=STANDALONE)
s.ArcByCenterEnds(center=(0.0, 0.0), point1=(0.0, 5.0), point2=(5.0, 0.0),
direction=CLOCKWISE)
s.Line(point1=(0.0, 5.0), point2=(0.0, 0.0))
s.Line(point1=(0.0, 0.0), point2=(5.0, 0.0))
# Create part from sketch and extrusion in the depth
p = mdb.models['Model-1'].Part(name='Part-1', dimensionality=THREE_D,
type=DEFORMABLE_BODY)
p.BaseSolidExtrude(sketch=s, depth=0.1)
s.unsetPrimaryObject()
session.viewports['Viewport: 1'].setValues(displayedObject=p)
del mdb.models['Model-1'].sketches['__profile__']
# Mesh
# Global seeds
p.seedPart(size=0.35, deviationFactor=0.1, minSizeFactor=0.1)
# 'fixed' seeding constraint: only one element in thickness direction
e = p.edges
pickedEdges = e.findAt(((5.0, 0.0, 0.025), ), ((0.0, 5.0, 0.025), ),
((0.0, 0.0, 0.025), ))
p.seedEdgeByNumber(edges=pickedEdges, number=1, constraint=FIXED)
# Generate mesh
p.generateMesh()
В последней строке, когда я хочу сгенерировать сетку, домен не может быть сеткой, потому что «фиксированные» ограничения заполнения не могут быть соблюдены. Если я использую
p.generateMesh(seedConstraintOverride=ON)
чтобы создать сетку, область может иметь сетку, но только с двумя элементами в направлении толщины. Есть ли способ создать сетку домена только с одним элементом в направлении толщины? Если нет, то почему?