Engee documentation

mixerIMT

Creates an IMT mixer.

Library

EngeeRF

Description

Use an IMT mixer to perform the frequency conversion defined in the intermodulation table (see [1], [2]) for a single-tone carrier signal mixed with a reference oscillator (LO) signal. The IMT object of the mixer takes into account non-linear gain, device noise and phases, as well as parasitic components. For a single-tone carrier signal , non - linearly modulated by a reference oscillator signal with a frequency Intermodulation components at the mixer output occur at frequencies:

where

  • — the carrier frequency of the input RF signal;

  • — frequency of the reference oscillator;

  • and — non-negative integers (from 0 up to the order of nonlinearity);

For a step-down converter, the desired output tone is , and for the boost converter — . All other combinations and They are parasitic intermodulation components.

Syntax

Function call

  • imt = mixerIMT() — creates an IMT mixer object, the properties of which are set by default.

  • imt = mixerIMT(Name=Value) — creates an IMT mixer object with properties specified by one or more arguments of the type Name=Value. Unspecified properties retain their default values.

Arguments

Name-value input arguments

# Name — the name of the IMT mixer

+ "MixerIMT" (by default) | line

Details

The IMT name of the mixer. All names must be valid variable names.

Типы данных

String

# ConverterType — conversion type

+ "Up" (by default) | "Down"

Details

The type of conversion specified by one of the following values:

  • "Up";

  • "Down".

Типы данных

String

# ReferenceInputPower — reference input power, dBm

+ −15 (by default) | scalar

Details

Reference input power in dBm, set as a scalar.

Типы данных

Float64

# NominalOutputPower — rated output power, dBm

+ −5 (by default) | scalar

Details

Rated output power in dBm, set as a scalar.

Типы данных

Float64

# NF is the noise factor, dBm

+ 0 (by default) | scalar

Details

The noise factor in dBm, set as a scalar.

Типы данных

Float64

# LO is the frequency of the reference oscillator, Hz

+ 1e9 (by default) | a real positive scalar

Details

The frequency of the reference oscillator in Hz, set as a real finite positive scalar.

# Zin — input resistance, ohms

+ 50 (by default) | positive scalar

Details

Input resistance in ohms, set as a positive scalar.

Типы данных

Float64

# Zout — output resistance, ohms

+ 50 (by default) | positive scalar

Details

Output resistance in ohms, set as a positive scalar.

Типы данных

Float64

# IMT — output resistance, ohms

+ [99.0 99.0 99.0; 99.0 0.0 99.0; 99.0 99.0 99.0] (by default) | real square matrix

Details

Inharmonic spectral components of IMT for plotting, given as a real square matrix.

# UseDataFile — option to use S2D file

+ false (by default) | true

Details

The option to use the S2D file, set as true or false.

# FileName is the name of the S2D file

+ "" (by default) | line

Details

The name of the S2D file.

Типы данных

String

# NumPorts — number of ports

+ 2 (by default) | scalar

Details

The number of ports specified as an integer scalar.

This argument is read-only.
Типы данных

Int64

# Terminals — terminal names

+ ("p1+", "p2+", "p1−", "p2−") (by default) | tuple of strings

Details

Terminal names specified as a tuple of strings.

This argument is read-only.

Output arguments

# imt — mixer’s IMT object

+ object

Details

The mixer’s IMT object.

Examples

Creating an IMT mixer with default properties

Details

Let’s create an IMT mixer and display its properties.

using EngeeRF

imt=mixerIMT()

println("Name: ", imt.Name)
println("ConverterType: ", imt.ConverterType)
println("ReferenceInputPower: ", imt.ReferenceInputPower)
println("NominalOutputPower: ", imt.NominalOutputPower)
println("NF: ", imt.NF)
println("LO: ", imt.LO)
println("Zin: ", imt.Zin)
println("Zout: ", imt.Zout)
println("IMT: ", imt.IMT)
println("UseDataFile: ", imt.UseDataFile)
println("FileName: ", imt.FileName)
println("NumPorts: ", imt.NumPorts)
println("Terminals: ", imt.Terminals)
Name: MixerIMT
ConverterType: Up
ReferenceInputPower: -15.0
NominalOutputPower: -5.0
NF: 0.0
LO: 1.0e8
Zin: 50.0
Zout: 50.0
IMT: [99.0 99.0 99.0; 99.0 0.0 99.0; 99.0 99.0 99.0]
UseDataFile: false
FileName:
NumPorts: 2
Terminals: ("p1+", "p2+", "p1-", "p2-")

Literature

  1. Faria, Daniel., Lawrence Dunleavy, and Terje Svensen. The Use of Intermodulation Tables for Mixer Simulations. Microwave Journal, April 2002. https://www.microwavejournal.com/articles/3430-the-use-of-intermodulation-tables-for-mixer-simulations

  2. RF Mixing / Multiplication: Frequency Mixers. Electronic Notes. https://www.electronics-notes.com/articles/radio/rf-mixer/rf-mixing-basics.php