Agent skill · Documentation

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.

matlabgithub.com/matlabGitHub ↗
claude-codecodexcopilotNOASSERTION
Install
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.

Facts
Files in the skill folder: 3
SKILL.md size: 10 KB
Bundled scripts: none
Version: 1.1
Declared author: MathWorks
Path: skills-catalog/wireless-communications/matlab-add-awgn/SKILL.md
Open the folder on GitHub →
Where it comes from
Stars: 868
Language: MATLAB

Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.

From the SKILL.md

# 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

What's inside
Steps it walks through
  1. When to Use
  2. When NOT to Use
  3. Must-Follow Rules
  4. Critical Anti-Patterns — NEVER Do These
  5. NEVER use 'measured' with awgn
  6. NEVER compute SNR conversions manually
  7. Key Functions
  8. Gotchas
  9. Why 'measured' is banned (background)
  10. awgn default assumes 0 dBW signal power
  11. ebno↔snrsc conversion is not supported
  12. Fading channel path gain normalization
  13. Noise variance is total, not per-component
  14. berawgn takes Eb/No, not SNR
Ships with 2 files
  • manifest.yaml
  • references/snr-conversion-guide.md
More from matlab-agentic-toolkit
All skills →
About this skill
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.

Keep going