adding youngs modulus as a function of stress
adding youngs modulus as a function of stress
Hi all,
My specific problem is that I wish to have young's modulus (Y) value as a function of stress. I wish it to go to zero when the stress gets to the breaking stress of the material. Could some one show me an MATC formula for this. Assume isotropic conditions.
My more general problem is that I can not make sense out of using MATC formulas. I have read the appropriate tutorials but still am confused. Specifically, I can't figure out how to extract data from the process. In the request above, how do I get the stress to feed into a formula. What are the "handles" to hook to Elmer.
Any help will be sincerely appreciated.
Gary R
My specific problem is that I wish to have young's modulus (Y) value as a function of stress. I wish it to go to zero when the stress gets to the breaking stress of the material. Could some one show me an MATC formula for this. Assume isotropic conditions.
My more general problem is that I can not make sense out of using MATC formulas. I have read the appropriate tutorials but still am confused. Specifically, I can't figure out how to extract data from the process. In the request above, how do I get the stress to feed into a formula. What are the "handles" to hook to Elmer.
Any help will be sincerely appreciated.
Gary R

 Site Admin
 Posts: 3416
 Joined: 22 Aug 2009, 11:57
 Antispam: Yes
 Location: Espoo, Finland
 Contact:
Re: adding youngs modulus as a function of stress
Hi
You should set "Calculate Stresses = True" and then you can make the Youngs Modulus depend on the results. Note that stresses are computed after the solver so you need to iterate on the coupled system level.
Peter
You should set "Calculate Stresses = True" and then you can make the Youngs Modulus depend on the results. Note that stresses are computed after the solver so you need to iterate on the coupled system level.
Peter
Re: adding youngs modulus as a function of stress
Thanks for the reply Peter.
My main problem is that I have no idea how to use variables in MATC. The variable t(x) shows up in all of the various manuals. But no where can I find a good explanation for how to assign t(x) to a particular quantity (and I don't mean x=a). What are the dependent variables? What are the independent variables?. I am very confused in this area. I know that I am missing a fundamental concept but can find no documentation that helps. My math degree doesn't seem to help much hear.
Also, my build of ElmerGUI doesn't produce a convergence graph for some reason. I built my version from a recent "elmerfemdevel.zip" file on a Debian Linux Testing system. Have I left something out of the Cmake build?
All help will be sincerely appreciated.
Gary R
My main problem is that I have no idea how to use variables in MATC. The variable t(x) shows up in all of the various manuals. But no where can I find a good explanation for how to assign t(x) to a particular quantity (and I don't mean x=a). What are the dependent variables? What are the independent variables?. I am very confused in this area. I know that I am missing a fundamental concept but can find no documentation that helps. My math degree doesn't seem to help much hear.
Also, my build of ElmerGUI doesn't produce a convergence graph for some reason. I built my version from a recent "elmerfemdevel.zip" file on a Debian Linux Testing system. Have I left something out of the Cmake build?
All help will be sincerely appreciated.
Gary R
Re: adding youngs modulus as a function of stress
Hi,
I cannot help with the special settings for Stress Solver et al., but on a general level, e.g. if you need a temperature BC depending on position and time, you would use something like
tx(0), tx(1), tx(2) (not t(x)!) stand for Coordinate 1, Coordinate 2, and Time, respectively.
HTH,
Matthias
I cannot help with the special settings for Stress Solver et al., but on a general level, e.g. if you need a temperature BC depending on position and time, you would use something like
Code: Select all
Temperature = Variable Coordinate 1, Coordinate 2, Time
Real MATC "tx(0) + tx(1)**2 + 3*tx(2)"
End
HTH,
Matthias
Re: adding youngs modulus as a function of stress
Hi,
How about the concept of exporting stress as variable from the stress solver (with default displacement variable), and then defining young's modulus as a function of stress in Materials section.
Please find how total flux and total area are exported as variables from AdvectionDiffusion(concentration = default variable) solver in the following sif.
https://github.com/anilkunwar/elmerfem/ ... y/case.sif
Yours Sincerely,
Anil Kunwar
How about the concept of exporting stress as variable from the stress solver (with default displacement variable), and then defining young's modulus as a function of stress in Materials section.
Please find how total flux and total area are exported as variables from AdvectionDiffusion(concentration = default variable) solver in the following sif.
https://github.com/anilkunwar/elmerfem/ ... y/case.sif
Yours Sincerely,
Anil Kunwar
Anil Kunwar
Department of Materials Engineering, KU Leuven, Belgium
Department of Materials Engineering, KU Leuven, Belgium

 Posts: 155
 Joined: 25 Jan 2019, 01:28
 Antispam: Yes
Re: adding youngs modulus as a function of stress
How do I know what the variable names in ElasticSolve are such as the various stresses and strains?

 Posts: 155
 Joined: 25 Jan 2019, 01:28
 Antispam: Yes
Re: adding youngs modulus as a function of stress
All 3 of these give the same answer, a constant youngs modulus of 197.0E9. I would expect the last two to be constant.
Material 1
Name = "Austenitic stainless steel (AK Steel 201)"
Poisson ratio = 0.3
Youngs modulus = Variable "Principal Strain", "vonMises"
Real MATC "if (tx(1) < 7.E9) 197.0e9; if (tx(1) > 7.E9) 1.0"
End
Material 1
Name = "Austenitic stainless steel (AK Steel 201)"
Poisson ratio = 0.3
Youngs modulus = Variable "Principal Strain", "vonMises"
Real MATC "(tx(0)*tx(1)*0.0)+197.0e9"
End
Material 1
Name = "Austenitic stainless steel (AK Steel 201)"
Poisson ratio = 0.3
Youngs modulus = 197.0e9
End
Material 1
Name = "Austenitic stainless steel (AK Steel 201)"
Poisson ratio = 0.3
Youngs modulus = Variable "Principal Strain", "vonMises"
Real MATC "if (tx(1) < 7.E9) 197.0e9; if (tx(1) > 7.E9) 1.0"
End
Material 1
Name = "Austenitic stainless steel (AK Steel 201)"
Poisson ratio = 0.3
Youngs modulus = Variable "Principal Strain", "vonMises"
Real MATC "(tx(0)*tx(1)*0.0)+197.0e9"
End
Material 1
Name = "Austenitic stainless steel (AK Steel 201)"
Poisson ratio = 0.3
Youngs modulus = 197.0e9
End

 Posts: 155
 Joined: 25 Jan 2019, 01:28
 Antispam: Yes
Re: adding youngs modulus as a function of stress
This definitely affected the results, have not worked with it enough yet to determine if it affected the results correctly
Material 1
Name = "Austenitic stainless steel (AK Steel 201)"
Poisson ratio = 0.3
Youngs modulus = Variable "Principal Strain"
Real
0.0 197.0e9
0.012 197.0e9
0.013 80.E9
0.014 40.E9
0.015 1.000
0.040 0.0001
1.0 0.0001
End
End
Material 1
Name = "Austenitic stainless steel (AK Steel 201)"
Poisson ratio = 0.3
Youngs modulus = Variable "Principal Strain"
Real
0.0 197.0e9
0.012 197.0e9
0.013 80.E9
0.014 40.E9
0.015 1.000
0.040 0.0001
1.0 0.0001
End
End

 Posts: 155
 Joined: 25 Jan 2019, 01:28
 Antispam: Yes
Re: adding youngs modulus as a function of stress
Although you can enter Young's Modulus as a variable it does not arrive at the correct solution for plastic deformation. I compared results to actual uniaxial tensile test. Both ABAQUS and Calculix produced correct results using the model. Elmer produced correct results using a constant Young's Modulus with the model. However, it did not for the case setting Young's modulus as a variable of stress nor strain.
Re: adding youngs modulus as a function of stress
Hi,
The principal strain consists of three scalar components (the eigenvalues of the strain tensor referred to as "Principal Strain 1", "Principal Strain 2" and "Principal Strain 3"), so tabulating Young's modulus as a function of a scalar "Principal Strain" misses some logic?
Mika
The principal strain consists of three scalar components (the eigenvalues of the strain tensor referred to as "Principal Strain 1", "Principal Strain 2" and "Principal Strain 3"), so tabulating Young's modulus as a function of a scalar "Principal Strain" misses some logic?
Mika