{"set":"metrologybench-core test vectors","version":"0.1.0","notes":"Each vector: inputs, expected value, allowed tolerance, and where the expected value comes from. Type K expected values are NIST SRD 60 table entries (rounded by NIST to 0.001 mV / whole °C). RTD expected values are from the Callendar–Van Dusen equation with Pt385 coefficients, cross-checked against IEC 60751 table values (rounded to 0.01 Ω). Pressure and torque expected values are derived from SI definitions as tabulated in NIST SP 811.","vectors":[{"id":"TCK-F-01","tool":"tcEmf","inputs":{"type":"K","t_C":-200},"expected":-5.891,"unit":"mV","tolerance":0.0005,"source":"NIST SRD 60 type K table, -200 °C","why":"Low end of inverse range"},{"id":"TCK-F-02","tool":"tcEmf","inputs":{"type":"K","t_C":-100},"expected":-3.554,"unit":"mV","tolerance":0.0005,"source":"NIST SRD 60 type K table, -100 °C","why":"Negative range, mid"},{"id":"TCK-F-03","tool":"tcEmf","inputs":{"type":"K","t_C":-50},"expected":-1.889,"unit":"mV","tolerance":0.0005,"source":"NIST SRD 60 type K table, -50 °C","why":"Negative range, near zero"},{"id":"TCK-F-04","tool":"tcEmf","inputs":{"type":"K","t_C":0},"expected":0,"unit":"mV","tolerance":0.0005,"source":"NIST SRD 60 type K table, 0 °C","why":"Segment boundary; exponential term starts"},{"id":"TCK-F-05","tool":"tcEmf","inputs":{"type":"K","t_C":25},"expected":1,"unit":"mV","tolerance":0.0005,"source":"NIST SRD 60 type K table, 25 °C","why":"Room temperature"},{"id":"TCK-F-06","tool":"tcEmf","inputs":{"type":"K","t_C":100},"expected":4.096,"unit":"mV","tolerance":0.0005,"source":"NIST SRD 60 type K table, 100 °C","why":"Common check point"},{"id":"TCK-F-07","tool":"tcEmf","inputs":{"type":"K","t_C":200},"expected":8.138,"unit":"mV","tolerance":0.0005,"source":"NIST SRD 60 type K table, 200 °C","why":"Positive range, mid"},{"id":"TCK-F-08","tool":"tcEmf","inputs":{"type":"K","t_C":500},"expected":20.644,"unit":"mV","tolerance":0.0005,"source":"NIST SRD 60 type K table, 500 °C","why":"Inverse segment boundary"},{"id":"TCK-F-09","tool":"tcEmf","inputs":{"type":"K","t_C":1000},"expected":41.276,"unit":"mV","tolerance":0.0005,"source":"NIST SRD 60 type K table, 1000 °C","why":"High range"},{"id":"TCK-F-10","tool":"tcEmf","inputs":{"type":"K","t_C":1372},"expected":54.886,"unit":"mV","tolerance":0.0005,"source":"NIST SRD 60 type K table, 1372 °C","why":"Top of range"},{"id":"TCK-I-01","tool":"tcTemperature","inputs":{"type":"K","emf_mV":-5.891},"expected":-200,"unit":"°C","tolerance":0.08,"source":"NIST SRD 60 type K table, -200 °C","why":"Bottom of inverse range. Tolerance = NIST inverse error band plus the 0.0005 mV table rounding at low sensitivity"},{"id":"TCK-I-02","tool":"tcTemperature","inputs":{"type":"K","emf_mV":-3.554},"expected":-100,"unit":"°C","tolerance":0.06,"source":"NIST SRD 60 type K table, -100 °C","why":"Negative inverse segment"},{"id":"TCK-I-03","tool":"tcTemperature","inputs":{"type":"K","emf_mV":0},"expected":0,"unit":"°C","tolerance":0.06,"source":"NIST SRD 60 type K table, 0 °C","why":"Inverse segment boundary"},{"id":"TCK-I-04","tool":"tcTemperature","inputs":{"type":"K","emf_mV":4.096},"expected":100,"unit":"°C","tolerance":0.06,"source":"NIST SRD 60 type K table, 100 °C","why":"Common check point"},{"id":"TCK-I-05","tool":"tcTemperature","inputs":{"type":"K","emf_mV":20.644},"expected":500,"unit":"°C","tolerance":0.08,"source":"NIST SRD 60 type K table, 500 °C","why":"Inverse segment boundary (upper segment used)"},{"id":"TCK-I-06","tool":"tcTemperature","inputs":{"type":"K","emf_mV":41.276},"expected":1000,"unit":"°C","tolerance":0.08,"source":"NIST SRD 60 type K table, 1000 °C","why":"High range"},{"id":"TCK-I-07","tool":"tcTemperature","inputs":{"type":"K","emf_mV":54.886},"expected":1372,"unit":"°C","tolerance":0.08,"source":"NIST SRD 60 type K table, 1372 °C","why":"Top of range"},{"id":"RTD-F-01","tool":"rtdResistance","inputs":{"t_C":-200,"r0":100},"expected":18.52,"unit":"Ω","tolerance":0.005,"source":"CvD Pt385; cross-check IEC 60751 table","why":"Bottom of range; C term active"},{"id":"RTD-F-02","tool":"rtdResistance","inputs":{"t_C":-100,"r0":100},"expected":60.26,"unit":"Ω","tolerance":0.005,"source":"CvD Pt385; cross-check IEC 60751 table","why":"C term active"},{"id":"RTD-F-03","tool":"rtdResistance","inputs":{"t_C":0,"r0":100},"expected":100,"unit":"Ω","tolerance":0.00005,"source":"Definition of R0","why":"Equation changes form at 0 °C"},{"id":"RTD-F-04","tool":"rtdResistance","inputs":{"t_C":100,"r0":100},"expected":138.5055,"unit":"Ω","tolerance":0.00005,"source":"CvD Pt385, exact arithmetic: 100(1 + 0.39083 − 0.005775)","why":"Common check point"},{"id":"RTD-F-05","tool":"rtdResistance","inputs":{"t_C":200,"r0":100},"expected":175.86,"unit":"Ω","tolerance":0.005,"source":"CvD Pt385; cross-check IEC 60751 table","why":"Positive range, mid"},{"id":"RTD-F-06","tool":"rtdResistance","inputs":{"t_C":500,"r0":100},"expected":280.98,"unit":"Ω","tolerance":0.005,"source":"CvD Pt385; cross-check IEC 60751 table","why":"High range"},{"id":"RTD-F-07","tool":"rtdResistance","inputs":{"t_C":850,"r0":100},"expected":390.48,"unit":"Ω","tolerance":0.005,"source":"CvD Pt385; cross-check IEC 60751 table","why":"Top of range"},{"id":"RTD-F-08","tool":"rtdResistance","inputs":{"t_C":100,"r0":1000},"expected":1385.055,"unit":"Ω","tolerance":0.0005,"source":"CvD Pt385 scaled to R0 = 1000 Ω (Pt1000)","why":"R0 scaling"},{"id":"RTD-I-01","tool":"rtdTemperature","inputs":{"r_ohm":138.5055,"r0":100},"expected":100,"unit":"°C","tolerance":0.0001,"source":"Inverse of RTD-F-04","why":"Exact quadratic inverse"},{"id":"RTD-I-02","tool":"rtdTemperature","inputs":{"r_ohm":60.2558,"r0":100},"expected":-100,"unit":"°C","tolerance":0.001,"source":"Inverse of CvD Pt385 at −100 °C (60.2558 Ω)","why":"Iterative inverse below 0 °C"},{"id":"RTD-I-03","tool":"rtdTemperature","inputs":{"r_ohm":100,"r0":100},"expected":0,"unit":"°C","tolerance":0.0001,"source":"Definition of R0","why":"Boundary between the two forms"},{"id":"RANGE-01","tool":"tcEmf","inputs":{"type":"K","t_C":1373},"expected":"OutOfRangeError","source":"NIST type K range −270 to 1372 °C","why":"Must refuse, not extrapolate"},{"id":"RANGE-02","tool":"tcTemperature","inputs":{"type":"K","emf_mV":55},"expected":"OutOfRangeError","source":"NIST type K inverse range −5.891 to 54.886 mV","why":"Must refuse, not extrapolate"},{"id":"RANGE-03","tool":"rtdResistance","inputs":{"t_C":851,"r0":100},"expected":"OutOfRangeError","source":"CvD valid range −200 to 850 °C","why":"Must refuse, not extrapolate"},{"id":"ROUND-01","tool":"roundDecimals","inputs":{"x":2.675,"places":2,"mode":"half-up"},"expected":"2.68","source":"Decimal rounding rule","why":"Binary float would give 2.67; must not"},{"id":"ROUND-02","tool":"roundDecimals","inputs":{"x":2.45,"places":1,"mode":"half-even"},"expected":"2.4","source":"Round half to even","why":"Tie goes to even digit"},{"id":"ROUND-03","tool":"roundDecimals","inputs":{"x":2.55,"places":1,"mode":"half-even"},"expected":"2.6","source":"Round half to even","why":"Tie goes to even digit"},{"id":"ROUND-04","tool":"roundDecimals","inputs":{"x":-2.5,"places":0,"mode":"half-up"},"expected":"-3","source":"Round half away from zero","why":"Negative ties"},{"id":"ROUND-05","tool":"roundSigFigs","inputs":{"x":0.0012345,"digits":3,"mode":"half-up"},"expected":"0.00123","source":"Significant figures","why":"Leading zeros are not significant"},{"id":"ROUND-06","tool":"roundSigFigs","inputs":{"x":9.996,"digits":3,"mode":"half-up"},"expected":"10.0","source":"Significant figures","why":"Carry into a new digit"},{"id":"PRS-01","tool":"convertPressure","inputs":{"value":100,"from":"psi","to":"kPa"},"expected":689.4757293,"unit":"kPa","tolerance":5e-8,"source":"NIST SP 811: 1 psi = 6.894 757 293 kPa (derived from the definitions of the pound, inch and standard gravity)","why":"Most common pressure conversion"},{"id":"PRS-02","tool":"convertPressure","inputs":{"value":1,"from":"atm","to":"psi"},"expected":14.69594878,"unit":"psi","tolerance":5e-9,"source":"101 325 Pa ÷ 6 894.757 293 Pa","why":"Standard atmosphere"},{"id":"PRS-03","tool":"convertPressure","inputs":{"value":1,"from":"bar","to":"psi"},"expected":14.50377377,"unit":"psi","tolerance":5e-9,"source":"100 000 Pa ÷ 6 894.757 293 Pa","why":"Metric to imperial"},{"id":"PRS-04","tool":"convertPressure","inputs":{"value":1,"from":"inHg","to":"Pa"},"expected":3386.38864,"unit":"Pa","tolerance":0.000005,"source":"Conventional: 0.0254 m × 13 595.1 kg/m³ × 9.806 65 m/s²","why":"Manometric unit, conventional mercury density"},{"id":"PRS-05","tool":"convertPressure","inputs":{"value":1,"from":"inH2O","to":"Pa"},"expected":249.08891,"unit":"Pa","tolerance":0.000005,"source":"Conventional: 0.0254 m × 1000 kg/m³ × 9.806 65 m/s²","why":"Manometric unit, conventional water density"},{"id":"PRS-06","tool":"convertPressure","inputs":{"value":760,"from":"torr","to":"atm"},"expected":1,"unit":"atm","tolerance":1e-12,"source":"Definition: 760 torr = 1 atm","why":"Exact definition"},{"id":"TRQ-01","tool":"convertTorque","inputs":{"value":1,"from":"ftlb","to":"Nm"},"expected":1.3558179483,"unit":"N·m","tolerance":5e-11,"source":"0.453 592 37 kg × 9.806 65 m/s² × 0.3048 m (NIST SP 811)","why":"Most common torque conversion"},{"id":"TRQ-02","tool":"convertTorque","inputs":{"value":1,"from":"Nm","to":"inlb"},"expected":8.850745791,"unit":"in·lbf","tolerance":5e-10,"source":"1 ÷ 0.112 984 829 N·m (NIST SP 811)","why":"Small-tool torque"},{"id":"TRQ-03","tool":"convertTorque","inputs":{"value":1,"from":"inoz","to":"cNm"},"expected":0.7061551814,"unit":"cN·m","tolerance":5e-11,"source":"(0.453 592 37 ÷ 16) kg × 9.806 65 m/s² × 0.0254 m","why":"Screwdriver-range unit"},{"id":"TRQ-04","tool":"convertTorque","inputs":{"value":12,"from":"inlb","to":"ftlb"},"expected":1,"unit":"ft·lbf","tolerance":1e-12,"source":"Definition: 12 in = 1 ft","why":"Exact relationship"},{"id":"TRQ-05","tool":"torqueExtensionSetting","inputs":{"target":100,"wrenchLength":18,"extension":3},"expected":85.71428571,"unit":"same as target","tolerance":5e-9,"source":"setting = target × L ÷ (L + E) = 100 × 18 ÷ 21","why":"Inline extension correction"},{"id":"TRQ-06","tool":"torqueExtensionSetting","inputs":{"target":100,"wrenchLength":18,"extension":0},"expected":100,"unit":"same as target","tolerance":1e-12,"source":"No extension: setting equals target","why":"Zero-extension edge case"}]}