https://github.com/caeassistant-group/abaqus-usdfld-subroutine
This project demonstrates how to use Abaqus USDFLD subroutine to reduce material stiffness when stress exceeds a defined threshold. A tutorial video is also provided, explaining the attached Abaqus USDFLD subroutine code, model setup, and result analysis. It is suitable for those want to write their Abaqus USDFLD subroutine.
https://github.com/caeassistant-group/abaqus-usdfld-subroutine
abaqus subroutine usdfld
Last synced: 5 months ago
JSON representation
This project demonstrates how to use Abaqus USDFLD subroutine to reduce material stiffness when stress exceeds a defined threshold. A tutorial video is also provided, explaining the attached Abaqus USDFLD subroutine code, model setup, and result analysis. It is suitable for those want to write their Abaqus USDFLD subroutine.
- Host: GitHub
- URL: https://github.com/caeassistant-group/abaqus-usdfld-subroutine
- Owner: CAEAssistant-Group
- License: mit
- Created: 2025-04-09T11:25:50.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-06-25T10:40:37.000Z (about 1 year ago)
- Last Synced: 2025-06-25T11:38:39.152Z (about 1 year ago)
- Topics: abaqus, subroutine, usdfld
- Language: Fortran
- Homepage:
- Size: 146 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Abaqus-USDFLD-Subroutine
✅ This is the complete source code for the project, ready to use.✨
This project demonstrates how to use Abaqus USDFLD subroutine to reduce material stiffness when stress exceeds a defined threshold. A tutorial video is also provided, explaining the attached Abaqus USDFLD subroutine code, model setup, and result analysis. It is suitable for those want to write their Abaqus USDFLD subroutine.
The Abaqus USDFLD subroutine is a user-defined field subroutine that allows you to assign custom field variables at material integration points during an analysis. These variables don’t directly define material behavior — instead, they serve as custom inputs that can influence other parts of your simulation.
You can think of user-defined fields as custom switches that vary over time or space, respond to stress, strain, or temperature, and indirectly control material properties. One of the most common uses of Abaqus USDFLD subroutine is to update material behavior based on evolving conditions. Because of this, it’s often seen as a simpler alternative to the Abaqus UMAT subroutine — much easier to write and implement.

That said, using Abaqus USDFLD Subroutine requires some familiarity with Fortran, knowledge of how Abaqus subroutines work, and a bit of coding experience. So, to make things easier, we’ve prepared a simple educational example for you.
In this project, the material stiffness is defined as a function of the applied stress: once the stress exceeds a specified threshold, the stiffness begins to drop. This Abaqus USDFLD subroutine code provides a lightweight way to simulate failure or damage behavior in Abaqus.

We've also created a step-by-step tutorial video, available on our YouTube Channel. In the video, we first introduce the Abaqus USDFLD subroutine and its typical applications. Then, we go through the code line by line, followed by a full demonstration of how to set up the Abaqus model using the provided .inp file. Finally, we review the results and show how the provided Abaqus USDFLD subroutine successfully captures stiffness reduction once the stress passes the defined limit.