matlab-add-awgn
Read BEFORE writing any code that adds Additive White Gaussian Noise (AWGN) to signals and converts between SNR, Eb/No, Es/No, and per-subcarrier SNR for communications simulations, using awgn(), convertSNR(), berawgn(). The default MATLAB patterns for AWGN (e.g., 'measured' option, manual SNR formulas) produce subtly incorrect results. This skill specifies the correct calling conventions, required function usage, and critical anti-patterns that must be avoided.
npx skills add matlab/matlab-agentic-toolkit --skill matlab-add-awgn --agent claude-code
Same command for any agent — swap --agent for codex, cursor, copilot.
Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.
# AWGN & SNR Management Add white Gaussian noise to signals and convert between SNR definitions (SNR, Eb/No, Es/No, per-subcarrier SNR) for communications system simulations. ## When to Use - Adding noise to a signal in a link simulation - Converting between Eb/No, Es/No, SNR, or per-subcarrier SNR - Setting up the correct SNR for a coded, oversampled, or OFDM system - Obtaining noise variance to pass to a soft-decision demodulator ## When NOT to Use - Configuring fading channels (delay profile, Doppler, antenna arrays) ## Must-Follow Rules 1. **NEVER pass `'measured'` to `awgn`** — Always pass explicit signal power as the third argument. For unit-power signals use `0`; otherwise compute power with `mean(abs(x).^2)` and convert to dBW: `10*log10(sigPow)`. The `'measured'` option computes instantaneous power internally, which gives incorrect noise levels after fading channels and obscures the power assumption. Even in AWGN-only scenarios, explicit power is required for correctness and clarity. 2. **Use `UnitAveragePower=true` when signal power doesn't matter** — This is the simplest path: signal power = 0 dBW, so `awgn(x, snr, 0)` is exact. If the user needs original constellation s
- When to Use
- When NOT to Use
- Must-Follow Rules
- Critical Anti-Patterns — NEVER Do These
- NEVER use 'measured' with awgn
- NEVER compute SNR conversions manually
- Key Functions
- Gotchas
- Why 'measured' is banned (background)
- awgn default assumes 0 dBW signal power
- ebno↔snrsc conversion is not supported
- Fading channel path gain normalization
- Noise variance is total, not per-component
- berawgn takes Eb/No, not SNR
What does the matlab-add-awgn skill do?
Read BEFORE writing any code that adds Additive White Gaussian Noise (AWGN) to signals and converts between SNR, Eb/No, Es/No, and per-subcarrier SNR for communications simulations, using awgn(), convertSNR(), berawgn(). The default MATLAB patterns for AWGN (e.g., 'measured' option, manual SNR formulas) produce subtly incorrect results. This skill specifies the correct calling conventions, required function usage, and critical anti-patterns that must be avoided.
How do I install it?
Run `npx skills add matlab/matlab-agentic-toolkit --skill matlab-add-awgn --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.
Where does this skill come from?
From matlab/matlab-agentic-toolkit, a repository with 868 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.
Is a popular skill a good skill?
Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.
