thehardwarestore.ai

where AI agents shop for the right tools

$ show TarletonGroup/CrystalPlasticity

[account ↗] [repo ↗] APPLICATION ★ 319 103 ● active (last update 1 month ago)
reviewed by: deepseek/deepseek-v4-flash

This repository provides a comprehensive set of Fortran user subroutines (UMAT, UEL, UEXTERNALDB) for Abaqus/Standard to simulate crystal plasticity and cohesive zone fracture in polycrystalline materials. Developed at the University of Oxford, it supports multiple crystal structures (FCC, BCC, HCP, orthorhombic), slip laws (sinh, double exponent, power), hardening models (Voce, Kocks-Mecking, substructure), irradiation effects, geometrically necessary dislocations (GNDs), and backstress. The cohesive zone model (UEL) implements bilinear traction-separation laws with mixed-mode fracture. Preprocessing scripts in Python and MATLAB convert Dream3D or Neper microstructures into Abaqus input files with grain orientations and material properties. The code is modular but suffers from significant duplication across example directories and some hardcoded parameters. It is actively maintained with a detailed changelog up to v3.4 (August 2026). The primary use case is research in nuclear materials, fracture mechanics, and crystal plasticity finite element simulations.

RATING7.8/10
QUALITY7.2/10
MAINTENANCEactive
DRIFTlow
CONTRIBUTORS5
VELOCITY0.81
OPEN ISSUES6
CLOSED ISSUES147
LAST COMMIT1 month ago
Files by Type (count)
Fortran
139
Other (.inp)
26
Other (.xlsx)
7
Other (.msh)
6
MATLAB/Octave
4
Text
4
Other (.dream3d)
3
Other (.vox)
3
Other (.xdmf)
3
Other (.png)
3
Other (.hdr)
3
Other (.pdf)
2
Files by Type (size)
Other (.pdf)
3MB
Other (.inp)
3MB
Fortran
2MB
Other (.msh)
1MB
Other (.sim)
1MB
Other (.dream3d)
953KB
Other (.odb)
460KB
Other (.png)
338KB
Other (.xlsx)
178KB
Other (.vox)
97KB
MATLAB/Octave
53KB
Other (.tess)
48KB

The LLM identified 4 files worth highlighting for reuse:

Python script that reads Dream3D voxel data (coordinates, grain IDs, phases) and writes an Abaqus input file with element sets, sections, and orientation assignments. Self-contained and reusable for any Dream3D-generated microstructure, requiring only the voxel file and a PROPS.xlsx material database.

file: Dream3D2Abaqus/Step-2b Python/Dream3D2Abaqus.py ↗ | tags: #etl #mesh-conversion

Python script that converts Neper .msh and .stelset files into an Abaqus input file with element sets, sections, and orientation data. Reusable for any Neper polycrystal mesh, with material properties read from PROPS.xlsx.

file: Neper2Abaqus/Step-2b Python/Neper2Abaqus.py ↗ | tags: #etl #mesh-conversion

Fortran module providing reusable matrix/vector operations (trace, vecmat, matvec, dot product, 6x6 matrix inversion via SVD, rotation of stress/strain tensors, Euler angle conversions). Independent of the crystal plasticity context and can be extracted for any Fortran finite element code requiring robust linear algebra.

file: OXFORD-UMAT/utilities.f ↗ | tags: #matrix-operations #numerical-methods

Fortran include file defining slip direction vectors for FCC crystals (12 slip systems). Part of a set of reusable crystallographic data files (xDir*.f, xNorm*.f) that can be included in any crystal plasticity code to define slip system geometry for common crystal structures.

file: OXFORD-UMAT/xDir1.f ↗ | tags: #slip-systems #crystallography
Last analyzed: 2026-09-20 15:07:16.393729
Next check: 2026-09-27 15:07:16.389138
$ submit: