for E in modulus_values: modelName = f'Model_E_int(E)' mdb.Model(name=modelName) # ... (beam creation similar to Example 1, but with E variable) # Omitted for brevity – reuse Example 1 with dynamic model naming
# Extract von Mises stress at fixed coordinates odb = openOdb(jobName + '.odb') frame = odb.steps['ApplyLoad'].frames[-1] stress = frame.fieldOutputs['S'] # Find stress at (length, 0) – tip tip_value = None for val in stress.values: if abs(val.nodeLabel - some_node_label) < 1e-3: # simplified tip_value = val.mises break results.append((size, tip_value)) odb.close() print("Mesh convergence data:", results)
Scripting enables automated parametric studies without manual GUI interaction. 5. Example 3: Automating Mesh Convergence Study Goal: Refine mesh iteratively and track stress at a critical point.
# Run job jobName = f'Job_E_int(E)' myJob = mdb.Job(name=jobName, model=modelName) myJob.submit() myJob.waitForCompletion()