{
  "schema": "wayricad.pocket-kivi-examples/v1",
  "fixture": "example.kicad_pcb",
  "source_sha256": "8d60e824376418fa4cad65d37c9d8c8dd5da60c5538b9bf0a11976dbb98f1e7e",
  "runtime": {
    "python": "3.11.5",
    "kicad": "10.0.6",
    "numpy": "2.4.2",
    "scipy": "1.17.1",
    "vtk": "9.7.1",
    "matplotlib": "3.11.2"
  },
  "producer_versions": {
    "Quick PI": "4.2.0",
    "Quick SI": "4.2.0",
    "QuickTherm": "4.2.0"
  },
  "source_files": {
    "example.kicad_pcb": "8d60e824376418fa4cad65d37c9d8c8dd5da60c5538b9bf0a11976dbb98f1e7e",
    "si-channel.kicad_pcb": "17dbb52487a54b9b94a0f322cabf23f1c519d3aec8a54367fb6472d77f069995"
  },
  "si_derivation": {
    "parent": "example.kicad_pcb",
    "removed_item_uuid": "39288a2b-64b2-5257-8b9a-4b34fbf53316",
    "retained_geometry_sha256": "b9290dbf169c6d50a135c5b5b45a990e3d2c26032cd3cefa7d9034ccd0c3658f",
    "stackup_unchanged": true
  },
  "producer_modules": {
    "tools/generate_pocket_kivi_examples.py": "0526afa5a198584f0cf1e8f14c827520ea953430a7aaaa56e535fa4de9e04d92",
    "wayricad_runtime/pocket_kivi_export.py": "f79cbf24f7c1f09ea90dc2c96f1c9766ceb3c3ed7db990857fa608a65e37c58d",
    "wayricad_runtime/pocket_report.py": "1c891730933c9140036c8a0c7f20bc877743bd6aa27e85707fe646079594b1d7",
    "quick_pi_plugin/service.py": "db5a5a118b5429feff77fb72fdf284382649055d9f0a51c28389e8dd396313cc",
    "quick_pi_plugin/board_geometry.py": "f696610674653a3416aa54157cb6c5590726da156002178379770af850de6e97",
    "quick_pi_plugin/mesh.py": "1bd771ef77857b6ff9e021ac17f702f8f30eed69ed1c5da8c5b6796f7b0c660b",
    "quick_pi_plugin/solver.py": "14375abcf6206a049fa9a96564148572f22f83cb38dab875ff3c5c4aed740eda",
    "signal_integrity_advisor_plugin/service.py": "a27a14daa3c2f0f122cfee47b9c3e29ef60b54019c21d2c28f1b39459511c76e",
    "signal_integrity_advisor_plugin/quick_si.py": "ce584a4fcac861245518eb17504b43a8201a46c53dd812878a69ee5a80ac76b7",
    "signal_integrity_advisor_plugin/measurement.py": "653340ec32f70d574a7a376b0b31fb0e10971f6e9f0f0840f3fc9cb6b31943f1",
    "signal_integrity_advisor_plugin/eye_model.py": "12b4fac21e58ca98d0a7c2b8764c1f8dd972359ce7401662b56bc550a2ac5da6",
    "signal_integrity_advisor_plugin/board_eye.py": "62221a030a3ea856000296bece0f8fa0eb9f4352a9ff856e6860cfcf7655fc80",
    "signal_integrity_advisor_plugin/rlc_model.py": "56b2e20c1439dfeab5cdd0f1feb1f798829420dbcbdc569e8f9d088af3fec740",
    "signal_integrity_advisor_plugin/emerge_lines.py": "4d28ff31fd4102de2178ec9cde0313e55a79d4307347147c5238a9340439efa0",
    "signal_integrity_advisor_plugin/circuit_scope.py": "637a3c3cdbac7749132c8da9c8fc4148d09fe31234852921ca70c9ee60a5ad26",
    "quick_therm_plugin/service.py": "4925f9b9e6ced183dd47388f92b0bd229fc356d4a8e5beaf44e469fb2459a39d",
    "quick_therm_plugin/thermal_geometry.py": "f473216bc4b7195e519dea3080781fce49e116cc2c81ba92faebd6891ea70699",
    "quick_therm_plugin/thermal_multilayer.py": "d443ada87c370a0f1f4ae450e960d39a8f89dc1f3658b68e958810b9a097d753",
    "quick_therm_plugin/thermal_spatial_transient.py": "fdf96c0449632c7b6b30e0e4f2efb1507e1f8549874ed75561953d570267ed62"
  },
  "producer_source_normalization": "CRLF to LF only",
  "files": {
    "quick-pi.pocket-kivi.json": "ad2896d3ccf1c76e4b7527ee6c12ee8bbc9596e71fe4d5afdf5559c58779a311",
    "quick-si.pocket-kivi.json": "f21a3ab360c48dc8fbc991ff39dcde947c0db3319ba28b5efdc85534de8ecbec",
    "quick-therm.pocket-kivi.json": "5b22e742c44c393bf8693ed1cf9da83af0225cf04714ecf721a41244401f6ef4",
    "quick-therm-transient.pocket-kivi.json": "b152cdf9efaadfd19507ae99569c45652d5479e7c56ec81191fdc4d05f080254",
    "si-channel.kicad_pcb": "17dbb52487a54b9b94a0f322cabf23f1c519d3aec8a54367fb6472d77f069995",
    "example.kicad_pro": "4d8e3d77d218508d649a0103f5028a06aec19b8eece3bfa3f51eeb65051eeca4",
    "si-channel.kicad_pro": "187b74f74cdbcfee43af428d2af7ddf3c73edad7e5f539403a5adc66bb43bdfe"
  },
  "request_inputs": {
    "pi": {
      "action": "solve",
      "net": "/Front outputs/SLOT1",
      "source_terminal": "J1.1",
      "sink_terminal": "U1.1",
      "source_voltage": 3.3,
      "sink_current": 0.25,
      "edge_mm": 1.0,
      "mesh_backend": "vtk",
      "max_cells": 20000
    },
    "si": {
      "mode": "screen",
      "net": "/Front outputs/SLOT1",
      "start": "J1.1",
      "end": "U1.1",
      "reference": "B.Cu",
      "inputs": {
        "rise_ns": 1.0,
        "frequency_mhz": 100.0,
        "source_ohm": 20.0,
        "load_ohm": null,
        "z0_ohm": 50.0,
        "epsilon_eff": 3.0,
        "eye_bitrate_mbps": 100.0,
        "eye_swing_v": 1.0,
        "eye_load_pf": 2.0
      }
    },
    "thermal": {
      "action": "quick_therm",
      "environment": "air",
      "ambient_c": 20.0,
      "references": [
        "U1"
      ],
      "input_mode": "manual",
      "manual_values": {
        "U1": {
          "power_w": 0.05,
          "theta_jb_k_per_w": 4.0
        }
      },
      "thermal_model_kind": "multilayer",
      "board_power_only": true,
      "thermal_network_settings": {
        "dielectric_k_w_mk": 0.3,
        "via_plating_mm": 0.025,
        "grid_cells_long_axis": 24,
        "board_h_w_m2k": 10.0,
        "board_emissivity": 0.0,
        "source_contact_pad_numbers": {
          "U1": "1"
        }
      },
      "probes": [
        {
          "label": "Heater",
          "x_mm": 25.0,
          "y_mm": 5.0,
          "side": "top"
        },
        {
          "label": "Cutout",
          "x_mm": 15.0,
          "y_mm": 11.0,
          "side": "top"
        }
      ]
    },
    "transient_settings": {
      "duration_s": 1.0,
      "timestep_s": 0.25,
      "frame_interval_s": 0.5,
      "initial_c": 20.0,
      "copper_volumetric_capacity_j_m3k": 3450000.0,
      "dielectric_volumetric_capacity_j_m3k": 1700000.0,
      "power_schedules": {
        "U1": [
          [
            0.0,
            1.0
          ],
          [
            0.5,
            1.0
          ],
          [
            1.0,
            0.0
          ]
        ]
      },
      "schedule_interpolation": "step"
    }
  },
  "checks": {
    "native_saved_board_producers": "passed",
    "unchanged_source_bytes": true,
    "viewer_adapters": "not run; pass --viewer-extension with the local extension folder"
  }
}
