Data plotting & curve fitting
Plot experimental data and fit models with correct uncertainties.
20 project-authored proposals · taxonomy v1.1 · 0 new benchmark runs. Verifiers and partial-credit rules below are designs, not executed results.
- Typical applications
- ROOT · OriginPro · Igor Pro
- Class GUI-need label
HY· Hybrid
Task proposals · 20
Expand to inspect the complete original wording and proposed checks. Original proposal text remains English in both interfaces.
R08.01.01.04-T01 Fit a peak with background in ROOT's FitPanel
Original instruction
Open fixtures/run42.root in a ROOT TBrowser, draw the histogram 'mass', and with the FitPanel fit gaus+pol1 on [80,100] GeV (chi-square, default options). Save the canvas to output/mass_fit.root and write the Gaussian mean and sigma with errors to output/fit.json.
- Platforms
mac· macOSwin· Windowslin· Linux- Applications
- ROOT
- Interfaces
desk· Desktop GUI- GUI need · task setting
G2· GUI-essential- GUI need · ordinary access
CL· CLI-sufficient- Interaction primitives
click· Point & clicktype· Text & formsvis· Visual judgment- Work product
WP07· Simulation result- Conditions
- None declared
- Proposed difficulty
- 2 / 5
Proposed verifier
Grader reads the TF1 attached to the saved histogram: formula gaus+pol1, range [80,100]; mean/sigma within 1% of reference fit and errors within 5%. The ROOT prompt/macros are disabled for the agent (GUI-only session); grader reads the saved .root canvas/function objects.
Proposed partial credit
30% correct model/range; 50% mean and sigma; 20% errors reported.
R08.01.01.04-T02 Fit an exponential decay with error bars in OriginPro
Original instruction
In OriginPro, import fixtures/decay.csv (t, y, y_err), make a scatter plot with Y error bars, fit y = A*exp(-t/tau) + y0 with instrumental weighting using the NLFit dialog, and report A, tau, y0 with standard errors and reduced chi-square. Save output/decay.opju.
- Platforms
win· Windows- Applications
- OriginPro
- Interfaces
desk· Desktop GUI- GUI need · task setting
G2· GUI-essential- GUI need · ordinary access
CL· CLI-sufficient- Interaction primitives
click· Point & clicktype· Text & formsvis· Visual judgment- Work product
WP07· Simulation result- Conditions
licensed· Licensed pro app- Proposed difficulty
- 3 / 5
Proposed verifier
Grader reads the project: plot with error bars bound to y_err; NLFit operation with the right function and instrumental weighting; parameters within 0.5% and errors within 5% of reference. Code Builder, Python console and COM are disabled; grader opens the .opju with its own originpro session and checks the fit operations.
Proposed partial credit
20% plot with error bars; 30% weighting/model setup; 50% parameters and chi-square.
R08.01.01.04-T03 Deconvolve three overlapping Voigt peaks in Igor Pro
Original instruction
In Igor Pro, load fixtures/raman.txt, use the Multipeak Fitting package to fit 3 Voigt peaks on a linear baseline in 1,250-1,700 cm-1, and report each peak's center, FWHM and area in output/peaks.csv. Save output/raman.pxp.
- Platforms
mac· macOSwin· Windows- Applications
- Igor Pro
- Interfaces
desk· Desktop GUI- GUI need · task setting
G2· GUI-essential- GUI need · ordinary access
CL· CLI-sufficient- Interaction primitives
click· Point & clickdrag· Drag & dropvis· Visual judgment- Work product
WP07· Simulation result- Conditions
licensed· Licensed pro app- Proposed difficulty
- 3 / 5
Proposed verifier
Grader compares with the synthetic truth: centers within 1 cm-1, FWHM within 3%, areas within 3%; Multipeak Fit set saved in the experiment. Grader opens the .pxp in Igor; Igor's command line and procedure windows are disabled for the agent, so user procedure code must be empty and the history must contain only dialog-generated commands.
Proposed partial credit
20% baseline/range; 40% centers; 20% FWHM; 20% areas.
R08.01.01.04-T04 Run an unbinned signal-plus-background fit with RooFit
Original instruction
Using RooFit on the unbinned tree fixtures/events.root (variable m in [5.0, 5.6] GeV), fit a Crystal Ball signal plus exponential background with an extended likelihood, report signal and background yields with errors, and compute the signal significance from a profile likelihood ratio. Plot with pulls to output/fit.pdf.
- Platforms
mac· macOSwin· Windowslin· Linux- Applications
- ROOT · RooFit
- Interfaces
term· Terminaldesk· Desktop GUI- GUI need · task setting
HY· Hybrid- GUI need · ordinary access
CL· CLI-sufficient- Interaction primitives
code· Code & commandsvis· Visual judgment- Work product
WP07· Simulation result- Conditions
- None declared
- Proposed difficulty
- 4 / 5
Proposed verifier
Grader reruns the reference fit: yields within 2% and errors within 10%; significance within 0.2 sigma; plot exists with a pull panel.
Proposed partial credit
30% model built correctly; 40% yields; 20% significance; 10% plot.
R08.01.01.04-T05 Global-fit four dose-response curves with a shared Hill slope
Original instruction
In OriginPro, import fixtures/dose_response.xlsx (4 compounds), fit all four with the DoseResp (4-parameter logistic) function as a global fit sharing the Hill slope, and report each EC50 with errors and the shared slope. Save output/dr.opju.
- Platforms
win· Windows- Applications
- OriginPro · Excel
- Interfaces
desk· Desktop GUI- GUI need · task setting
G2· GUI-essential- GUI need · ordinary access
CL· CLI-sufficient- Interaction primitives
click· Point & clicktype· Text & forms- Work product
WP07· Simulation result- Conditions
licensed· Licensed pro appmultiapp· Multi-app- Proposed difficulty
- 4 / 5
Proposed verifier
Grader reads the NLFit operation: global fit mode with only the Hill slope shared; EC50s within 1% and slope within 1% of reference. Code Builder, Python console and COM are disabled; grader opens the .opju with its own originpro session and checks the fit operations.
Proposed partial credit
40% global fit with correct sharing; 40% EC50s; 20% slope.
R08.01.01.04-T06 Fit a line with errors in both variables using ODR
Original instruction
Fit fixtures/calib.csv (x, sx, y, sy) with a straight line using orthogonal distance regression (scipy.odr) and write slope, intercept, their standard errors and the reduced chi-square to output/odr.json.
- Platforms
mac· macOSwin· Windowslin· Linux- Applications
- Python · SciPy
- Interfaces
term· Terminal- GUI need · task setting
CL· CLI-sufficient- GUI need · ordinary access
CL· CLI-sufficient- Interaction primitives
code· Code & commands- Work product
WP07· Simulation result- Conditions
- None declared
- Proposed difficulty
- 2 / 5
Proposed verifier
Grader computes reference ODR: parameters within 0.1% and errors within 2%.
Proposed partial credit
60% parameters; 40% errors and chi-square.
R08.01.01.04-T07 Build a 2x2 publication figure with an inset in Origin
Original instruction
In OriginPro, using the 4 datasets in fixtures/figure_data.opju, build a 2x2 multi-panel graph per input/figure_spec.pdf: shared x-axis label, log-scale y in panels b and d, panel labels a-d, Arial 8 pt, an inset in panel c, and export output/figure.tif at 600 dpi, 180 mm wide.
- Platforms
win· Windows- Applications
- OriginPro
- Interfaces
desk· Desktop GUI- GUI need · task setting
G2· GUI-essential- GUI need · ordinary access
CL· CLI-sufficient- Interaction primitives
click· Point & clickdrag· Drag & droptype· Text & formsvis· Visual judgment- Work product
WP03· Visual layout- Conditions
licensed· Licensed pro app- Proposed difficulty
- 3 / 5
Proposed verifier
Grader inspects the project graph layers (scales, fonts, labels, inset layer) and the TIFF (dpi, width in px = 4252 +/-2); visual layout checked against spec by VLM rubric (stated). Code Builder, Python console and COM are disabled; grader opens the .opju with its own originpro session and checks the fit operations.
Proposed partial credit
40% layer/axis settings; 20% fonts/labels; 20% inset; 20% export spec.
R08.01.01.04-T08 Compute and fit a trigger efficiency curve in ROOT
Original instruction
From fixtures/trigger.root (histograms 'pass' and 'total' vs pT), build a TEfficiency with Clopper-Pearson intervals, fit it with an error-function turn-on (0.5*eff*(1+erf((x-x0)/sigma))), and report plateau, x0 and sigma. Save the canvas and output/eff.json.
- Platforms
mac· macOSwin· Windowslin· Linux- Applications
- ROOT
- Interfaces
term· Terminaldesk· Desktop GUI- GUI need · task setting
HY· Hybrid- GUI need · ordinary access
CL· CLI-sufficient- Interaction primitives
code· Code & commandsvis· Visual judgment- Work product
WP07· Simulation result- Conditions
- None declared
- Proposed difficulty
- 3 / 5
Proposed verifier
Grader reruns: interval method exact; fitted parameters within 2% of reference.
Proposed partial credit
30% efficiency construction; 70% fitted parameters.
R08.01.01.04-T09 Global-fit temperature-series spectra with linked constraints in Igor
Original instruction
In Igor Pro, fit the 12 temperature-dependent absorption spectra in fixtures/temp_series.pxp with Global Fit: a Lorentzian whose center shifts linearly with temperature (shared slope and intercept), with widths constrained to 2-20 nm. Report the shared parameters and per-spectrum widths.
- Platforms
mac· macOSwin· Windows- Applications
- Igor Pro
- Interfaces
desk· Desktop GUI- GUI need · task setting
G2· GUI-essential- GUI need · ordinary access
CL· CLI-sufficient- Interaction primitives
click· Point & clicktype· Text & forms- Work product
WP07· Simulation result- Conditions
licensed· Licensed pro applong· Long-horizon- Proposed difficulty
- 5 / 5
Proposed verifier
Grader opens the experiment: Global Fit setup with linked coefficients as specified and constraints; shared parameters within 1% and widths within 3% of truth. Grader opens the .pxp in Igor; Igor's command line and procedure windows are disabled for the agent, so user procedure code must be empty and the history must contain only dialog-generated commands.
Proposed partial credit
30% linking; 20% constraints; 50% fitted values.
R08.01.01.04-T10 Fit a power law on log axes in LabPlot
Original instruction
In LabPlot, import fixtures/flux_vs_freq.csv, plot flux vs frequency with log-log axes, fit a power law y = a*x^b using LabPlot's fit dialog, and write a, b with errors to output/powerlaw.json. Save output/powerlaw.lml.
- Platforms
mac· macOSwin· Windowslin· Linux- Applications
- LabPlot
- Interfaces
desk· Desktop GUI- GUI need · task setting
G2· GUI-essential- GUI need · ordinary access
G2· GUI-essential- Interaction primitives
click· Point & clicktype· Text & forms- Work product
WP07· Simulation result- Conditions
- None declared
- Proposed difficulty
- 2 / 5
Proposed verifier
Grader parses the .lml: log axes, fit curve with power-law model; parameters within 1% of reference. The agent has no terminal and LabPlot's script editor is disabled, so the fit must be run in LabPlot's fit dialog; the file audit log must show the .lml saved by LabPlot.
Proposed partial credit
30% plot setup; 30% fit model; 40% parameters.
R08.01.01.04-T11 Integrate chromatogram peaks after baseline subtraction in Origin
Original instruction
In OriginPro, open fixtures/hplc_run.csv, use Peak Analyzer to subtract a user-defined baseline (anchor points in valleys), find the 6 peaks and integrate their areas. Export the peak table to output/peaks.csv.
- Platforms
win· Windows- Applications
- OriginPro
- Interfaces
desk· Desktop GUI- GUI need · task setting
G2· GUI-essential- GUI need · ordinary access
CL· CLI-sufficient- Interaction primitives
click· Point & clickdrag· Drag & dropvis· Visual judgment- Work product
WP07· Simulation result- Conditions
licensed· Licensed pro app- Proposed difficulty
- 3 / 5
Proposed verifier
Grader compares with the synthetic chromatogram truth: 6 peaks found, retention times within 0.01 min, areas within 2%. Code Builder, Python console and COM are disabled; grader opens the .opju with its own originpro session and checks the fit operations.
Proposed partial credit
30% baseline quality; 30% peak detection; 40% areas.
R08.01.01.04-T12 Choose between one- and two-mode damped oscillation models
Original instruction
Fit fixtures/ringdown.csv with single- and double-mode damped sinusoid models using least squares, select the better model by AIC, and estimate parameter uncertainties by 1,000-sample bootstrap. Write the chosen model, parameters and 68% intervals to output/ringdown.json.
- Platforms
mac· macOSwin· Windowslin· Linux- Applications
- Python · SciPy
- Interfaces
term· Terminal- GUI need · task setting
CL· CLI-sufficient- GUI need · ordinary access
CL· CLI-sufficient- Interaction primitives
code· Code & commands- Work product
WP07· Simulation result- Conditions
- None declared
- Proposed difficulty
- 4 / 5
Proposed verifier
Grader: model choice matches the generating model; frequencies within 0.5% and damping times within 3%; bootstrap intervals contain truth and widths within 30% of reference.
Proposed partial credit
30% model selection; 40% parameters; 30% intervals.
R08.01.01.04-T13 Fit a 2D Gaussian to a detector hit map in ROOT
Original instruction
Open fixtures/beamspot.root in a TBrowser, draw the TH2 'hits', fit a 2D Gaussian with correlation (custom TF2 via the FitPanel) and report centers, widths and correlation coefficient in output/beamspot.json. Save the fitted histogram.
- Platforms
mac· macOSwin· Windowslin· Linux- Applications
- ROOT
- Interfaces
desk· Desktop GUI- GUI need · task setting
G2· GUI-essential- GUI need · ordinary access
CL· CLI-sufficient- Interaction primitives
click· Point & clicktype· Text & formsvis· Visual judgment- Work product
WP07· Simulation result- Conditions
- None declared
- Proposed difficulty
- 3 / 5
Proposed verifier
Grader reads the saved TF2: parameters within 1% (correlation within 0.02) of reference. The ROOT prompt/macros are disabled for the agent (GUI-only session); grader reads the saved .root canvas/function objects.
Proposed partial credit
30% model with correlation; 70% parameters.
R08.01.01.04-T14 Extract a line profile from an image and fit an edge in Igor Pro
Original instruction
In Igor Pro, load fixtures/knife_edge.tif as an image plot, draw a line profile across the edge at the marked row, and fit an error-function edge to get the 10-90% width in micrometers (pixel size 0.65 um). Save output/edge.pxp and the result to output/edge.json.
- Platforms
mac· macOSwin· Windows- Applications
- Igor Pro
- Interfaces
desk· Desktop GUI- GUI need · task setting
G2· GUI-essential- GUI need · ordinary access
G2· GUI-essential- Interaction primitives
path· Continuous pathclick· Point & clickvis· Visual judgment- Work product
WP07· Simulation result- Conditions
licensed· Licensed pro app- Proposed difficulty
- 3 / 5
Proposed verifier
Grader: profile line within 2 px of the marked row and perpendicular within 3 deg; fitted 10-90% width within 3% of truth. Grader opens the .pxp in Igor; Igor's command line and procedure windows are disabled for the agent, so user procedure code must be empty and the history must contain only dialog-generated commands.
Proposed partial credit
40% profile placement; 60% width.
R08.01.01.04-T15 Repeat the decay fit with lmfit (control pair of T02)
Original instruction
Control pair of T02: fit fixtures/decay.csv with lmfit using the same model y = A*exp(-t/tau) + y0 and 1/y_err^2 weights, and write parameters, standard errors and reduced chi-square to output/decay_cli.json.
- Platforms
mac· macOSwin· Windowslin· Linux- Applications
- Python · lmfit
- Interfaces
term· Terminal- GUI need · task setting
CL· CLI-sufficient- GUI need · ordinary access
CL· CLI-sufficient- Interaction primitives
code· Code & commands- Work product
WP07· Simulation result- Conditions
- None declared
- Proposed difficulty
- 3 / 5
Proposed verifier
Control pair of T02: parameters within 0.5% and errors within 5% of reference.
Proposed partial credit
60% parameters; 40% errors and chi-square.
R08.01.01.04-T16 Batch-process twenty spectra with an Origin analysis template
Original instruction
In OriginPro, build an analysis template from one file of fixtures/spectra/ (baseline subtraction + Gaussian fit of the main peak), then use Batch Processing to apply it to all 20 files and produce a summary sheet with center, FWHM and area per file. Save output/batch.opju.
- Platforms
win· Windows- Applications
- OriginPro
- Interfaces
desk· Desktop GUI- GUI need · task setting
HY· Hybrid- GUI need · ordinary access
CL· CLI-sufficient- Interaction primitives
click· Point & clicktype· Text & forms- Work product
WP02· Records/table- Conditions
licensed· Licensed pro app- Proposed difficulty
- 4 / 5
Proposed verifier
Grader reads the summary sheet: 20 rows; centers within 0.2%, FWHM within 2%, areas within 2% of reference per file. Code Builder, Python console and COM are disabled; grader opens the .opju with its own originpro session and checks the fit operations.
Proposed partial credit
25% template built; 25% batch run complete; 50% summary values.
R08.01.01.04-T17 Fit signal across categories simultaneously and produce pull plots
Original instruction
With RooFit, fit fixtures/categories.root containing 3 categories with RooSimultaneous: shared signal mean and width, category-specific yields and backgrounds. Report all parameters, and make output/pulls.pdf with per-category fits and pulls; run 200 toys to check bias of the signal yield.
- Platforms
mac· macOSwin· Windowslin· Linux- Applications
- ROOT · RooFit
- Interfaces
term· Terminaldesk· Desktop GUI- GUI need · task setting
HY· Hybrid- GUI need · ordinary access
CL· CLI-sufficient- Interaction primitives
code· Code & commandsvis· Visual judgment- Work product
WP07· Simulation result- Conditions
long· Long-horizon- Proposed difficulty
- 5 / 5
Proposed verifier
Grader reruns the reference: shared parameters within 1%, yields within 2%; toy pull mean within 0.1 and width within 0.1 of reference.
Proposed partial credit
30% model; 40% fit results; 30% toy study.
R08.01.01.04-T18 Define a custom fit function in Origin's Function Builder
Original instruction
In OriginPro, use the Fitting Function Builder to create 'ArrheniusOffset' (k = A*exp(-Ea/(R*T)) + c, R fixed) with parameter initial guesses, then fit fixtures/rates.csv with it and report Ea (kJ/mol) and A with errors. Save output/arrhenius.opju and the .fdf.
- Platforms
win· Windows- Applications
- OriginPro
- Interfaces
desk· Desktop GUI- GUI need · task setting
G2· GUI-essential- GUI need · ordinary access
CL· CLI-sufficient- Interaction primitives
click· Point & clicktype· Text & forms- Work product
WP07· Simulation result- Conditions
licensed· Licensed pro app- Proposed difficulty
- 4 / 5
Proposed verifier
Grader: .fdf defines the function with R fixed; fit uses it; Ea within 0.5% and A within 2% of reference. Code Builder, Python console and COM are disabled; grader opens the .opju with its own originpro session and checks the fit operations.
Proposed partial credit
35% function definition; 15% initial guesses; 50% fitted parameters.
R08.01.01.04-T19 Digitize data from a scanned plot and refit it
Original instruction
Use the OriginPro Digitizer to extract the 25 data points of curve B from the scanned figure input/old_paper_fig3.png (set axes from tick labels, log y), then fit the reported model y = a*x/(b+x) and compare with the paper's values in output/digitized.json.
- Platforms
win· Windows- Applications
- OriginPro
- Interfaces
desk· Desktop GUI- GUI need · task setting
G2· GUI-essential- GUI need · ordinary access
G2· GUI-essential- Interaction primitives
click· Point & clickgeom· Precise geometryvis· Visual judgment- Work product
WP02· Records/table- Conditions
licensed· Licensed pro app- Proposed difficulty
- 5 / 5
Proposed verifier
Grader compares digitized points with the true data used to render the image: 25 points within 1% of axis span; fitted a and b within 3%. Code Builder, Python console and COM are disabled; grader opens the .opju with its own originpro session and checks the fit operations.
Proposed partial credit
20% axis calibration; 50% points accuracy; 30% fit.
R08.01.01.04-T20 Report a non-identifiable fit instead of quoting parameters
Original instruction
Fit fixtures/two_exp.csv with the requested model y = A1*exp(-t/t1) + A2*exp(-t/t2) in any tool. If parameters are not identifiable from these data (check correlations/uncertainties), say so in output/fit_report.md with the evidence and propose what data would resolve it; do not report point values as reliable.
- Platforms
mac· macOSwin· Windowslin· Linux- Applications
- OriginPro · Python
- Interfaces
desk· Desktop GUIterm· Terminal- GUI need · task setting
HY· Hybrid- GUI need · ordinary access
CL· CLI-sufficient- Interaction primitives
code· Code & commandsvis· Visual judgment- Work product
WP12· Answer/decision- Conditions
clarify· Ask when unclear- Proposed difficulty
- 3 / 5
Proposed verifier
Data are generated so t1 and t2 are degenerate. Grader: report states non-identifiability, cites a correlation >0.95 or unbounded errors (numeric check), and proposes a longer time range or higher SNR (keyword rubric).
Proposed partial credit
50% non-identifiability stated with numeric evidence; 30% no false confident values; 20% sensible proposal.
Mapped research references
No benchmark reference is assigned to this class in the current mapping.