{
  "id": "science_migration_field_flux",
  "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": [
      "Electric field (V m$^{-1}$)",
      "Migrative flux (µmol m$^{-2}$ s$^{-1}$)"
    ]
  },
  "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": "Opposite ionic valences give opposite migration directions.",
    "equations": [
      "Jmig=z*D*F*c*E/(RT)"
    ],
    "parameters": {
      "D_m2_s": 1e-10,
      "c_mol_m3": 100,
      "T_K": 298.15
    },
    "assumptions": [
      "Independently declared parameters; no experimental or material fit.",
      "Dilute mobility relation; concentration held fixed, no electroneutral transport closure."
    ],
    "limitations": [
      "Dilute mobility relation; concentration held fixed, no electroneutral transport closure.",
      "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."
    ],
    "references": [
      {
        "title": "COMSOL: The Nernst-Planck Equations",
        "doi": "",
        "url": "https://doc.comsol.com/6.4/doc/com.comsol.help.edecm/edecm_ug_electrochem.06.119.html",
        "figure_panel": "Diffusive, migrative and advective molar flux; SI units",
        "supports": "Opposite ionic valences give opposite migration directions.",
        "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": false,
      "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": "Monovalent cation",
          "linestyle": "-",
          "marker": "None",
          "points": 241
        },
        {
          "label": "Monovalent anion",
          "linestyle": "-",
          "marker": "None",
          "points": 241
        }
      ]
    }
  ],
  "data_frame_checks": [
    {
      "panel_index": 0,
      "spines": {
        "left": true,
        "right": true,
        "top": true,
        "bottom": true
      },
      "continuous_curves": [
        {
          "label": "Monovalent cation",
          "linestyle": "-",
          "marker": "None",
          "points": 241
        },
        {
          "label": "Monovalent anion",
          "linestyle": "-",
          "marker": "None",
          "points": 241
        }
      ]
    }
  ],
  "continuous_curve_style_checks": [
    {
      "panel_index": 0,
      "label": "Monovalent cation",
      "points": 241,
      "line_style": "-",
      "marker": "None",
      "colour": "#287d8e"
    },
    {
      "panel_index": 0,
      "label": "Monovalent anion",
      "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."
}
