A typical stochastic partial differential equation (SPDE) used in surface growth modeling is the Kardar-Parisi-Zhang (KPZ) equation. This nonlinear SPDE characterizes the evolution of a growing interface influenced by random noise, balancing deposition, surface relaxation, and stochastic effects.
Stochastic Partial Differential Equations (SPDEs) are often used in modeling surface growth phenomena. One of the most common SPDEs for this purpose is the Kardar-Parisi-Zhang (KPZ) equation. The KPZ equation models surface growth where the height ( h(x, t) ) evolves over time due to random fluctuations, and is given by:
$$ \frac{\partial h(x, t)}{\partial t} = \nu \nabla^2 h(x, t) + \frac{\lambda}{2} (\nabla h(x, t))^2 + \eta(x, t) $$
where:
To simulate this SPDE, you can discretize the equation using finite difference methods for the spatial and temporal derivatives. Here's a general outline of how to set up a simulation in MATLAB:
Below is a simplified version of MATLAB code to simulate the KPZ equation:
% Parameters
L = 100; % Length of the domain
N = 100; % Number of grid points
dx = L / (N - 1); % Spatial step size
dt = 0.01; % Time step size
T = 10; % Total simulation time
nu = 1.0; % Diffusion coefficient
lambda = 0.5; % Non-linear term coefficient
noise_strength = 0.1; % Strength of the noise
% Spatial grid
x = linspace(0, L, N);
h = zeros(1, N); % Initial height profile
% Time loop
num_steps = floor(T / dt);
for t = 1:num_steps
% Compute Laplacian of h
Laplacian_h = (circshift(h, [0, -1]) - 2 * h + circshift(h, [0, 1])) / dx^2;
% Compute gradient squared term
grad_h = (circshift(h, [0, -1]) - circshift(h, [0, 1])) / (2 * dx);
grad_sq = grad_h.^2;
% Add noise term
eta = noise_strength * randn(1, N);
% Update the surface
h = h + dt * (nu * Laplacian_h + (lambda / 2) * grad_sq + eta);
end
% Plot the result
plot(x, h);
title('Simulated Surface Growth');
xlabel('Position x');
ylabel('Height h(x)');