Skip to content
Snippets Groups Projects

PARMG cleanup, write out deformationfunction to a file, Continue the trustregionsolver with a smaller trustregion radius in case of an exception

Closed lisa_julia.nebel_at_tu-dresden.de requested to merge (removed):master into master
1 unresolved thread
3 files
+ 97
36
Compare changes
  • Side-by-side
  • Inline
Files
3
@@ -3,14 +3,21 @@
@@ -3,14 +3,21 @@
#############################################
#############################################
structuredGrid = true
structuredGrid = true
 
 
# bounding box
lower = 0 0 0
lower = 0 0 0
upper = 5 1 1
upper = 200 100 200
elements = 20 5 5
 
elements = 10 5 5
 
 
# Number of grid levels: refinement levels of the surface shell part, refined using hierarchic refinement
 
numLevels = 2
 
#Overlap indicator for the grid when doing parallel calculations; when set to false, all communication will be done assuming there is no overlap when assembling the matrix and the rhs
#Overlap indicator for the grid when doing parallel calculations; when set to false, all communication will be done assuming there is no overlap when assembling the matrix and the rhs
overlap = false
overlap = false
# Number of grid levels
# Adaptive Refinement
numLevels = 1
adaptiveRefinement = true
#############################################
#############################################
# Solver parameters
# Solver parameters
@@ -23,13 +30,13 @@ numHomotopySteps = 1
@@ -23,13 +30,13 @@ numHomotopySteps = 1
tolerance = 1e-6
tolerance = 1e-6
# Max number of steps of the trust region solver
# Max number of steps of the trust region solver
maxTrustRegionSteps = 500
maxTrustRegionSteps = 200
# Initial trust-region radius
# Initial trust-region radius
initialTrustRegionRadius = 0.1
initialTrustRegionRadius = 10
# Number of multigrid iterations per trust-region step
# Number of multigrid iterations per trust-region step
numIt = 1000
numIt = 100
# Number of presmoothing steps
# Number of presmoothing steps
nu1 = 3
nu1 = 3
@@ -56,31 +63,31 @@ baseTolerance = 1e-8
@@ -56,31 +63,31 @@ baseTolerance = 1e-8
# Material parameters
# Material parameters
############################
############################
energy = stvenantkirchhoff
energy = mooneyrivlin
## For the Wriggers L-shape example
## For the Wriggers L-shape example
[materialParameters]
[materialParameters]
# Lame parameters
# Lame parameters for stvenantkirchhoff
# corresponds to E = 71240 N/mm^2, nu=0.31
# corresponds to E = 71240 N/mm^2, nu=0.31
# However, we use units N/m^2
# However, we use units N/m^2
mu = 2.7191e+6
mu = 2.7191e+4
lambda = 4.4364e+6
lambda = 4.4364e+4
mooneyrivlin_a = 2.7191e+6
mooneyrivlin_a = 2.7191e+6
mooneyrivlin_b = 2.7191e+6
mooneyrivlin_b = 2.7191e+6
mooneyrivlin_c = 2.7191e+6
mooneyrivlin_c = 2.7191e+6
mooneyrivlin_10 = -7.28e+5
mooneyrivlin_10 = -7.28e+4
mooneyrivlin_01 = 9.17e+5
mooneyrivlin_01 = 9.17e+4
mooneyrivlin_20 = 1.23e+5
mooneyrivlin_20 = 1.23e+4
mooneyrivlin_02 = 8.15e+5
mooneyrivlin_02 = 8.15e+4
mooneyrivlin_11 = -5.14e+5
mooneyrivlin_11 = -5.14e+4
mooneyrivlin_30 = 0
mooneyrivlin_30 = 0
mooneyrivlin_21 = 0
mooneyrivlin_21 = 0
mooneyrivlin_12 = 0
mooneyrivlin_12 = 0
mooneyrivlin_03 = 0
mooneyrivlin_03 = 0
mooneyrivlin_k = 1e+6 # volume-preserving parameter
mooneyrivlin_k = 1e+5 # volume-preserving parameter
mooneyrivlin_energy = log # log, square or ciarlet; different ways to compute the Mooney-Rivlin-Energy
mooneyrivlin_energy = log # log, square or ciarlet; different ways to compute the Mooney-Rivlin-Energy
[]
[]
@@ -95,12 +102,16 @@ problem = wriggers-l-shape
@@ -95,12 +102,16 @@ problem = wriggers-l-shape
# x is the vertex coordinate
# x is the vertex coordinate
dirichletVerticesPredicate = "x[0] < 0.01"
dirichletVerticesPredicate = "x[0] < 0.01"
### Python predicate specifying all Dirichlet grid vertices
### Python predicate specifying all surface shell grid vertices
 
# x is the vertex coordinate
 
adaptiveRefinementPredicate = "x[2] > 199.99"
 
 
### Python predicate specifying all Neumann grid vertices
# x is the vertex coordinate
# x is the vertex coordinate
neumannVerticesPredicate = "x[0] > 4.99"
neumannVerticesPredicate = "x[0] > 199.99"
### Neumann values, if needed
### Neumann values, if needed
neumannValues = 0 5e4 0
neumannValues = 15e3 0 0
# Initial deformation
# Initial deformation
initialDeformation = "[x[0], x[1], x[2]]"
initialDeformation = "x"
Loading