[cig-commits] r18563 - short/3D/PyLith/trunk/unittests/libtests/materials/data

willic3 at geodynamics.org willic3 at geodynamics.org
Wed Jun 8 21:55:42 PDT 2011


Author: willic3
Date: 2011-06-08 21:55:42 -0700 (Wed, 08 Jun 2011)
New Revision: 18563

Modified:
   short/3D/PyLith/trunk/unittests/libtests/materials/data/MaxwellIsotropic3DElastic.py
   short/3D/PyLith/trunk/unittests/libtests/materials/data/MaxwellIsotropic3DElasticData.cc
   short/3D/PyLith/trunk/unittests/libtests/materials/data/MaxwellPlaneStrainElastic.py
   short/3D/PyLith/trunk/unittests/libtests/materials/data/MaxwellPlaneStrainElasticData.cc
Log:
Fixed regular Maxwell models to properly update state variables using
initial strains for the elastic solution.



Modified: short/3D/PyLith/trunk/unittests/libtests/materials/data/MaxwellIsotropic3DElastic.py
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/materials/data/MaxwellIsotropic3DElastic.py	2011-06-09 04:54:37 UTC (rev 18562)
+++ short/3D/PyLith/trunk/unittests/libtests/materials/data/MaxwellIsotropic3DElastic.py	2011-06-09 04:55:42 UTC (rev 18563)
@@ -197,9 +197,9 @@
                                  C1311, C1322, C1333, C1312, C1323, C1313],
 				 dtype=numpy.float64)
 
-    strain = numpy.reshape(strainV, (6,1))
     initialStress = numpy.reshape(initialStressV, (tensorSize,1))
     initialStrain = numpy.reshape(initialStrainV, (tensorSize,1))
+    strain = numpy.reshape(strainV, (6,1)) - initialStrain
     elastic = numpy.array([ [C1111, C1122, C1133, C1112, C1123, C1113],
                             [C2211, C2222, C2233, C2212, C2223, C2213],
                             [C3311, C3322, C3333, C3312, C3323, C3313],
@@ -207,15 +207,16 @@
                             [C2311, C2322, C2333, C2312, C2323, C2313],
                             [C1311, C1322, C1333, C1312, C1323, C1313] ],
                           dtype=numpy.float64)
-    stress = numpy.dot(elastic, strain-initialStrain) + initialStress
+    stress = numpy.dot(elastic, strain) + initialStress
     meanStrain = (strain[0] + strain[1] + strain[2])/3.0
+    strainVec = numpy.array(strainV, dtype=numpy.float64)
     viscousStrain = [strain[0] - meanStrain,
                      strain[1] - meanStrain,
                      strain[2] - meanStrain,
                      strain[3],
                      strain[4],
                      strain[5]]
-    stateVarsUpdated = numpy.array( [strain, viscousStrain],
+    stateVarsUpdated = numpy.array( [strainVec, viscousStrain],
                                     dtype=numpy.float64)
     return (elasticConsts, numpy.ravel(stress), numpy.ravel(stateVarsUpdated))
   

Modified: short/3D/PyLith/trunk/unittests/libtests/materials/data/MaxwellIsotropic3DElasticData.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/materials/data/MaxwellIsotropic3DElasticData.cc	2011-06-09 04:54:37 UTC (rev 18562)
+++ short/3D/PyLith/trunk/unittests/libtests/materials/data/MaxwellIsotropic3DElasticData.cc	2011-06-09 04:55:42 UTC (rev 18563)
@@ -342,24 +342,24 @@
   1.40000000e-04,
   1.50000000e-04,
   1.60000000e-04,
- -1.00000000e-05,
+ -9.00000000e-06,
   1.35525272e-20,
-  1.00000000e-05,
-  1.40000000e-04,
-  1.50000000e-04,
-  1.60000000e-04,
+  9.00000000e-06,
+  1.06000000e-04,
+  1.15000000e-04,
+  1.24000000e-04,
   4.10000000e-04,
   4.20000000e-04,
   4.30000000e-04,
   4.40000000e-04,
   4.50000000e-04,
   4.60000000e-04,
- -1.00000000e-05,
-  0.00000000e+00,
-  1.00000000e-05,
-  4.40000000e-04,
-  4.50000000e-04,
-  4.60000000e-04,
+ -9.00000000e-06,
+  5.42101086e-20,
+  9.00000000e-06,
+  3.76000000e-04,
+  3.85000000e-04,
+  3.94000000e-04,
 };
 
 pylith::materials::MaxwellIsotropic3DElasticData::MaxwellIsotropic3DElasticData(void)

Modified: short/3D/PyLith/trunk/unittests/libtests/materials/data/MaxwellPlaneStrainElastic.py
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/materials/data/MaxwellPlaneStrainElastic.py	2011-06-09 04:54:37 UTC (rev 18562)
+++ short/3D/PyLith/trunk/unittests/libtests/materials/data/MaxwellPlaneStrainElastic.py	2011-06-09 04:55:42 UTC (rev 18563)
@@ -185,23 +185,23 @@
                                  C2211, C2222, C2212,
                                  C1211, C1222, C1212], dtype=numpy.float64)
 
-    strain = numpy.reshape(strainV, (tensorSize,1))
     initialStress = numpy.reshape(initialStressV, (tensorSize,1))
     initialStrain = numpy.reshape(initialStrainV, (tensorSize,1))
+    strain = numpy.reshape(strainV, (tensorSize,1)) - initialStrain
     stressZZInitial = numpy.array([stateVars[0]], dtype=numpy.float64)
     
     elastic = numpy.array([ [C1111, C1122, C1112],
                             [C2211, C2222, C2212],
                             [C1211, C1222, C1212] ], dtype=numpy.float64)
-    stress = numpy.dot(elastic, strain-initialStrain) + initialStress
+    stress = numpy.dot(elastic, strain) + initialStress
     meanStrain = (strain[0,0] + strain[1,0])/3.0
+    strainVec = numpy.array(strainV, dtype=numpy.float64)
     viscousStrain = numpy.array([strain[0,0] - meanStrain,
                                  strain[1,0] - meanStrain,
                                  -meanStrain,
                                  strain[2,0]],
                                 dtype=numpy.float64)
     viscousStrainVec = numpy.ravel(viscousStrain)
-    strainVec = numpy.ravel(strain)
     
     stateVarsUpdated = numpy.concatenate((stressZZInitial, strainVec,
                                           viscousStrainVec))

Modified: short/3D/PyLith/trunk/unittests/libtests/materials/data/MaxwellPlaneStrainElasticData.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/materials/data/MaxwellPlaneStrainElasticData.cc	2011-06-09 04:54:37 UTC (rev 18562)
+++ short/3D/PyLith/trunk/unittests/libtests/materials/data/MaxwellPlaneStrainElasticData.cc	2011-06-09 04:55:42 UTC (rev 18563)
@@ -235,18 +235,18 @@
   1.10000000e-04,
   1.20000000e-04,
   1.40000000e-04,
-  3.33333333e-05,
-  4.33333333e-05,
- -7.66666667e-05,
-  1.40000000e-04,
+  2.33333333e-05,
+  3.23333333e-05,
+ -5.56666667e-05,
+  1.06000000e-04,
   4.50000000e+04,
   4.10000000e-04,
   4.20000000e-04,
   4.40000000e-04,
-  1.33333333e-04,
-  1.43333333e-04,
- -2.76666667e-04,
-  4.40000000e-04,
+  1.13333333e-04,
+  1.22333333e-04,
+ -2.35666667e-04,
+  3.76000000e-04,
 };
 
 pylith::materials::MaxwellPlaneStrainElasticData::MaxwellPlaneStrainElasticData(void)



More information about the CIG-COMMITS mailing list