Thank you for your given efforts, pleas if you can make an example to show how to use the SIGINI subroutine and write the code to enable the implementation of a residual stress field in the material
Thank you very much for the attention you provided and sorry for the delay in replying. That's good. I'll get an example as soon as possible to be sent to you.@@Professor3MEC
Its an array of 4 with following. JSTEP(1) Step number. JSTEP(2) Procedure type key (see Results file output format). JSTEP(3) 1 if NLGEOM=YES for the current step; 0 otherwise. JSTEP(4) 1 if current step is a linear perturbation procedure; 0 otherwise.
I have a question which might be a silly but I am new to this. How do we import this code in Abaqus CAE. Do I need to edit any system file in folder where Abaqus is installed
You will have to save it in a umat.f umat.for file and then in job module when you create a job specify the location of the file. Or you can copy the umat file in the same folder as input file and use comment prompt to run it Abaqus job=job name user=umat.for interactive Also, to do any of the above you must have a compatible compiler installed based on the Abaqus s version.
hey thanks for such a good videos, am trying to include the damage accumulation of steel pipe using its constitutive model on Umat? could you please help me with that? i already have the abaqus model
yes it will depend on which type of nonlocal model you need. I hope you do know about lower order and higher order theories. Higher order theories may require UEL rather than UMAT.
@@Professor3MEC I want to implement nonlocality for a nanoscale model In Abaqus using UMAT, I found it difficult to find the inputs such as Jacobian matrix . Could you be able to help me with this?
@@dhamodharansd6001 I am in the process of developing a umat course for elastic plastic materials so keep an eye on that as this explains in detail on how to define jacobian. Derivation of jacobian depends on which material constitutive model are you using as it is the partial derivate of stress with reference to strain.
UMAT is to define user material model in the form of a subroutine in ABAQUS, while UEL is defining user element formulation which may include material behaviour as well. UMAT can be used with a range of elements which are already available in ABAQUs. UEL require full element formulation in the subroutine.
@@Professor3MEC I have a problem which is causing me a headache. I'm working on a new piezoelectric finite element (with UEL), it works fine with simple geometries, but for complex ones (a spring for example or a cylinder) it gives false results. I know the issue is in defining a local cylindrical coordinates system (because the material is not isotropic). I tried the *orientation keyword in the input file, but it actually doesn't change anything (defining it or deleting it doesn't affect the results). Another solution could be adding an "orient" subroutine to the code, but I honestly don't know how to code it nor call it. A third solution could be in defining a local coordinate system in the code itself.
@@seifzeghichi are these 3D brick type elements? The options you have mentioned are appropriate. If you want me to have a quick look then I may try but not sure how much I will be of help. Thanks
@@syakiraliff in order to find what to define, one needs to first understand what is required to be simulated or modelled. If you are after hardness then you can play with elastic properties to calibrate the hardness, there are standard relationships available. If you could email me more details on what you are after then I may be able to suggest in more detail. thanks
Sir I think there is something wrong with your Stress update code: Stress (I) = Stress (I) + DDSDDE (I,J) * DSTRAN (J) You can't keep the previous value of Stress (I) on the RHS, otherwise the code will keep adding the previous Stress (I) value at the end of every increment of the inner DO Loop. Maybe instead define a dummy variable that gets initialized at zero at the beginning of every increment for the outer DO Loop and use that dummy variable to calculate DDSDDE (I,J) * DSTRAN (J) ? Then add the dummy variable + the previous Stress (I) value just once after the inner DO loop has ended before finally resetting the dummy to zero again.
Great contribution to the research community
This is a great video! Very clear and stepwise!!
It really helped me have an overview of the UMAT procedures.
Thank you!
Thank you for liking the video and comments.
Thank you very much for your video. I have been a regular follower of all your videos and I find them very helpful. Thanks!
Thank you so much for liking the channel and your nice comments 🙏🏻
Great Thanks,very applicable .keep going sir.
Thank you, I will
Thanks !
Great sir.
great works thanks
Thank you for your given efforts, pleas if you can make an example to show how to use the SIGINI subroutine and write the code to enable the implementation of a residual stress field in the material
can you email me a simple problem definition and I can quickly make one. Please use www.professor3mec.com contact us link.
Thank you very much for the attention you provided and sorry for the delay in replying.
That's good. I'll get an example as soon as possible to be sent to you.@@Professor3MEC
Very informative video and a simple explanation.Great Work.
Thank you
Is JSTEP(4) here the step number? why the argument is 4? will it be same in the code?
Its an array of 4 with following.
JSTEP(1) Step number.
JSTEP(2) Procedure type key (see Results file output format).
JSTEP(3) 1 if NLGEOM=YES for the current step; 0 otherwise.
JSTEP(4) 1 if current step is a linear perturbation procedure; 0 otherwise.
GOOD
Thanks
Hello Professor, I cannot find the video (Uniaxial one element) you recommended to see how you used the UMAT file. Please could you share the link?
Not 100% sure, but may be this is the one you are after.
th-cam.com/video/SGXrnraQFRs/w-d-xo.html
@@Professor3MEC thank you, professor, for your quick response!
i wanna know about uhard model . how can i?
Uhard is much simpler than UMAT. As it only requires slope of stress strain curves, i.e. derivatives w.r.t. plastic strains.
I have a question which might be a silly but I am new to this. How do we import this code in Abaqus CAE. Do I need to edit any system file in folder where Abaqus is installed
You will have to save it in a umat.f umat.for file and then in job module when you create a job specify the location of the file.
Or you can copy the umat file in the same folder as input file and use comment prompt to run it
Abaqus job=job name user=umat.for interactive
Also, to do any of the above you must have a compatible compiler installed based on the Abaqus s version.
hey thanks for such a good videos, am trying to include the damage accumulation of steel pipe using its constitutive model on Umat? could you please help me with that? i already have the abaqus model
Thanks for liking the video. Sure, how can I help?
Useful video. How to write UMAT code for Nonlocal model? For nanostructures
yes it will depend on which type of nonlocal model you need. I hope you do know about lower order and higher order theories. Higher order theories may require UEL rather than UMAT.
@@Professor3MEC I want to implement nonlocality for a nanoscale model In Abaqus using UMAT, I found it difficult to find the inputs such as Jacobian matrix . Could you be able to help me with this?
@@dhamodharansd6001 I am in the process of developing a umat course for elastic plastic materials so keep an eye on that as this explains in detail on how to define jacobian.
Derivation of jacobian depends on which material constitutive model are you using as it is the partial derivate of stress with reference to strain.
Many thanks for your help. If I have the code of the vumat , can I implement it directly in the input file ?
Yes if vumat is working, you’ll have to use *user material option
您好,感谢您的视频。我想问一下如何获得VUHARD或VUMAT中特定材料点的速度。
sorry couldn't understand it. :)
what's the difference between UMAT and UEL?
UMAT is to define user material model in the form of a subroutine in ABAQUS, while UEL is defining user element formulation which may include material behaviour as well.
UMAT can be used with a range of elements which are already available in ABAQUs.
UEL require full element formulation in the subroutine.
@@Professor3MEC I have a problem which is causing me a headache. I'm working on a new piezoelectric finite element (with UEL), it works fine with simple geometries, but for complex ones (a spring for example or a cylinder) it gives false results.
I know the issue is in defining a local cylindrical coordinates system (because the material is not isotropic). I tried the *orientation keyword in the input file, but it actually doesn't change anything (defining it or deleting it doesn't affect the results).
Another solution could be adding an "orient" subroutine to the code, but I honestly don't know how to code it nor call it.
A third solution could be in defining a local coordinate system in the code itself.
@@seifzeghichi are these 3D brick type elements? The options you have mentioned are appropriate. If you want me to have a quick look then I may try but not sure how much I will be of help. Thanks
THANK YOU SIR FOR THIS VIDEO , CAN YOU PLEASE HELP ME TO WRITE UMAT FOR COMPRESSIBLE BLATZ KO HYPERELASTIC MODEL
Thanks for liking the video. Please let me know what help is needed
can we defined material coating properties using UMAT sir?
which material model are you interested in? what type of coating is it?
@@Professor3MEC a ceramic coating sir , a TBC coating material
Why do you need a umat for it?
@@Professor3MEC to specified it hardness properties sir, can it be used to specified the hardness properties of a coating?
@@syakiraliff in order to find what to define, one needs to first understand what is required to be simulated or modelled. If you are after hardness then you can play with elastic properties to calibrate the hardness, there are standard relationships available. If you could email me more details on what you are after then I may be able to suggest in more detail. thanks
Sir I think there is something wrong with your Stress update code:
Stress (I) = Stress (I) + DDSDDE (I,J) * DSTRAN (J)
You can't keep the previous value of Stress (I) on the RHS, otherwise the code will keep adding the previous Stress (I) value at the end of every increment of the inner DO Loop.
Maybe instead define a dummy variable that gets initialized at zero at the beginning of every increment for the outer DO Loop and use that dummy variable to calculate DDSDDE (I,J) * DSTRAN (J) ?
Then add the dummy variable + the previous Stress (I) value just once after the inner DO loop has ended before finally resetting the dummy to zero again.
Please do give it a try and let me know. In this case above works as everything works in strain increments. All the best
Respected Professor, Can I get your email so that I can discuss some question regarding my research if you can help me please. Regards M Umar Elahi
info@amirsiddiq.com