Skip to content
Snippets Groups Projects
Commit 4fb5347c authored by Van Dung NGUYEN's avatar Van Dung NGUYEN
Browse files

modif

parent 4dc2ffc3
No related branches found
No related tags found
1 merge request!16Transfer updates into jl_gurson
......@@ -206,5 +206,5 @@ mysolver.archivingInterfaceElementIP(11,12,IPField.INCOMPATIBLE_STRAIN_Y,4,0,1)
mysolver.solve()
check = TestCheck()
check.equal(-8.943046e+00,mysolver.getArchivedForceOnPhysicalGroup("Edge", 4, 0),1.e-4)
check.equal(-8.913148e+00,mysolver.getArchivedForceOnPhysicalGroup("Edge", 4, 0),1.e-4)
......@@ -56,6 +56,9 @@ macromat1.Solver(2)
#for i in range(0,1):
macromat1.setViewAllMicroProblems(True,0)
macromat1.setBlockDamageAfterFailureOnset(True)
macromat1.setBlockDamageAfterFailureOnsetTolerance(0.001)
macromat1.Scheme(1)
macromat1.setSameStateCriterion(1e-16)
macromat1.stressAveragingFlag(True) # set stress averaging ON- 0 , OFF-1
......@@ -96,7 +99,8 @@ macromat1.dirichletBC("Face",11,2,0.)
lcohNum = 13
lawCoh = TwoFieldMultiscaleCohesive3DLaw(lcohNum,0.7)
lawCoh.setCharacteristicLength(1.)
lawCoh.setExtractCohesiveLawFromMicroDamage(True,0.05)
lawCoh.setExtractCohesiveLawFromMicroDamage(True)
lawCoh.setLostSolutionUniquenssTolerance(0.05)
macromeshfile="model.msh" # name of mesh file
......
......@@ -56,6 +56,8 @@ macromat1.Solver(2)
#for i in range(0,1):
macromat1.setViewAllMicroProblems(True,0)
macromat1.setBlockDamageAfterFailureOnset(True)
macromat1.Scheme(1)
macromat1.setSameStateCriterion(1e-16)
macromat1.stressAveragingFlag(True) # set stress averaging ON- 0 , OFF-1
......@@ -96,7 +98,8 @@ macromat1.dirichletBC("Face",11,2,0.)
lcohNum = 13
lawCoh = TwoFieldMultiscaleCohesive3DLaw(lcohNum,0.7)
lawCoh.setCharacteristicLength(1.)
lawCoh.setExtractCohesiveLawFromMicroDamage(True,0.9)
lawCoh.setExtractCohesiveLawFromMicroDamage(True)
lawCoh.setLostSolutionUniquenssTolerance(0.9)
macromeshfile="model.msh" # name of mesh file
......@@ -105,7 +108,7 @@ sol = 2 # Gmm=0 (default) Taucs=1 PETsc=2
soltype =1 # StaticLinear=0 (default) StaticNonLinear=1
nstep = 100 # number of step (used only if soltype=1)
ftime =1. # Final time (used only if soltype=1)
tol=1.e-3 # relative tolerance for NR scheme (used only if soltype=1)
tol=1.e-5 # relative tolerance for NR scheme (used only if soltype=1)
nstepArch=1 # Number of step between 2 archiving (used only if soltype=1)
......@@ -131,10 +134,10 @@ macrodomain2.setDistributedOtherRanks(True)
macrodomain2.distributeOnRootRank(False)
# interface domain
beta1 = 1e-3;
beta1 = 100;
interdomain1 = interDomainBetween3D(12,macrodomain1,macrodomain2,lcohNum,matnum1)
interdomain1.stabilityParameters(beta1)
interdomain1.setMultipleFieldFormulation(True,1)
interdomain1.setMultipleFieldFormulation(True,2,2)
interdomain1.averageStrainBased(averageStrainBased)
interdomain1.setDistributedOtherRanks(True)
interdomain1.distributeOnRootRank(False)
......@@ -185,13 +188,23 @@ mysolver.internalPointBuildView("sig_xz",IPField.SIG_XZ, 1, 1);
mysolver.internalPointBuildView("sig_VM",IPField.SVM, 1, 1);
mysolver.internalPointBuildView("Green-Lagrange equivalent strain",IPField.GL_EQUIVALENT_STRAIN, 1, 1);
mysolver.internalPointBuildView("Equivalent plastic strain",IPField.PLASTICSTRAIN, 1, 1);
mysolver.internalPointBuildView("Damage",IPField.DAMAGE,1,1);
mysolver.archivingForceOnPhysicalGroup("Edge",4,0)
mysolver.archivingInterfaceElementIP(11,12,IPField.DISP_JUMP_X,4,0,1)
mysolver.archivingInterfaceElementIP(11,12,IPField.DISP_JUMP_Y,4,0,1)
mysolver.archivingInterfaceElementIP(11,12,IPField.COHESIVE_JUMP_X,4,0,1)
mysolver.archivingInterfaceElementIP(11,12,IPField.COHESIVE_JUMP_Y,4,0,1)
mysolver.archivingInterfaceElementIP(11,12,IPField.INCOMPATIBLE_STRAIN_X,4,0,1)
mysolver.archivingInterfaceElementIP(11,12,IPField.INCOMPATIBLE_STRAIN_Y,4,0,1)
# solve
mysolver.solve()
check = TestCheck()
check.equal(-8.943150e+00,mysolver.getArchivedForceOnPhysicalGroup("Edge", 4, 0),1.e-4)
check.equal(-8.913191e+00,mysolver.getArchivedForceOnPhysicalGroup("Edge", 4, 0),1.e-4)
......@@ -55,7 +55,9 @@ macromat1.setSystemType(1)
macromat1.Solver(2)
#for i in range(0,1):
macromat1.setViewAllMicroProblems(True,0)
macromat1.setBlockDamageAfterFailureOnset(True,0.4)
macromat1.setBlockDamageAfterFailureOnset(True)
macromat1.setBlockDamageAfterFailureOnsetTolerance(0.4)
macromat1.Scheme(1)
macromat1.setSameStateCriterion(1e-16)
......@@ -97,7 +99,8 @@ macromat1.dirichletBC("Face",11,2,0.)
lcohNum = 13
lawCoh = TwoFieldMultiscaleCohesive3DLaw(lcohNum,0.7)
lawCoh.setCharacteristicLength(1.)
lawCoh.setExtractCohesiveLawFromMicroDamage(True,0.5)
lawCoh.setExtractCohesiveLawFromMicroDamage(True)
lawCoh.setLostSolutionUniquenssTolerance(0.5)
lawCoh.setLocationForStressExtraction(0)
macromeshfile="model.msh" # name of mesh file
......
......@@ -59,7 +59,8 @@ macromat1.Solver(2)
for i in range(0,5):
macromat1.setViewAllMicroProblems(True,i)
macromat1.setBlockDamageAfterFailureOnset(True,0.9)
macromat1.setBlockDamageAfterFailureOnset(True)
macromat1.setBlockDamageAfterFailureOnsetTolerance(0.9)
macromat1.Scheme(1)
macromat1.setSameStateCriterion(1e-16)
......@@ -101,8 +102,8 @@ macromat1.dirichletBC("Face",11,2,0.)
lcohNum = 13
lawCoh = TwoFieldMultiscaleCohesive3DLaw(lcohNum,0.7)
lawCoh.setCharacteristicLength(1.)
lawCoh.setExtractCohesiveLawFromMicroDamage(True,0.95)
lawCoh.setExtractCohesiveLawFromMicroDamage(True)
lawCoh.setLostSolutionUniquenssTolerance(0.95)
macromeshfile="model.msh" # name of mesh file
......@@ -220,5 +221,5 @@ mysolver.archivingInterfaceElementIP(7,8,IPField.INCOMPATIBLE_STRAIN_Z,4,0,1)
mysolver.solve()
check = TestCheck()
check.equal(-1.044702e+01 ,mysolver.getArchivedForceOnPhysicalGroup("Edge", 4, 0),1.e-4)
check.equal(-1.034975e+01 ,mysolver.getArchivedForceOnPhysicalGroup("Edge", 4, 0),1.e-4)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment