Skip to content

Commit 4daa031

Browse files
Merge pull request #4 from EdelweissFE/tom.abaqusinputgenerator
Tom.abaqusinputgenerator
2 parents a63010f + 65b61e9 commit 4daa031

File tree

15 files changed

+3692
-10
lines changed

15 files changed

+3692
-10
lines changed

edelweissmpm/constraints/particlelagrangianweakdirichlet.py

Lines changed: 22 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ def _getConstraintLocation():
5959
elif location == "vertex":
6060
if vertexID is None:
6161
raise ValueError("vertexID must be specified when location is 'vertex'.")
62-
constraintLocation = particle.getVertexCoordinates(vertexID)
62+
constraintLocation = particle.getVertexCoordinates()[vertexID]
6363
return constraintLocation
6464

6565
self._getConstraintLocation = _getConstraintLocation
@@ -176,14 +176,28 @@ def ParticleLagrangianWeakDirichletOnParticleSetFactory(
176176
model: MPMModel,
177177
location: str = "center",
178178
faceID: int = None,
179-
vertexID: int = None,
179+
vertexID: int | list[int] = None,
180180
):
181181
constraints = dict()
182182
for i, p in enumerate(particleSet):
183-
name = f"{baseName}_{i}"
184-
constraint = ParticleLagrangianWeakDirichlet(
185-
name, p, field, prescribedStepDelta, model, location, faceID, vertexID
186-
)
187-
constraints[name] = constraint
188-
183+
if location == "vertex":
184+
if isinstance(vertexID, list):
185+
for vertIdx in vertexID:
186+
name = f"{baseName}_{i}_v{vertIdx}"
187+
constraint = ParticleLagrangianWeakDirichlet(
188+
name, p, field, prescribedStepDelta, model, location, faceID, vertIdx
189+
)
190+
constraints[name] = constraint
191+
else:
192+
name = f"{baseName}_{i}_v{vertexID}"
193+
constraint = ParticleLagrangianWeakDirichlet(
194+
name, p, field, prescribedStepDelta, model, location, faceID, vertexID
195+
)
196+
constraints[name] = constraint
197+
else:
198+
name = f"{baseName}_{i}"
199+
constraint = ParticleLagrangianWeakDirichlet(
200+
name, p, field, prescribedStepDelta, model, location, faceID, vertexID
201+
)
202+
constraints[name] = constraint
189203
return constraints

0 commit comments

Comments
 (0)