Install
openclaw skills install paper-matlab-reproductionUse this skill when the user wants to reproduce an academic paper in MATLAB from a paper file path, URL, DOI, or PDF. It extracts algorithm figures/tables into pseudocode, resolves cited operations through Google Scholar when needed, builds MATLAB simulation code, runs main scripts, compares results with the paper, and iteratively fixes mismatches up to 3 rounds. Trigger for requests like "复现这篇论文", "根据论文生成 MATLAB 仿真", "paper reproduction", "reproduce algorithm figures", or "把论文算法图表转成 MATLAB 代码".
openclaw skills install paper-matlab-reproductionThis skill turns a paper into a traceable MATLAB reproduction package. The goal is not only to write code, but to preserve the evidence chain from paper text, algorithm figures/tables, cited operations, parameter sources, and simulation-result comparisons.
Ask for missing essentials before implementation:
Optional but useful:
Follow this sequence. Keep a brief reproduction_log.md so later changes are explainable.
Ingest and map the paper
Algorithm Fig/Table -> Section -> Variables -> Related Results -> MATLAB file.Generate pseudocode from algorithm figures/tables
Algorithm 1, Fig. 3 flowchart, Table II procedure.Resolve cited operations
Extract parameters with a strict priority order
paper-explicit, caption-or-table, cited-source, or inferred.Design the MATLAB reproduction structure
main.m.main_snr_sweep.m, main_user_density.m, or main_channel_model_rayleigh.m.alg1_resource_allocation.m.Define comparison targets before running
Run and repair
main*.m script.Deliver final package
reproduction_log.md, and a concise final report.Use this default layout unless the repository already has a suitable structure:
paper-title-reproduction/
├── main.m
├── main_<environment_suffix>.m
├── alg1_<short_name>.m
├── alg2_<short_name>.m
├── helpers/
├── data/
├── results/
│ ├── figures/
│ └── metrics/
├── paper_artifacts/
│ ├── pseudocode.md
│ ├── parameter_table.csv
│ ├── citation_operations.md
│ └── target_results.md
└── reproduction_log.md
For each algorithm figure/table, use this template:
## Algorithm [paper label]: [short name]
Source: [figure/table/section/page]
Purpose: [one sentence]
Inputs:
- [name, dimension, meaning, source]
Outputs:
- [name, dimension, meaning]
Parameters:
- [symbol] = [value or unknown], source=[paper-explicit/caption-or-table/cited-source/inferred]
Steps:
1. ...
2. ...
Stopping criteria:
- ...
MATLAB function:
- `algN_<short_name>.m`
Track parameters before coding:
symbol,name,value,unit,source_priority,source_location,notes
N,number of users,20,,paper-explicit,Simulation section p.8,
alpha,path loss exponent,3.5,,inferred,System model typical range,User must be told this was inferred
main*.m readable: configuration, system model, algorithm calls, metrics, plots, exports.cfg struct instead of scattering constants across files.results/metrics/*.mat or .csv and plots to results/figures/.Use this final structure:
# MATLAB Reproduction Report
## Paper
- Title:
- Source:
## Reproduced artifacts
- Algorithm figures/tables:
- Result figures/tables:
- Main scripts:
## Parameter audit
- Explicit parameters:
- Caption/table parameters:
- Cited-source parameters:
- Inferred parameters disclosed to user:
## Similarity
| Paper result | Script | Metric | Similarity | Notes |
|---|---|---:|---:|---|
## Repair rounds
| Round | Issue found | Change made | Similarity after change |
|---:|---|---|---:|
## Residual gaps
- ...
After each execution of this Skill:
diary/YYYY-MM-DD.md.SKILL.md.