IC::PerturbedInterface

src/IC/PerturbedInterface.H

Initialize a perturbed interface using Fourier Modes

Notes: 1. todo Extend this class to allow for 3D perturbations, currently only 2D are allowed 2. todo Allow for cosine (or complex exponential) expansions rather than just sin. 3. note This is a two grain only initial condition. 4. note This replaces the depricated “perturbed_bar” initial condition from previous versions

The interface is defined as the \(x=0\) plane (2D), or the \(x=0,z=0\) plane (3D). The equation for the interface is given by \(y(x,z) = \sum_{n\in \{n_1,\ldots,n_N\}} A_n \sin(n\pi x/L_x)\) where \(A_n\) are the amplitudes (stored in #wave_amplitudes), \(n_1,\ldots,n_N\subset\mathbb{Z}_+\) are wave numbers (stored in #wave_numbers), and \(L_x\) is the length in the x direction (obtained using the #geom object).

Grain 1 is defined as being above \(y(x,z)\), Grain 2 is defined as being below.

wave_numbers
conditional

Wave numbers

Names by executable 2 executables, 2 uses
alamo-2d-coverage-g++
ic.perturbedinterface.wave_numbers
alamo-3d-coverage-g++
ic.perturbedinterface.wave_numbers
wave_amplitudes
conditional

Wave amplitudes

Names by executable 2 executables, 2 uses
alamo-2d-coverage-g++
ic.perturbedinterface.wave_amplitudes
alamo-3d-coverage-g++
ic.perturbedinterface.wave_amplitudes
normal
conditional

Which axis is normal to the interface (x,y,z)

Names by executable 2 executables, 2 uses
alamo-2d-coverage-g++
ic.perturbedinterface.normal
alamo-3d-coverage-g++
ic.perturbedinterface.normal
offset
conditional

Interface offset from origin

Names by executable 2 executables, 2 uses
alamo-2d-coverage-g++
ic.perturbedinterface.offset
alamo-3d-coverage-g++
ic.perturbedinterface.offset
reverse
conditional

If true, flip the interface (default:false)

Names by executable 2 executables, 2 uses
alamo-2d-coverage-g++
ic.perturbedinterface.reverse
alamo-3d-coverage-g++
ic.perturbedinterface.reverse
mollifier
conditional

Mollifier (options: dirac, [gaussian])

Names by executable 2 executables, 2 uses
alamo-2d-coverage-g++
ic.perturbedinterface.mollifier
alamo-3d-coverage-g++
ic.perturbedinterface.mollifier