-
Notifications
You must be signed in to change notification settings - Fork 89
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: plastic strain output #3384
base: develop
Are you sure you want to change the base?
Changes from 22 commits
d5de7f3
662836f
df505c2
3b0bd7b
78e4db4
a23f26f
c2325c3
27a4801
18a94b2
c7e03b9
2f4e691
3cf18ca
4284d71
cd42322
6700051
5c8f164
7a51c30
ca89c99
0e72772
4f21e46
cf6fe98
8fda259
f5f1fa7
d192712
1de0c2c
48db73d
583e7de
e9bd953
9abd3da
25ddb6a
ccc1b0d
913a1a0
179e4fd
834bba6
3b9372e
136fe65
dbf7497
246dbc8
bb4dfc8
ee9d389
4e6c411
ce59c54
beae829
a5164dc
d403991
b04133d
d8a1680
bb8efc1
01cce1e
cfe31b2
caef37b
69ade8d
576e7bb
54f91fc
93b5268
592b991
381d6ba
2c13f68
74c7226
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change | ||||
---|---|---|---|---|---|---|
|
@@ -135,6 +135,11 @@ class ElasticIsotropicUpdates : public SolidBaseUpdates | |||||
localIndex const q, | ||||||
real64 ( &elasticStrain )[6] ) const override final; | ||||||
|
||||||
GEOS_HOST_DEVICE | ||||||
virtual void getElasticStrainInc( localIndex const k, | ||||||
localIndex const q, | ||||||
real64 ( &elasticStrainInc )[6] ) const override final; | ||||||
|
||||||
GEOS_HOST_DEVICE | ||||||
virtual real64 getBulkModulus( localIndex const k ) const override final | ||||||
{ | ||||||
|
@@ -228,6 +233,23 @@ void ElasticIsotropicUpdates::getElasticStrain( localIndex const k, | |||||
elasticStrain[5] = m_newStress[k][q][5] / m_shearModulus[k]; | ||||||
} | ||||||
|
||||||
GEOS_HOST_DEVICE | ||||||
inline | ||||||
void ElasticIsotropicUpdates::getElasticStrainInc( localIndex const k, | ||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
|
||||||
localIndex const q, | ||||||
real64 ( & elasticStrainInc)[6] ) const | ||||||
{ | ||||||
real64 const E = conversions::bulkModAndShearMod::toYoungMod( m_bulkModulus[k], m_shearModulus[k] ); | ||||||
real64 const nu = conversions::bulkModAndShearMod::toPoissonRatio( m_bulkModulus[k], m_shearModulus[k] ); | ||||||
|
||||||
elasticStrainInc[0] = ( (m_newStress[k][q][0] - m_oldStress[k][q][0]) - nu*(m_newStress[k][q][1] - m_oldStress[k][q][1]) - nu*(m_newStress[k][q][2] - m_oldStress[k][q][2]))/E; | ||||||
elasticStrainInc[1] = (-nu*(m_newStress[k][q][0] - m_oldStress[k][q][0]) + (m_newStress[k][q][1] - m_oldStress[k][q][1]) - nu*(m_newStress[k][q][2] - m_oldStress[k][q][2]))/E; | ||||||
elasticStrainInc[2] = (-nu*(m_newStress[k][q][0] - m_oldStress[k][q][0]) - nu*(m_newStress[k][q][1] - m_oldStress[k][q][1]) + (m_newStress[k][q][2] - m_oldStress[k][q][2]))/E; | ||||||
|
||||||
elasticStrainInc[3] = (m_newStress[k][q][3] - m_oldStress[k][q][3]) / m_shearModulus[k]; | ||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This is the formula for engineering shear strain, which should be twice as that of tensorial shear strain. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. yes, but I think that's what it should be because we are subtracting it from the There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. was this question resolved? ChatGPT says paraview expects tensorial strain...but I think it came to that conclusion because it calculates tensorial strain. |
||||||
elasticStrainInc[4] = (m_newStress[k][q][4] - m_oldStress[k][q][4]) / m_shearModulus[k]; | ||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. see above |
||||||
elasticStrainInc[5] = (m_newStress[k][q][5] - m_oldStress[k][q][5]) / m_shearModulus[k]; | ||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. see above |
||||||
} | ||||||
|
||||||
GEOS_HOST_DEVICE | ||||||
inline | ||||||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since this isn't really a "getter"