Documentation sections
Intermodulation Distortion & IP3 Calculator
POSThttps://rftools.io/ api/ py/ v1/ calculate
Slug intermodulation-distortion. Calculate IIP3, OIP3, IM3/IM2 products, and spurious-free dynamic range for RF amplifiers and mixers. Analyze two-tone spur frequencies. Free, instant results.
Inputs
Send every one of these in inputs, in the units shown. Most are required: a call without one is refused (400) and costs nothing; one the calculator can do without takes the default shown. An input outside its range is still computed and flagged in the provenance.
| Name | Unit | Range | Default | Description |
|---|---|---|---|---|
| outputPowernumber | dBm | any | 10 | Fundamental output power per tone in dBm |
| inputPowernumber | dBm | any | 0 | Input drive power per tone in dBm |
| oip3number | dBm | any | 30 | Output third-order intercept point from datasheet |
| oip2number | dBm | any | 50 | Output second-order intercept point. Higher = less IM2 distortion. |
| freq1number | MHz | at least 0.1 | 100 | First test tone frequency for two-tone analysis |
| freq2number | MHz | at least 0.1 | 101 | Second test tone frequency |
| bandLownumber | MHz | at least 0 | 88 | Where the band the products must not reach starts: a receive band, or the channel you listen on |
| bandHighnumber | MHz | at least 0 | 108 | Where the band ends |
Outputs
Returned in values, by key. A value that is unbounded or undefined is null.
| Field | Unit | Description |
|---|---|---|
| iip3 | dBm | Input IP3 (IIP3) |
| im3Power | dBm | IM3 Product Power |
| im3Ratioheadline | dBc | IM3 to Carrier Ratio |
| dynamicRange | dB | Spurious-Free Dynamic Range |
| iip2 | dBm | Input IP2 (IIP2) |
| im2Power | dBm | IM2 Product Power |
| im2Ratio | dBc | IM2 to Carrier Ratio |
| im3Low | MHz | IM3 Low (2f₁−f₂) |
| im3High | MHz | IM3 High (2f₂−f₁) |
| im2Sum | MHz | IM2 Sum (f₁+f₂) |
| im2Diff | MHz | IM2 Diff (|f₁−f₂|) |
| toneSpacing | MHz | Tone Spacing |
| productsInBand | none | Second- and third-order products and harmonics of the two tones that land inside the band, where no filter after the amplifier can remove them |
Calling it
- Calculate: one call, the request and response in full, and its errors.
- Batch: this calculator with others, or a sweep, in one request.
- Solve for a target: the value of one input that brings an output to a target.