diff --git a/PRIVATE b/PRIVATE index 0744cf7f9..37b196668 160000 --- a/PRIVATE +++ b/PRIVATE @@ -1 +1 @@ -Subproject commit 0744cf7f93dbd06423baaae97a67959f11c3e6a5 +Subproject commit 37b19666872a67acdc3c70c270335fd21f11986e diff --git a/examples/config/phase/Al.yaml b/examples/config/phase/Al.yaml index 9d6daf88f..57004df14 100644 --- a/examples/config/phase/Al.yaml +++ b/examples/config/phase/Al.yaml @@ -1,4 +1,4 @@ -lattice: cF -rho: 2700 references: - en.wikipedia.org/wiki/Aluminium +lattice: cF +rho: 2700.0 diff --git a/examples/config/phase/Au.yaml b/examples/config/phase/Au.yaml new file mode 100644 index 000000000..23c1f30f1 --- /dev/null +++ b/examples/config/phase/Au.yaml @@ -0,0 +1,4 @@ +references: + - en.wikipedia.org/wiki/Gold +lattice: cF +rho: 19300.0 diff --git a/examples/config/phase/Cu.yaml b/examples/config/phase/Cu.yaml new file mode 100644 index 000000000..bcf9e8717 --- /dev/null +++ b/examples/config/phase/Cu.yaml @@ -0,0 +1,4 @@ +references: + - en.wikipedia.org/wiki/Copper +lattice: cF +rho: 8960.0 diff --git a/examples/config/phase/Fe.yaml b/examples/config/phase/Fe.yaml index e8d39fdbe..cce09d634 100644 --- a/examples/config/phase/Fe.yaml +++ b/examples/config/phase/Fe.yaml @@ -1,4 +1,4 @@ -lattice: cI -rho: 7874 references: - en.wikipedia.org/wiki/Iron +lattice: cI +rho: 7874.0 diff --git a/examples/config/phase/Ni.yaml b/examples/config/phase/Ni.yaml index 49adb9e11..1f9316118 100644 --- a/examples/config/phase/Ni.yaml +++ b/examples/config/phase/Ni.yaml @@ -1,4 +1,4 @@ -lattice: cF -rho: 8908 references: - en.wikipedia.org/wiki/Nickel +lattice: cF +rho: 8908.0 diff --git a/examples/config/phase/Ti.yaml b/examples/config/phase/Ti.yaml new file mode 100644 index 000000000..a9811786b --- /dev/null +++ b/examples/config/phase/Ti.yaml @@ -0,0 +1,6 @@ +references: + - www.totalmateria.com/page.aspx?ID=CheckArticle&site=ktn&NM=221 + - en.wikipedia.org/wiki/Titanium +lattice: hP +c/a: 1.587 +rho: 4506.0 diff --git a/examples/config/phase/W.yaml b/examples/config/phase/W.yaml new file mode 100644 index 000000000..c770bb891 --- /dev/null +++ b/examples/config/phase/W.yaml @@ -0,0 +1,4 @@ +references: + - en.wikipedia.org/wiki/Tungsten +lattice: cF +rho: 19300.0 diff --git a/examples/config/phase/alpha-Ti.yaml b/examples/config/phase/alpha-Ti.yaml deleted file mode 100644 index 5bd2580a2..000000000 --- a/examples/config/phase/alpha-Ti.yaml +++ /dev/null @@ -1,2 +0,0 @@ -lattice: hP -c/a: 1.587 diff --git a/examples/config/phase/mechanical/eigen/thermalexpansion_Al.yaml b/examples/config/phase/mechanical/eigen/thermalexpansion_Al.yaml new file mode 100644 index 000000000..1876141f6 --- /dev/null +++ b/examples/config/phase/mechanical/eigen/thermalexpansion_Al.yaml @@ -0,0 +1,5 @@ +type: thermalexpansion +references: + - en.wikipedia.org/wiki/Thermal_expansion +A_11: [23.1e-6] +T_ref: 293.15 diff --git a/examples/config/phase/mechanical/eigen/thermalexpansion_Au.yaml b/examples/config/phase/mechanical/eigen/thermalexpansion_Au.yaml new file mode 100644 index 000000000..5d8030e1e --- /dev/null +++ b/examples/config/phase/mechanical/eigen/thermalexpansion_Au.yaml @@ -0,0 +1,5 @@ +type: thermalexpansion +references: + - en.wikipedia.org/wiki/Thermal_expansion +A_11: [14e-6] +T_ref: 293.15 diff --git a/examples/config/phase/mechanical/eigen/thermalexpansion_C35E.yaml b/examples/config/phase/mechanical/eigen/thermalexpansion_C35E.yaml new file mode 100644 index 000000000..dea09aa43 --- /dev/null +++ b/examples/config/phase/mechanical/eigen/thermalexpansion_C35E.yaml @@ -0,0 +1,5 @@ +type: thermalexpansion +references: + - en.wikipedia.org/wiki/Thermal_expansion, fitted from image description +A_11: [12.70371e-6, 7.54e-9, -1.0e-11] +T_ref: 273.0 diff --git a/examples/config/phase/mechanical/eigen/thermalexpansion_Cu.yaml b/examples/config/phase/mechanical/eigen/thermalexpansion_Cu.yaml new file mode 100644 index 000000000..3eb41aa90 --- /dev/null +++ b/examples/config/phase/mechanical/eigen/thermalexpansion_Cu.yaml @@ -0,0 +1,5 @@ +type: thermalexpansion +references: + - en.wikipedia.org/wiki/Thermal_expansion +A_11: [17e-6] +T_ref: 293.15 diff --git a/examples/config/phase/mechanical/eigen/thermalexpansion_Fe.yaml b/examples/config/phase/mechanical/eigen/thermalexpansion_Fe.yaml new file mode 100644 index 000000000..f36250490 --- /dev/null +++ b/examples/config/phase/mechanical/eigen/thermalexpansion_Fe.yaml @@ -0,0 +1,5 @@ +type: thermalexpansion +references: + - en.wikipedia.org/wiki/Thermal_expansion +A_11: [11.8e-6] +T_ref: 293.15 diff --git a/examples/config/phase/mechanical/eigen/thermalexpansion_W.yaml b/examples/config/phase/mechanical/eigen/thermalexpansion_W.yaml new file mode 100644 index 000000000..a6d069bd3 --- /dev/null +++ b/examples/config/phase/mechanical/eigen/thermalexpansion_W.yaml @@ -0,0 +1,5 @@ +type: thermalexpansion +references: + - en.wikipedia.org/wiki/Thermal_expansion +A_11: [4.5e-6] +T_ref: 293.15 diff --git a/examples/config/phase/mechanical/eigen/thermalexpansion_X20Cr13.yaml b/examples/config/phase/mechanical/eigen/thermalexpansion_X20Cr13.yaml new file mode 100644 index 000000000..7842b9d6d --- /dev/null +++ b/examples/config/phase/mechanical/eigen/thermalexpansion_X20Cr13.yaml @@ -0,0 +1,5 @@ +type: thermalexpansion +references: + - en.wikipedia.org/wiki/Thermal_expansion, fitted from image description +A_11: [11.365e-6, 5.0e-9] +T_ref: 273.0 diff --git a/examples/config/phase/mechanical/elastic/Hooke_Cu.yaml b/examples/config/phase/mechanical/elastic/Hooke_Cu.yaml new file mode 100644 index 000000000..b55c83bdf --- /dev/null +++ b/examples/config/phase/mechanical/elastic/Hooke_Cu.yaml @@ -0,0 +1,6 @@ +type: Hooke +references: + - www.mit.edu/~6.777/matprops/copper.htm, fixed typo +C_11: 168.3e9 +C_12: 122.1e9 +C_44: 75.7e9 diff --git a/examples/config/phase/mechanical/elastic/Hooke_cpTi.yaml b/examples/config/phase/mechanical/elastic/Hooke_Ti.yaml similarity index 100% rename from examples/config/phase/mechanical/elastic/Hooke_cpTi.yaml rename to examples/config/phase/mechanical/elastic/Hooke_Ti.yaml diff --git a/examples/config/phase/mechanical/elastic/Hooke_W.yaml b/examples/config/phase/mechanical/elastic/Hooke_W.yaml new file mode 100644 index 000000000..58561106a --- /dev/null +++ b/examples/config/phase/mechanical/elastic/Hooke_W.yaml @@ -0,0 +1,8 @@ +type: Hooke +references: + - D. Cereceda et al., + International Journal of Plasticity, 78, 242-265, 2016, + 10.1016/j.ijplas.2015.09.002 +C_11: 523.e9 +C_12: 202.e9 +C_44: 161.e9 diff --git a/examples/config/phase/mechanical/plastic/dislotwin_IF-steel.yaml b/examples/config/phase/mechanical/plastic/dislotwin_IF-steel.yaml index b5defb6db..3da7038a2 100644 --- a/examples/config/phase/mechanical/plastic/dislotwin_IF-steel.yaml +++ b/examples/config/phase/mechanical/plastic/dislotwin_IF-steel.yaml @@ -1,7 +1,7 @@ type: dislotwin references: - K. Sedighiani et al., - International Journal of Plasticity, 134, 102779, 2020 + International Journal of Plasticity, 134, 102779, 2020, 10.1016/j.ijplas.2020.102779 - K. Sedighiani et al., Mechanics of Materials, submitted diff --git a/examples/config/phase/mechanical/plastic/phenopowerlaw_Au.yaml b/examples/config/phase/mechanical/plastic/phenopowerlaw_Au.yaml index 840f3ff30..baf7c7c14 100644 --- a/examples/config/phase/mechanical/plastic/phenopowerlaw_Au.yaml +++ b/examples/config/phase/mechanical/plastic/phenopowerlaw_Au.yaml @@ -1,14 +1,17 @@ -# parameters fitted by D. Ma to: -# On the mathematical description of the tensile stress-strain curves of polycrystalline face centered cubic metals -# International Journal of Plasticity, Volume 12, Issue 1, 1996, Pages 35-43 -# DOI: 10.1016/S0749-6419(95)00043-7 type: phenopowerlaw -output: [xi_sl] +references: + - D. Ma et al., + Acta Materialia, 103, 796-808, 2016, + 10.1016/j.actamat.2015.11.016 + - I. Kovács and G.Vörös, + International Journal of Plasticity, 12, 35-43, 1996, + 10.1016/S0749-6419(95)00043-7 +output: [xi_sl, gamma_sl] N_sl: [12] -n_sl: 83 +n_sl: 83.3 dot_gamma_0_sl: 0.001 -h_0_sl_sl: 75e6 +h_0_sl_sl: 75.0e6 h_sl_sl: [1, 1, 1.4, 1.4, 1.4, 1.4, 1.4] a_sl: 1.0 -xi_0_sl: [26e6] -xi_inf_sl: [53e6] +xi_0_sl: [26.25e6] +xi_inf_sl: [53.0e6] diff --git a/examples/config/phase/thermal/Al.yaml b/examples/config/phase/thermal/Al.yaml index 8837f30af..87fadc143 100644 --- a/examples/config/phase/thermal/Al.yaml +++ b/examples/config/phase/thermal/Al.yaml @@ -1,7 +1,5 @@ references: - www.engineeringtoolbox.com/thermal-conductivity-metals-d_858.html - www.engineeringtoolbox.com/specific-heat-metals-d_152.html -c_p: 0.91e3 +c_p: 910.0 K_11: 236.0 -K_22: 236.0 -K_33: 236.0 diff --git a/examples/config/phase/thermal/Au.yaml b/examples/config/phase/thermal/Au.yaml new file mode 100644 index 000000000..68b6c2255 --- /dev/null +++ b/examples/config/phase/thermal/Au.yaml @@ -0,0 +1,4 @@ +references: + - de.wikipedia.org/wiki/Gold +c_p: 128.0 +K_11: 320.0 diff --git a/examples/config/phase/thermal/Cu.yaml b/examples/config/phase/thermal/Cu.yaml new file mode 100644 index 000000000..a5bfdfae0 --- /dev/null +++ b/examples/config/phase/thermal/Cu.yaml @@ -0,0 +1,4 @@ +references: + - www.mit.edu/~6.777/matprops/copper.htm +c_p: 385.0 +K_11: 401.0 diff --git a/examples/config/phase/thermal/Steel-0.5C.yaml b/examples/config/phase/thermal/Steel-0.5C.yaml index 861cbbee5..89d9c8616 100644 --- a/examples/config/phase/thermal/Steel-0.5C.yaml +++ b/examples/config/phase/thermal/Steel-0.5C.yaml @@ -1,7 +1,5 @@ references: - www.engineeringtoolbox.com/thermal-conductivity-metals-d_858.html - www.engineeringtoolbox.com/specific-heat-metals-d_152.html -c_p: 0.49e3 +c_p: 490.0 K_11: 54.0 -K_22: 54.0 -K_33: 54.0 diff --git a/examples/config/phase/thermal/W.yaml b/examples/config/phase/thermal/W.yaml new file mode 100644 index 000000000..39e838075 --- /dev/null +++ b/examples/config/phase/thermal/W.yaml @@ -0,0 +1,4 @@ +references: + - www.mit.edu/~6.777/matprops/tungsten.htm +c_p: 132.51 +K_11: 178.0 diff --git a/src/phase_thermal.f90 b/src/phase_thermal.f90 index 8d6ccaf6f..cbe467838 100644 --- a/src/phase_thermal.f90 +++ b/src/phase_thermal.f90 @@ -101,10 +101,10 @@ module subroutine thermal_init(phases) phase => phases%get(ph) thermal => phase%get('thermal',defaultVal=emptyDict) param(ph)%C_p = thermal%get_asFloat('c_p',defaultVal=0.0_pReal) - if (param(ph)%C_p <= 0) param(ph)%C_p = thermal%get_asFloat('C_p',defaultVal=0.0_pReal) - param(ph)%K(1,1) = thermal%get_asFloat('K_11',defaultVal=0.0_pReal) - param(ph)%K(2,2) = thermal%get_asFloat('K_22',defaultVal=0.0_pReal) - param(ph)%K(3,3) = thermal%get_asFloat('K_33',defaultVal=0.0_pReal) + if (param(ph)%C_p <= 0) param(ph)%C_p = thermal%get_asFloat('C_p',defaultVal=0.0_pReal) ! ToDo: decide on capitalization + param(ph)%K(1,1) = thermal%get_asFloat('K_11',defaultVal=0.0_pReal) ! ToDo: make mandatory? + param(ph)%K(2,2) = thermal%get_asFloat('K_22',defaultVal=0.0_pReal) ! ToDo: depends on symmtery + param(ph)%K(3,3) = thermal%get_asFloat('K_33',defaultVal=0.0_pReal) ! ToDo: depends on symmtery param(ph)%K = lattice_applyLatticeSymmetry33(param(ph)%K,phase%get_asString('lattice')) sources => thermal%get('source',defaultVal=emptyList)