It is true the example from the pdf file is not trivial.
I made for You very simple example + USDFLD subroutine used by the model.
Please check attached *.zip file.
A material change Young module respect to elastic strain.
The idea is to use field variable, since meaning of field variable is set by a user in the example field variable are elastic strains.
The subroutine read EE11 output for each integration point and save it as field variable, next abaqus base on the field variable value choose Young module.
The example is with truss elements since there is only one direction for stress and strain so it is easy to check results.
Of course the same approach you can use with plastic strain, You need to change only subroutine to read plastic strain.
Just add new output in the model ('PE') and in the subroutine read 'PE' output instead 'EE'.
For plastic strain outputs will be save in 'array' table in following order:
array(1) = PE11, array(2) = PE22, array(3) = PE33
array(4) = PE12, array(5) = PE13, array(6) = PE23
array(7) = PEEQ, array(8) = PEMAG
More information you can find in abaqus documentation:
1. Abaqus User Subroutines Reference Manual (1.1.45 USDFLD User subroutine to redefine field variables at a material point.)
2. Abaqus User Subroutines Reference Manual (2.1.6 Obtaining material point information in an Abaqus/Standard analysis.)
3. Abaqus Analysis User's Manual (30.6.1 Predefined fields.)
>>> please let me know if there is any differences between ABAQUS STANDARD and Explicit to use this subroutine.
USDFLD is for Standard and VUSDFLD is for Explicit.
Usually we can find small difference in subroutines for explicit and standard. I do not know is any differences in this case. You need to check it in documentation.