PerturbedInterface

This example simluates the evolution of a perturbed interface with strongly anisotropic grain boundary energy. For background see Ribot et al: https://doi.org/10.1088/1361-651X/ab47a0

This problem tests the following

Example output:

../_images/perturbedinterface.png

Notice that the sharp corner in the equilibrium shape is the result of strong anisotropy.

  • Josep Gras Ribot, Vinamra Agrawal, and Brandon Runnels. A new approach for phase field modeling of grain boundaries with strongly nonconvex energy. Modelling and Simulation in Materials Science and Engineering, 27(8):084007, 2019.

perturbed-interface

Two-dimensional

Serial

Validated using check script

19.87s (beaker) 12.53s (statler) 18.75s (github)

./bin/alamo-2d-g++ tests/PerturbedInterface/input

perturbed-interface-coverage

Two-dimensional

Serial

Not validated

./bin/alamo-2d-g++ tests/PerturbedInterface/input  stop_time="0.02"
Input file (../../tests/PerturbedInterface/input)
#@
#@  [perturbed-interface]
#@  dim = 2
#@  check = true
#@  benchmark-beaker = 19.87
#@  benchmark-statler = 12.53
#@  benchmark-github = 18.75
#@  
#@  [perturbed-interface-coverage]
#@  dim = 2
#@  check = false
#@  args=stop_time=0.02
#@  coverage = true
#@  

alamo.program = microstructure

timestep = 0.01
stop_time = 2.0 

plot_file = tests/PerturbedInterface/output

amr.plot_dt = 0.1
amr.max_level = 2
amr.n_cell = 64 64 64
amr.blocking_factor = 8
amr.regrid_int = 10
amr.grid_eff = 1.0
amr.max_grid_size = 8

#amr.thermo.plot_dt = 0.1

ic.type=perturbed_interface
ic.wave_numbers=4
ic.wave_amplitudes=0.5
ic.normal = y
ic.mollifier = dirac

geometry.prob_lo = 0 -4 0
geometry.prob_hi = 8 4 8
geometry.is_periodic= 0 0 0

bc.eta.type.xlo = neumann
bc.eta.type.xhi = neumann
bc.eta.type.ylo = dirichlet
bc.eta.type.yhi = dirichlet
bc.eta.val.ylo  = 1.0 0.0
bc.eta.val.yhi  = 0.0 1.0

pf.number_of_grains = 2
pf.M = 1.0 
pf.mu = 10.0
pf.gamma = 1.0
pf.l_gb=0.1
pf.sigma0=0.075

anisotropy.on=1
anisotropy.timestep=0.001
anisotropy.tstart= 1.
anisotropy.gb_type=sin
anisotropy.sin.sigma0=0.075
anisotropy.sin.sigma1=0.07
anisotropy.sin.theta0=45
anisotropy.beta= 0.00001
#anisotropy.damp=1.0

elastic.on = 0