{
  "id": "science_size_polydispersity",
  "title": "粒径分布与散射振荡",
  "domain": "general",
  "type": "demo",
  "license": "MIT",
  "scope": "Original analytic teaching record. Source references support the declared method/derivation only, never this invented parameter set or measurements.",
  "data_status": "synthetic_demo",
  "not_experimental_data": true,
  "source_files": [
    "data.csv",
    "model.json"
  ],
  "test_conditions": "No acquired cell or material. Independently declared analytic parameters, assumptions and units in scientific_basis.",
  "variables_and_units": {
    "1": [
      "Scattering vector (nm$^{-1}$)",
      "Normalized intensity + floor"
    ]
  },
  "creator": "VoltPeer",
  "generator_version": "1.0.0",
  "reproduce": "python render_existing.py --output result-01",
  "scientific_basis": {
    "schema_version": 1,
    "model_class": "analytic_model",
    "data_origin": "original_synthetic",
    "relationship": "A declared number-size distribution changes the volume-squared weighted scattering.",
    "equations": [
      "I(q)=sum[p(R) R^6 P(q,R)]/sum[p(R)R^6]; plotted response=I+1e-8"
    ],
    "parameters": {
      "mean_radius_nm": 15,
      "sd_radius_nm": 3,
      "integration_points": 101,
      "declared_dimensionless_display_floor": 1e-08
    },
    "assumptions": [
      "Independently declared parameters; no experimental or material fit.",
      "Truncated Gaussian number distribution, dilute spheres; inversion is not unique. The declared log-display floor is not physical background."
    ],
    "limitations": [
      "Truncated Gaussian number distribution, dilute spheres; inversion is not unique. The declared log-display floor is not physical background.",
      "A numerical/model QA pass does not validate author data or a physical mechanism."
    ],
    "constraints": [
      "Finite numerical values and explicit physical units.",
      "Continuous plotted curves are solid without markers; data axes retain four borders.",
      "All plotted responses are nonnegative."
    ],
    "references": [
      {
        "title": "NIST: Sphere Model",
        "doi": "",
        "url": "https://www.ncnr.nist.gov/resources/sansmodels/Sphere.html",
        "figure_panel": "Sphere form factor and independently declared contrast/size",
        "supports": "A declared number-size distribution changes the volume-squared weighted scattering.",
        "checked_at": "2026-10-03",
        "scope": "Method/equation/caveat reference only. Original analytic teaching inputs; no copied paper points, pixels or experimental inference."
      }
    ],
    "validation": {
      "finite": true,
      "nonnegative": true,
      "unit_interval": false
    },
    "validation_scope": "Source method/principle and explicitly derived restricted teaching specialization checked; equation, units and numerical constraints only. No copied paper measurements, material parameters, experimental fit or mechanism certification."
  },
  "review": {
    "science": "Equation/units/numerical constraints and source scope checked. No author-data validation.",
    "display": "Actual solid/unmarked curve artists, four-frame spines, legend/title and text bounds checked."
  },
  "actual_artist_checks": [
    {
      "panel_index": 0,
      "spines": {
        "left": true,
        "right": true,
        "top": true,
        "bottom": true
      },
      "continuous_curves": [
        {
          "label": "Monodisperse R=15 nm",
          "linestyle": "-",
          "marker": "None",
          "points": 241
        },
        {
          "label": "Number-polydisperse",
          "linestyle": "-",
          "marker": "None",
          "points": 241
        }
      ]
    }
  ],
  "data_frame_checks": [
    {
      "panel_index": 0,
      "spines": {
        "left": true,
        "right": true,
        "top": true,
        "bottom": true
      },
      "continuous_curves": [
        {
          "label": "Monodisperse R=15 nm",
          "linestyle": "-",
          "marker": "None",
          "points": 241
        },
        {
          "label": "Number-polydisperse",
          "linestyle": "-",
          "marker": "None",
          "points": 241
        }
      ]
    }
  ],
  "continuous_curve_style_checks": [
    {
      "panel_index": 0,
      "label": "Monodisperse R=15 nm",
      "points": 241,
      "line_style": "-",
      "marker": "None",
      "colour": "#287d8e"
    },
    {
      "panel_index": 0,
      "label": "Number-polydisperse",
      "points": 241,
      "line_style": "-",
      "marker": "None",
      "colour": "#ba5574"
    }
  ],
  "curve_style_check": "Actual Line2D artists: all continuous curves solid and unmarked.",
  "data_frame_check": "Actual data axes: all four spines visible."
}
