pedestal-predictor-onnx / signal_map.json
SCS-Lab's picture
Upload signal_map.json with huggingface_hub
46fa079 verified
{
"_comment": "Definitive signal-to-MDSplus mapping for edensfit89 history features.",
"_source_of_truth": "docs/history_feature_order.txt + per-bundle model_config.json input_contract",
"_created": "2026-04-04",
"_notes": [
"Each entry: model_name -> {pointname, tree, method, notes}",
"method: ptdata = ptdata('POINTNAME', shot), tree = openTree(tree,shot) then get(node)",
"Signals not in the export plan table are inferred from DIII-D conventions (UPPERCASE = pointname).",
"ADVISOR VALIDATION NEEDED for: edensfit89, pedestal (edensfit100), prad_tot/divl/divu, rmaxis, zmaxis, rvsin, rvsout, zvsin, zvsout, e567up/dn, e89up/dn, pinj_*/tinj_* individual beamlines."
],
"history_block1_base_signals": {
"_doc": "67 signals x 4 stats = indices 0-267. Order matches history_feature_order.txt.",
"kappa": {"pointname": "KAPPA", "tree": "EFIT01", "method": "tree"},
"betap": {"pointname": "BETAP", "tree": "EFIT01", "method": "tree"},
"tribot": {"pointname": "TRIBOT", "tree": "EFIT01", "method": "tree"},
"tritop": {"pointname": "TRITOP", "tree": "EFIT01", "method": "tree"},
"rmaxis": {"pointname": "RMAXIS", "tree": "EFIT01", "method": "tree"},
"zmaxis": {"pointname": "ZMAXIS", "tree": "EFIT01", "method": "tree"},
"li": {"pointname": "LI", "tree": "EFIT01", "method": "tree"},
"rvsin": {"pointname": "RVSIN", "tree": "EFIT01", "method": "tree"},
"rvsout": {"pointname": "RVSOUT", "tree": "EFIT01", "method": "tree"},
"zvsin": {"pointname": "ZVSIN", "tree": "EFIT01", "method": "tree"},
"zvsout": {"pointname": "ZVSOUT", "tree": "EFIT01", "method": "tree"},
"pohm": {"pointname": "POHM", "tree": null, "method": "ptdata"},
"pinj": {"pointname": "PINJ", "tree": null, "method": "ptdata"},
"tinj": {"pointname": "TINJ", "tree": null, "method": "ptdata"},
"ech_total": {"pointname": "ECHPWRC", "tree": null, "method": "ptdata", "notes": "export plan maps ech_total -> ECHPWRC"},
"pinj_15l": {"pointname": "PINJ_15L", "tree": null, "method": "ptdata"},
"pinj_15r": {"pointname": "PINJ_15R", "tree": null, "method": "ptdata"},
"pinj_21l": {"pointname": "PINJ_21L", "tree": null, "method": "ptdata"},
"pinj_21r": {"pointname": "PINJ_21R", "tree": null, "method": "ptdata"},
"pinj_30l": {"pointname": "PINJ_30L", "tree": null, "method": "ptdata"},
"pinj_30r": {"pointname": "PINJ_30R", "tree": null, "method": "ptdata"},
"pinj_33l": {"pointname": "PINJ_33L", "tree": null, "method": "ptdata"},
"pinj_33r": {"pointname": "PINJ_33R", "tree": null, "method": "ptdata"},
"tinj_15l": {"pointname": "TINJ_15L", "tree": null, "method": "ptdata"},
"tinj_15r": {"pointname": "TINJ_15R", "tree": null, "method": "ptdata"},
"tinj_21l": {"pointname": "TINJ_21L", "tree": null, "method": "ptdata"},
"tinj_21r": {"pointname": "TINJ_21R", "tree": null, "method": "ptdata"},
"tinj_30l": {"pointname": "TINJ_30L", "tree": null, "method": "ptdata"},
"tinj_30r": {"pointname": "TINJ_30R", "tree": null, "method": "ptdata"},
"tinj_33l": {"pointname": "TINJ_33L", "tree": null, "method": "ptdata"},
"tinj_33r": {"pointname": "TINJ_33R", "tree": null, "method": "ptdata"},
"f1a": {"pointname": "F1A", "tree": null, "method": "ptdata"},
"f2a": {"pointname": "F2A", "tree": null, "method": "ptdata"},
"f3a": {"pointname": "F3A", "tree": null, "method": "ptdata"},
"f4a": {"pointname": "F4A", "tree": null, "method": "ptdata"},
"f5a": {"pointname": "F5A", "tree": null, "method": "ptdata"},
"f6a": {"pointname": "F6A", "tree": null, "method": "ptdata"},
"f7a": {"pointname": "F7A", "tree": null, "method": "ptdata"},
"f8a": {"pointname": "F8A", "tree": null, "method": "ptdata"},
"f9a": {"pointname": "F9A", "tree": null, "method": "ptdata"},
"f1b": {"pointname": "F1B", "tree": null, "method": "ptdata"},
"f2b": {"pointname": "F2B", "tree": null, "method": "ptdata"},
"f3b": {"pointname": "F3B", "tree": null, "method": "ptdata"},
"f4b": {"pointname": "F4B", "tree": null, "method": "ptdata"},
"f5b": {"pointname": "F5B", "tree": null, "method": "ptdata"},
"f6b": {"pointname": "F6B", "tree": null, "method": "ptdata"},
"f7b": {"pointname": "F7B", "tree": null, "method": "ptdata"},
"f8b": {"pointname": "F8B", "tree": null, "method": "ptdata"},
"f9b": {"pointname": "F9B", "tree": null, "method": "ptdata"},
"ecoila": {"pointname": "ECOILA", "tree": null, "method": "ptdata"},
"ecoilb": {"pointname": "ECOILB", "tree": null, "method": "ptdata"},
"e567up": {"pointname": "E567UP", "tree": null, "method": "ptdata", "notes": "inferred; needs advisor confirmation"},
"e567dn": {"pointname": "E567DN", "tree": null, "method": "ptdata", "notes": "inferred; needs advisor confirmation"},
"e89up": {"pointname": "E89UP", "tree": null, "method": "ptdata", "notes": "inferred; needs advisor confirmation"},
"e89dn": {"pointname": "E89DN", "tree": null, "method": "ptdata", "notes": "inferred; needs advisor confirmation"},
"gasa_cal": {"pointname": "GASA_CAL", "tree": null, "method": "ptdata"},
"gasb_cal": {"pointname": "GASB_CAL", "tree": null, "method": "ptdata"},
"gasc_cal": {"pointname": "GASC_CAL", "tree": null, "method": "ptdata"},
"gasd_cal": {"pointname": "GASD_CAL", "tree": null, "method": "ptdata"},
"gase_cal": {"pointname": "GASE_CAL", "tree": null, "method": "ptdata"},
"ip": {"pointname": "IP", "tree": null, "method": "ptdata"},
"ipspr15v": {"pointname": "IPSPR15V", "tree": null, "method": "ptdata"},
"bt": {"pointname": "BT", "tree": null, "method": "ptdata"},
"density": {"pointname": "DENSITY", "tree": "ELECTRONS", "method": "tree"},
"n1rms": {"pointname": "N1RMS", "tree": null, "method": "ptdata"},
"n2rms": {"pointname": "N2RMS", "tree": null, "method": "ptdata"},
"prad": {"pointname": "PRAD", "tree": null, "method": "ptdata", "notes": "may need bolometer tree; needs advisor confirmation"}
},
"history_block2_pedestal_target": {
"_doc": "2 features at indices 268-269. Only mean and std (not min/max).",
"pedestal": {"pointname": "EDENSFIT100", "tree": null, "method": "ptdata", "notes": "edensfit index 100; exact pointname needs advisor confirmation"}
},
"history_block3_ece_channels": {
"_doc": "40 ECE channels x 4 stats = indices 270-429.",
"ece1": {"pointname": "ECE01", "tree": "ECE", "method": "tree"},
"ece2": {"pointname": "ECE02", "tree": "ECE", "method": "tree"},
"ece3": {"pointname": "ECE03", "tree": "ECE", "method": "tree"},
"ece4": {"pointname": "ECE04", "tree": "ECE", "method": "tree"},
"ece5": {"pointname": "ECE05", "tree": "ECE", "method": "tree"},
"ece6": {"pointname": "ECE06", "tree": "ECE", "method": "tree"},
"ece7": {"pointname": "ECE07", "tree": "ECE", "method": "tree"},
"ece8": {"pointname": "ECE08", "tree": "ECE", "method": "tree"},
"ece9": {"pointname": "ECE09", "tree": "ECE", "method": "tree"},
"ece10": {"pointname": "ECE10", "tree": "ECE", "method": "tree"},
"ece11": {"pointname": "ECE11", "tree": "ECE", "method": "tree"},
"ece12": {"pointname": "ECE12", "tree": "ECE", "method": "tree"},
"ece13": {"pointname": "ECE13", "tree": "ECE", "method": "tree"},
"ece14": {"pointname": "ECE14", "tree": "ECE", "method": "tree"},
"ece15": {"pointname": "ECE15", "tree": "ECE", "method": "tree"},
"ece16": {"pointname": "ECE16", "tree": "ECE", "method": "tree"},
"ece17": {"pointname": "ECE17", "tree": "ECE", "method": "tree"},
"ece18": {"pointname": "ECE18", "tree": "ECE", "method": "tree"},
"ece19": {"pointname": "ECE19", "tree": "ECE", "method": "tree"},
"ece20": {"pointname": "ECE20", "tree": "ECE", "method": "tree"},
"ece21": {"pointname": "ECE21", "tree": "ECE", "method": "tree"},
"ece22": {"pointname": "ECE22", "tree": "ECE", "method": "tree"},
"ece23": {"pointname": "ECE23", "tree": "ECE", "method": "tree"},
"ece24": {"pointname": "ECE24", "tree": "ECE", "method": "tree"},
"ece25": {"pointname": "ECE25", "tree": "ECE", "method": "tree"},
"ece26": {"pointname": "ECE26", "tree": "ECE", "method": "tree"},
"ece27": {"pointname": "ECE27", "tree": "ECE", "method": "tree"},
"ece28": {"pointname": "ECE28", "tree": "ECE", "method": "tree"},
"ece29": {"pointname": "ECE29", "tree": "ECE", "method": "tree"},
"ece30": {"pointname": "ECE30", "tree": "ECE", "method": "tree"},
"ece31": {"pointname": "ECE31", "tree": "ECE", "method": "tree"},
"ece32": {"pointname": "ECE32", "tree": "ECE", "method": "tree"},
"ece33": {"pointname": "ECE33", "tree": "ECE", "method": "tree"},
"ece34": {"pointname": "ECE34", "tree": "ECE", "method": "tree"},
"ece35": {"pointname": "ECE35", "tree": "ECE", "method": "tree"},
"ece36": {"pointname": "ECE36", "tree": "ECE", "method": "tree"},
"ece37": {"pointname": "ECE37", "tree": "ECE", "method": "tree"},
"ece38": {"pointname": "ECE38", "tree": "ECE", "method": "tree"},
"ece39": {"pointname": "ECE39", "tree": "ECE", "method": "tree"},
"ece40": {"pointname": "ECE40", "tree": "ECE", "method": "tree"}
},
"history_block4_radiation": {
"_doc": "3 radiation signals x 4 stats = indices 430-441.",
"prad_tot": {"pointname": "PRAD_TOT", "tree": null, "method": "ptdata", "notes": "bolometer total; exact source needs advisor confirmation"},
"prad_divl": {"pointname": "PRAD_DIVL", "tree": null, "method": "ptdata", "notes": "divertor lower; exact source needs advisor confirmation"},
"prad_divu": {"pointname": "PRAD_DIVU", "tree": null, "method": "ptdata", "notes": "divertor upper; exact source needs advisor confirmation"}
},
"history_block5_edensfit89_target": {
"_doc": "1 signal x 4 stats = indices 442-445.",
"edensfit89": {"pointname": "EDENSFIT89", "tree": null, "method": "ptdata", "notes": "fitted density at index 89; exact pointname needs advisor confirmation"}
},
"fpe_signals": {
"_doc": "32 FPE actuator channels (real-time input to FPE encoder). Order matches normalization_params.json.",
"_order": [
"pohm", "pinj", "tinj", "ech_total",
"f1a", "f2a", "f3a", "f4a", "f5a", "f6a", "f7a", "f8a", "f9a",
"f1b", "f2b", "f3b", "f4b", "f5b", "f6b", "f7b", "f8b", "f9b",
"ecoila", "ecoilb",
"gasa_cal", "gasb_cal", "gasc_cal", "gasd_cal", "gase_cal",
"ip", "ipspr15v", "bt"
],
"_note": "These are a subset of block1 signals; use the same pointname/tree/method entries from block1."
},
"history_signal_order": {
"_doc": "Ordered list of signal names matching history_feature_order.txt. Used by _compute_shot_stats().",
"block1_67_signals": [
"kappa", "betap", "tribot", "tritop", "rmaxis", "zmaxis", "li",
"rvsin", "rvsout", "zvsin", "zvsout",
"pohm", "pinj", "tinj", "ech_total",
"pinj_15l", "pinj_15r", "pinj_21l", "pinj_21r",
"pinj_30l", "pinj_30r", "pinj_33l", "pinj_33r",
"tinj_15l", "tinj_15r", "tinj_21l", "tinj_21r",
"tinj_30l", "tinj_30r", "tinj_33l", "tinj_33r",
"f1a", "f2a", "f3a", "f4a", "f5a", "f6a", "f7a", "f8a", "f9a",
"f1b", "f2b", "f3b", "f4b", "f5b", "f6b", "f7b", "f8b", "f9b",
"ecoila", "ecoilb",
"e567up", "e567dn", "e89up", "e89dn",
"gasa_cal", "gasb_cal", "gasc_cal", "gasd_cal", "gase_cal",
"ip", "ipspr15v", "bt",
"density", "n1rms", "n2rms", "prad"
],
"block2_pedestal": ["pedestal"],
"block3_40_ece": [
"ece1", "ece2", "ece3", "ece4", "ece5", "ece6", "ece7", "ece8", "ece9", "ece10",
"ece11", "ece12", "ece13", "ece14", "ece15", "ece16", "ece17", "ece18", "ece19", "ece20",
"ece21", "ece22", "ece23", "ece24", "ece25", "ece26", "ece27", "ece28", "ece29", "ece30",
"ece31", "ece32", "ece33", "ece34", "ece35", "ece36", "ece37", "ece38", "ece39", "ece40"
],
"block4_3_radiation": ["prad_tot", "prad_divl", "prad_divu"],
"block5_edensfit89": ["edensfit89"]
}
}