Please enable JavaScript to view this site.

Knowledge Base

Returns a matrix containing a rough surface characterized by an RMS amplitude.






out= sroughness(x_span, y_span, sigma_rms, corr_x, corr_y, seed);

Returns a matrix containing a rough surface characterized by an RMS amplitude ‘sigma_rms’ and correlation lengths ‘corr_x’ and ‘corr_y’. The roughness is generated by creating a random matrix of values in K space defined by ‘x_span’ and ‘y_span’. A Gaussian filter is applied to this matrix, then a Fourier transform is used to transform the matrix back to real space. Due to the way the Fourier transform is setup, the roughness will be periodic with period x, y span. This is convenient for some application, particularly when using periodic boundary conditions. The parameter ‘seed’ defined the random seed value used to generate the surface.



This is a simple example of a rough surface created with sroughness:

x_span = 400e-6;

y_span = 400e-6;

sigma_rms = 0.3;

corr_length_x = 40e-6;

corr_length_y = 40e-6;

seed_process = 1;


# calculate the number of points in x and y

Nx = 100;

Ny = 100;


# initialize required variables

x_wafer = linspace(-x_span/2,x_span/2,Nx);


y_wafer = linspace(-y_span/2,y_span/2,Ny);


neff_xy_wafer = sroughness( x_wafer, y_wafer, sigma_rms, corr_length_x, corr_length_y, seed_process );


image(x_wafer/1e-6, y_wafer/1e-6, neff_xy_wafer, "x (um)", "y(um)", "Rough surface");


See Also

Functions, length, substring, findstring, replace, str2num, num2str, splitstring, lower, upper

Copyright Lumerical Inc. | Privacy | Site Map