We are going to show the use of a UHYPER user subroutine in a calibration example. The user subroutine is taken from the Abaqus Verification Guide. In the old style of documentation, this was called Verification 4.1.21 Follow this link: UMAT and UHYPER. The file was originally named umathrt3.for and it was a single file that contained both a UMAT and a UHYPER. For this example, I have renamed the file uhyper_umathrt3.for, and I have deleted the umat code. Specifically this is some code for a compressible Mooney-Rivlin material model. There are three material parameters are C10, C01, and D1.
The UHYPER user subroutine supports the use of data lines to send values into the user subroutine. We will use that mechanism in this example. The use of a Custom Schema is not available for the UHYPER user subroutine in the 3DExperience platform calibration app at this time (R2024x).
For this example, we will use the Elastomer Course test data, pictured above, and which contains some compressibility test data of volume ratio versus pressure. I've already set both my display units and my calculational units to N, mm, MPa. This example uses the numerical mode in the calibration app. Here is what the test data looks like in the calibration app:
The narrated video below starts from the above image, and:
- Selects hyperelastic as the material model, then selects the User-defined (which here means UHYPER).
- Imports the file "standardU.dll" which is a compiled version of the user sub, uhyper_umathrt3.for
- Name the compiled user sub "UHYPER_MR"
- In the Description field type in "Compressible MR ; 3 params"
- Type in some values for the 3 constants, C10, C01, and D1. I typed in 1.0, 0.1, and 0.001
- Perform a calibration
The narrated video below was created on May 13, 2024 using the public cloud, R2024x HotFix 3.11
This is what things look like at the end of the video:
The attached zip file contains all the files necessary to reproduce this example in R2024x of the calibration app.
Note: The image below is from the Abaqus docs. The example above is about using the Uhyper user-subroutine, which means that it uses the Formulation=Invariant. The Material Calibration App does not yet (2025) support the Uhyper_Stretch user-subroutine.
Back to: Sharing Material Test Data
Back to: Material Modeling and Calibration - An Overview and Curriculum
