## Electromagnetic Wave MATLAB Library

### Random Rough Surface Generation

Reference: Chapter 4 of Scattering of Electromagnetic Waves: Numerical Simulations

#### Programs: [ Gaussian, Ocean, Fractal ]

• rsgeng.m generates one-dimensional Gaussian surface with Gaussian spectrum.

[f,df,x]=rsgeng(N,rL,h,lc,seed)

• N: number of sampling points on surface
• rL: rough surface length
• h: rms height
• lc: correlation length
• seed: seed for random number generator
• f: rough surface height at sample points
• df: rough surface slope (df/dx) at sample points
• x: location of sampling points on the surface

Example: N=256, rL=25.6, h=0.2, lc=0.5, seed=123456

§        rsgeno.m generates one-dimensional Gaussian surface with bandlimited ocean spectrum.

[f,df,x]=rsgeno(N,rL,kl,ku,us,seed)

• N: number of sampling points on surface
• rL: rough surface length (m)
• kl: lower wavenumber cutoff (1/m)
• ku: upper wavenumber cutoff (1/m)
• us: wind friction velocity (m/s)
• seed: seed for random number generator
• f: rough surface height at sample points (m)
• df: rough surface slope (df/dx) at sample points
• x: location of sampling points on the surface (m)

Example: N=256, rL=0.4045, kl=100, ku=4000, us=0.4372, seed=123456

§        rsgenf.m generates one-dimensional bandlimited fractal surface based on the Weierstrass-Mandelbrot function.

[f,df,x]=rsgenf(N,rL,h,kl,ku,Nf,sdim,seed)

• N: number of sampling points on surface
• rL: rough surface length (m)
• h: rms height (m)
• kl: lower wavenumber cutoff (1/m)
• ku: upper wavenumber cutoff (1/m)
• Nf: number of tones
• sdim: fractal dimension (1 <= sdim <= 2)
• seed: seed for random number generator
• f: rough surface height at sample points (m)
• df: rough surface slope (df/dx) at sample points
• x: location of sampling points on the surface (m)

Example: N=256, rL=0.4045, h=8.12e-4, kl=100, ku=4000, Nf=100, sdim=1.5, seed=123456