1.7 KiB
1.7 KiB
Synthetic Surface
Generate synthetic test surfaces for development, calibration, and algorithm testing. Equivalent to Gwyddion's *_synth.c modules.
Outputs
| Name | Type | Description |
|---|---|---|
| surface | DATA_FIELD | Generated synthetic surface |
Controls
| Name | Type | Default | Description |
|---|---|---|---|
| pattern | dropdown | fbm | Pattern type: fbm, white_noise, lattice, steps, particles, flat |
| xres | INT | 256 | Horizontal resolution in pixels (16–2048) |
| yres | INT | 256 | Vertical resolution in pixels (16–2048) |
| xreal | FLOAT | 1e-6 | Physical width in metres |
| yreal | FLOAT | 1e-6 | Physical height in metres |
| amplitude | FLOAT | 1e-9 | Peak-to-peak amplitude in metres |
| seed | INT | 42 | Random seed for reproducibility (0–999999) |
| hurst_exponent | FLOAT | 0.7 | FBM roughness exponent: 0 = rough, 1 = smooth (fbm only) |
| lattice_spacing | FLOAT | 100e-9 | Lattice period in metres (lattice only) |
| lattice_angle | FLOAT | 90.0 | Angle between lattice vectors in degrees (lattice only) |
| n_steps | INT | 5 | Number of step terraces (steps only) |
| n_particles | INT | 20 | Number of particles (particles only) |
| particle_radius_px | INT | 10 | Particle radius in pixels (particles only) |
Notes
- fbm: Fractional Brownian motion via spectral synthesis. Hurst exponent controls roughness.
- white_noise: Gaussian random noise.
- lattice: Two-axis sinusoidal grid with configurable spacing and angle.
- steps: Terraced step structure with equal step heights.
- particles: Random spherical particles on a flat background.
- flat: Zero surface (useful as a baseline).
- All patterns are normalised to the specified amplitude range.