Skip to content

RF Touchstone / frequency / Frequency

Class: Frequency ​

Defined in: src/frequency.ts:74

Represents frequency data and provides utility methods for unit conversion and wavelength calculation.

Remarks ​

The Frequency class is designed to handle frequency points commonly used in RF, microwave, and high-speed digital engineering. It maintains an internal unit and a set of frequency points, allowing for seamless conversion between different frequency and wavelength units.

Key Features: ​
  • Unit Awareness: Keeps track of whether frequencies are defined in Hz, MHz, GHz, etc.
  • Automatic Conversion: Automatically scales frequency points when the unit property is changed.
  • Wavelength Utilities: Provides getters and setters for wavelength ( λ=c/f ) in various metric units.

Example ​

Basic Usage ​

typescript
import { Frequency } from 'rf-touchstone';

const freq = new Frequency();
freq.unit = 'GHz';
freq.f_scaled = [1.0, 2.0, 5.0];

console.log(freq.f_Hz); // [1e9, 2e9, 5e9]
console.log(freq.wavelength_mm); // [299.79, 149.90, 59.96]

Constructors ​

Constructor ​

new Frequency(): Frequency

Returns ​

Frequency

Accessors ​

unit ​

Get Signature ​

get unit(): "Hz" | "kHz" | "MHz" | "GHz"

Defined in: src/frequency.ts:140

Gets the current frequency unit.

Returns ​

"Hz" | "kHz" | "MHz" | "GHz"

Set Signature ​

set unit(newUnit): void

Defined in: src/frequency.ts:88

Sets the frequency unit. If frequency points already exist, they will be automatically rescaled to the new unit.

Throws ​

Error if the provided unit is invalid.

Parameters ​
newUnit ​

The target frequency unit (Hz, kHz, MHz, or GHz).

"Hz" | "kHz" | "MHz" | "GHz"

Returns ​

void


f_scaled ​

Get Signature ​

get f_scaled(): number[]

Defined in: src/frequency.ts:183

Gets the array of frequency points in the current unit.

Returns ​

number[]

Set Signature ​

set f_scaled(value): void

Defined in: src/frequency.ts:157

Sets the array of frequency points in the current frequency unit.

Throws ​

Error if the input is not a non-negative number array.

Parameters ​
value ​

number[]

Array of numerical frequency points.

Returns ​

void


f_Hz ​

Get Signature ​

get f_Hz(): number[]

Defined in: src/frequency.ts:266

Gets the frequency points in Hertz (Hz).

Returns ​

number[]

Set Signature ​

set f_Hz(values): void

Defined in: src/frequency.ts:273

Sets the frequency points in Hertz (Hz).

Parameters ​
values ​

number[]

Returns ​

void


f_kHz ​

Get Signature ​

get f_kHz(): number[]

Defined in: src/frequency.ts:280

Gets the frequency points in Kilohertz (kHz).

Returns ​

number[]

Set Signature ​

set f_kHz(values): void

Defined in: src/frequency.ts:287

Sets the frequency points in Kilohertz (kHz).

Parameters ​
values ​

number[]

Returns ​

void


f_MHz ​

Get Signature ​

get f_MHz(): number[]

Defined in: src/frequency.ts:294

Gets the frequency points in Megahertz (MHz).

Returns ​

number[]

Set Signature ​

set f_MHz(values): void

Defined in: src/frequency.ts:301

Sets the frequency points in Megahertz (MHz).

Parameters ​
values ​

number[]

Returns ​

void


f_GHz ​

Get Signature ​

get f_GHz(): number[]

Defined in: src/frequency.ts:308

Gets the frequency points in Gigahertz (GHz).

Returns ​

number[]

Set Signature ​

set f_GHz(values): void

Defined in: src/frequency.ts:315

Sets the frequency points in Gigahertz (GHz).

Parameters ​
values ​

number[]

Returns ​

void


f_THz ​

Get Signature ​

get f_THz(): number[]

Defined in: src/frequency.ts:326

Gets the frequency points in Terahertz (THz).

Remarks ​

THz is available for programmatic unit conversion but is NOT a valid file format unit. Use this getter to convert existing frequency data to THz for calculations or display.

Returns ​

number[]

Set Signature ​

set f_THz(values): void

Defined in: src/frequency.ts:338

Sets the frequency points in Terahertz (THz).

Remarks ​

THz is available for programmatic unit conversion but is NOT a valid file format unit. This setter converts THz values to the current internal unit (set via unit property). Do not attempt to set unit = 'THz' as it will throw an error.

Parameters ​
values ​

number[]

Returns ​

void


wavelength_m ​

Get Signature ​

get wavelength_m(): number[]

Defined in: src/frequency.ts:438

Gets the wavelength in meters (m).

Returns ​

number[]

Set Signature ​

set wavelength_m(values): void

Defined in: src/frequency.ts:452

Sets the wavelength in meters (m).

Remarks ​

This is a bidirectional conversion: setting wavelength automatically calculates and updates the underlying frequency points using the relationship f = c/λ, where c is the speed of light. The resulting frequencies are stored in the current unit specified by the unit property.

Throws ​

Error if any wavelength value is zero (division by zero).

Parameters ​
values ​

number[]

Returns ​

void


wavelength_cm ​

Get Signature ​

get wavelength_cm(): number[]

Defined in: src/frequency.ts:459

Gets the wavelength in centimeters (cm).

Returns ​

number[]

Set Signature ​

set wavelength_cm(values): void

Defined in: src/frequency.ts:469

Sets the wavelength in centimeters (cm).

Remarks ​

Bidirectional conversion: Updates frequency points via f = c/λ.

Parameters ​
values ​

number[]

Returns ​

void


wavelength_mm ​

Get Signature ​

get wavelength_mm(): number[]

Defined in: src/frequency.ts:476

Gets the wavelength in millimeters (mm).

Returns ​

number[]

Set Signature ​

set wavelength_mm(values): void

Defined in: src/frequency.ts:486

Sets the wavelength in millimeters (mm).

Remarks ​

Bidirectional conversion: Updates frequency points via f = c/λ.

Parameters ​
values ​

number[]

Returns ​

void


wavelength_um ​

Get Signature ​

get wavelength_um(): number[]

Defined in: src/frequency.ts:493

Gets the wavelength in micrometers (μm).

Returns ​

number[]

Set Signature ​

set wavelength_um(values): void

Defined in: src/frequency.ts:503

Sets the wavelength in micrometers (μm).

Remarks ​

Bidirectional conversion: Updates frequency points via f = c/λ.

Parameters ​
values ​

number[]

Returns ​

void


wavelength_nm ​

Get Signature ​

get wavelength_nm(): number[]

Defined in: src/frequency.ts:510

Gets the wavelength in nanometers (nm).

Returns ​

number[]

Set Signature ​

set wavelength_nm(values): void

Defined in: src/frequency.ts:520

Sets the wavelength in nanometers (nm).

Remarks ​

Bidirectional conversion: Updates frequency points via f = c/λ.

Parameters ​
values ​

number[]

Returns ​

void