tidy3d.rf.HuraySurfaceRoughness#

class HuraySurfaceRoughness[source]#

Bases: AbstractSurfaceRoughness

Huray surface roughness model.

Parameters:
  • relative_area (PositiveFloat = 1) – Relative area of the matte base compared to a flat surface

  • coeffs (tuple[tuple[PositiveFloat, PositiveFloat], ...]) – [units = (None, um)]. List of (\(f_i, r_i\)) values for model, where \(f_i\) is the ratio of total sphere surface area to the flat surface area, and \(r_i\) the radius of the sphere.

Note

The power loss compared to smooth surface is described by:

\[\frac{A_{matte}}{A_{flat}} + \frac{3}{2}\sum_i f_i/[1+\frac{\delta}{r_i}+\frac{\delta^2}{2r_i^2}]\]

where \(\delta\) is skin depth, \(r_i\) the radius of sphere, \(\frac{A_{matte}}{A_{flat}}\) the relative area of the matte compared to flat surface, and \(f_i=N_i4\pi r_i^2/A_{flat}\) the ratio of total sphere surface area (number of spheres \(N_i\) times the individual sphere surface area) to the flat surface area.

Note

This model is based on:

  1. Eric Bracken, “A Causal Huray Model for Surface Roughness”, DesignCon, 2012.

Attributes

Methods

from_cannonball_huray(radius)

Construct a Cannonball-Huray model.

roughness_correction_factor(frequency, ...)

Complex-valued roughness correction factor applied to surface impedance.

relative_area#
coeffs#
classmethod from_cannonball_huray(radius)[source]#

Construct a Cannonball-Huray model.

Note

The power loss compared to smooth surface is described by:

\[1 + \frac{7\pi}{3} \frac{1}{1+\frac{\delta}{r}+\frac{\delta^2}{2r^2}}\]
Parameters:

radius (float) – Radius of the sphere.

Returns:

The Huray surface roughness model.

Return type:

HuraySurfaceRoughness

roughness_correction_factor(frequency, skin_depths)[source]#

Complex-valued roughness correction factor applied to surface impedance.

Notes

The roughness correction factor should be causal. It is multiplied to the surface impedance of the lossy metal to account for the effects of surface roughness.

Parameters:
  • frequency (ArrayFloat1D) – Frequency to evaluate roughness correction factor at (Hz).

  • skin_depths (ArrayFloat1D) – Skin depths of the lossy metal that is frequency-dependent.

Returns:

The causal roughness correction factor evaluated at frequency.

Return type:

ArrayComplex1D