Hi, everyone
I had a problem when I did a simple test with a GWB tutorial.
It seems to be a convergence problem when I prescribed a velocity boundary along the x-direction of the Right Boundary (all free slip boundaries do work).
What causes this?
The input PRM file attached below
#### World Builder parameters which can be used by ASPECT ####
set World builder file = RFM-11-2D.wb
set Output directory = RFM-11-2D_3
#### other parameters needed by ASPECT #####
set Dimension = 2
set CFL number = 1
set Max nonlinear iterations = 50
set End time = 2e7
set Use years in output instead of seconds = true
set Nonlinear solver scheme = single Advection, single Stokes
set Nonlinear solver tolerance = 1e-6
subsection Geometry model
set Model name = box
subsection Box
set X extent = 3000e3
set Y extent = 670e3
set X repetitions = 4
set Y repetitions = 1
end
end
subsection Solver parameters
subsection Stokes solver parameters
set Linear solver tolerance = 1e-6
set Number of cheap Stokes solver steps = 200
set Krylov method for cheap solver steps = GMRES
set Maximum number of expensive Stokes solver steps = 2000
end
end
subsection Initial temperature model
set Model name = world builder
end
subsection Initial composition model
set Model name = world builder
end
subsection Formulation
set Formulation = Boussinesq approximation
end
subsection Boundary composition model
set Fixed composition boundary indicators = right
set List of model names = initial composition
end
subsection Boundary velocity model
set Tangential velocity boundary indicators = left,bottom,top
set Prescribed velocity boundary indicators = right x:function
subsection Function
set Function constants = cm = 0.01
set Function expression = if(z<540000.0, (600.0/550.0)*cm, \
if(z>560000.0, -5.0*cm, \
((((-600.0/550.0)-5.0)/-20.0)*((z/1000.0)-560.0)+5.0)*(-1.0*cm))); \
0
set Variable names = x,y,z
end
end
#### parameters needed by ASPECT when using compositions ####
subsection Compositional fields
set Number of fields = 5
set Names of fields = override_plate,ocean_subduction,oceanic_plate,mantle_subduction,upper_mantle
end
subsection Material model
set Model name = multicomponent
subsection Multicomponent
set Reference temperature = 0.0
set Viscosity averaging scheme = maximum composition
# Note the order of the compositional fields:
# background, override_plate,ocean_subduction,oceanic_plate,mantle_subduction,upper_mantle
set Viscosities = 1e20, 1e23,1e23, 1e23, 1e23, 1e20
set Densities = 3200, 3250,3250, 3250, 3250, 3200
set Thermal conductivities = 1
end
end
#### parameteres needed to actually output temperature and compostion ####
subsection Boundary temperature model
set Fixed temperature boundary indicators = bottom, top
set List of model names = box
subsection Box
set Bottom temperature = 1812.15
# set Left temperature = 0
# set Right temperature = 0
set Top temperature = 273.15
end
end
subsection Postprocess
set List of postprocessors = visualization
subsection Visualization
set List of output variables = depth, material properties
set Time between graphical output = 1e5
end
end
#### increasing the mesh refinement ####
subsection Mesh refinement
set Initial global refinement = 2
set Initial adaptive refinement = 2
set Strategy = composition threshold
set Skip solvers on initial refinement = true
# set Strategy = minimum refinement function, \
# viscosity, composition
subsection Composition threshold
set Compositional field thresholds = 0.1,0.1,0.1,0.1,2 #1,1,1,1,0
end
end
subsection Gravity model
set Model name = vertical
end
The input WB file
{
"version":"0.4",
"coordinate system":{"model":"cartesian"},
"cross section":[[0,500e3],[3000e3,500e3]],
"features":
[
{"model":"mantle layer", "name":"upper mantle", "min depth":100e3, "max depth":670e3,
"coordinates":[[0,0],[0,1000e3],[3000e3,1000e3],[3000e3,0]],
"composition models":[{"model":"uniform", "compositions":[4]}]},
{"model":"oceanic plate", "name":"Overriding plate", "max depth":100e3,
"coordinates":[[0,0],[0,1000e3],[1500e3,1000e3],[1600e3,350e3],[1500e3,0]],
"temperature models":[{"model":"plate model", "max depth":100e3, "spreading velocity":0.01,
"ridge coordinates":[[400e3,-1],[-100e3,2000e3]]}],
"composition models":[{"model":"uniform", "compositions":[0], "max depth":100e3}]},
{"model":"oceanic plate", "name":"Atlantic Plate", "max depth":100e3,
"coordinates":[[3000e3,0],[3000e3,1000e3],[1500e3,1000e3],[1600e3,350e3],[1500e3,0]],
"temperature models":[{"model":"linear", "max depth":100e3}],
"composition models":[{"model":"uniform", "compositions":[1], "max depth":50e3},
{"model":"uniform", "compositions":[2], "min depth":50e3}]},
{"model":"subducting plate", "name":"Slab",
"coordinates":[[1500e3,1000e3],[1600e3,350e3],[1500e3,0]],
"dip point":[0,0],
"segments":[{"length":300e3, "thickness":[100e3], "angle":[0,60],
"composition models":[{"model":"uniform", "compositions":[1], "max distance slab top":50e3},
{"model":"uniform", "compositions":[1], "min distance slab top":50e3}]},
{"length":500e3, "thickness":[100e3], "angle":[60,20]}],
"temperature models":[{"model":"plate model", "density":3300, "plate velocity":0.02 }],
"composition models":[{"model":"uniform", "compositions":[3], "max distance slab top":100e3}]}
]
}