{
  "diagnosticSourceSha256": "bb1a56d2292e5555916903d5a6167fc4f533b8254417c4a08882f3775a821214",
  "diagnosticRegisterSha256": "a3b796d623b94955764c55fb16d2e6f95a871436bb2e14f49e165a94d81ceeaf",
  "diagnosticTestSourceSha256": "3079d75dc837c5646c2ddc54cb9382cc080af933c7db99704440074aa835edda",
  "model": "salinity-dye-tank-3d-v6-reference",
  "couplingRegisterSha256": "5207d747dc2125180f6bb9870a732da09f3cdc96bb70aeef45eeeb0253561bcb",
  "couplingFixtureSha256": "5eba632468c102f1400f2d86659f2fe867dd0f49b205c832ddda06efc40e24fa",
  "generatedAt": "2026-10-09T18:54:23.306Z",
  "passed": true,
  "canonicalArithmetic": "Float64",
  "solverSourceSha256": "3acaf69bb71ff58c6a2dee3bc1486122147e2ca45d879f90eb9b0c7aa7990e4a",
  "pressureSourceSha256": "0f7f2c997d7a7ec3653b2b8fe20f8dc03f85e508e82d394d876a812dc09565b4",
  "kernelSourceSha256": "af94cf09640e98cf245d5016024820b5a8f8a4b6117b236758637a09892f9582",
  "kernelBinarySha256": "40a45ad222abc8edabe5b863f957c0d0e1b5333dbe69aeb327dbc4a42063b2f4",
  "modelRegisterSha256": "0362bf2dc25eadea13a48c28252ae92be383ef993a4d950f1e0605250acf144f",
  "runtime": "v24.20.0",
  "checks": {
    "projection": [
      {
        "grid": [
          16,
          16,
          16
        ],
        "divergenceRms": 5.199228780963776e-16,
        "idempotenceMaxError": 9.540979117872439e-18
      },
      {
        "grid": [
          32,
          32,
          32
        ],
        "divergenceRms": 1.14763070795413e-15,
        "idempotenceMaxError": 1.3010426069826053e-17
      }
    ],
    "rest": [
      {
        "transition": 0,
        "model": "salinity-dye-tank-3d-v6",
        "dimensions": 3,
        "acceleration": "float64-wasm",
        "accelerationFallback": null,
        "grid": [
          32,
          32,
          32
        ],
        "time": 0.3000000000000001,
        "steps": 30,
        "saltIntegral": 0.18224999999999972,
        "dyeIntegral": 0,
        "dyeCentroid": {
          "x": 0.12,
          "y": 0.09,
          "z": 0.09
        },
        "maxSpeed": 0,
        "maxW": 0,
        "divergenceRms": 0,
        "salinityMin": 4.669746143677051e-37,
        "salinityMax": 40,
        "dyeMin": 0,
        "dyeMax": 0,
        "saltLedgerResidual": 2.7755575615628914e-16,
        "dyeLedgerResidual": 0
      },
      {
        "transition": 0.008,
        "model": "salinity-dye-tank-3d-v6",
        "dimensions": 3,
        "acceleration": "float64-wasm",
        "accelerationFallback": null,
        "grid": [
          32,
          32,
          32
        ],
        "time": 0.3000000000000001,
        "steps": 30,
        "saltIntegral": 0.18145871849741999,
        "dyeIntegral": 0,
        "dyeCentroid": {
          "x": 0.12,
          "y": 0.09,
          "z": 0.09
        },
        "maxSpeed": 0,
        "maxW": 0,
        "divergenceRms": 0,
        "salinityMin": 1.6825331982006668e-7,
        "salinityMax": 39.999999999433285,
        "dyeMin": 0,
        "dyeMax": 0,
        "saltLedgerResidual": 1.582067810090848e-14,
        "dyeLedgerResidual": 0
      }
    ],
    "neutral": {
      "model": "salinity-dye-tank-3d-v6",
      "dimensions": 3,
      "acceleration": "float64-wasm",
      "accelerationFallback": null,
      "grid": [
        32,
        32,
        32
      ],
      "time": 0.3000000000000001,
      "steps": 30,
      "saltIntegral": 0.4147199999999999,
      "dyeIntegral": 0.0000025283027722010296,
      "dyeCentroid": {
        "x": 0.1200000000000001,
        "y": 0.1200000000000001,
        "z": 0.12000000000000004
      },
      "maxSpeed": 0,
      "maxW": 0,
      "divergenceRms": 0,
      "salinityMin": 30,
      "salinityMax": 30,
      "dyeMin": 3.2963824102523976e-261,
      "dyeMax": 0.6158308602323967,
      "saltLedgerResidual": 0,
      "dyeLedgerResidual": 4.235164736271502e-22
    },
    "grid": [
      {
        "model": "salinity-dye-tank-3d-v6",
        "dimensions": 3,
        "acceleration": "float64-wasm",
        "accelerationFallback": null,
        "grid": [
          32,
          32,
          32
        ],
        "time": 0.3000000000000001,
        "steps": 30,
        "saltIntegral": 0.41473516981663305,
        "dyeIntegral": 0.0000025283027722010326,
        "dyeCentroid": {
          "x": 0.11999999999999973,
          "y": 0.045591942611375065,
          "z": 0.11999999999999979
        },
        "maxSpeed": 0.004616193840089142,
        "maxW": 0.0008496708803247964,
        "divergenceRms": 1.174520732953503e-18,
        "salinityMin": 29.999999999999922,
        "salinityMax": 33.69498524864583,
        "dyeMin": 8.07125e-319,
        "dyeMax": 0.6158308747743059,
        "saltLedgerResidual": 1.6653345369377348e-16,
        "dyeLedgerResidual": 1.2705494208814505e-21,
        "requestedDt": 0.01,
        "wallMilliseconds": 846.35925
      },
      {
        "model": "salinity-dye-tank-3d-v6",
        "dimensions": 3,
        "acceleration": "float64-wasm",
        "accelerationFallback": null,
        "grid": [
          64,
          32,
          32
        ],
        "time": 0.3000000000000001,
        "steps": 30,
        "saltIntegral": 0.41473541224990634,
        "dyeIntegral": 0.0000025687083177197125,
        "dyeCentroid": {
          "x": 0.12000000000000006,
          "y": 0.04558301944002657,
          "z": 0.12000000000000013
        },
        "maxSpeed": 0.005467667625122235,
        "maxW": 0.0009099833090879617,
        "divergenceRms": 1.3846259936109144e-18,
        "salinityMin": 29.99999999999993,
        "salinityMax": 34.21907782580955,
        "dyeMin": 0,
        "dyeMax": 0.7031796376349169,
        "saltLedgerResidual": 3.3306690738754696e-16,
        "dyeLedgerResidual": 4.235164736271502e-22,
        "requestedDt": 0.01,
        "wallMilliseconds": 1677.5647089999998
      },
      {
        "model": "salinity-dye-tank-3d-v6",
        "dimensions": 3,
        "acceleration": "float64-wasm",
        "accelerationFallback": null,
        "grid": [
          64,
          64,
          64
        ],
        "time": 0.3000000000000001,
        "steps": 30,
        "saltIntegral": 0.41473576314388866,
        "dyeIntegral": 0.000002627190648094411,
        "dyeCentroid": {
          "x": 0.11999999999999963,
          "y": 0.0456345952833013,
          "z": 0.11999999999999969
        },
        "maxSpeed": 0.007638585813400835,
        "maxW": 0.0014710833656592982,
        "divergenceRms": 2.2565939354455132e-18,
        "salinityMin": 29.999999999999922,
        "salinityMax": 35.37150662150269,
        "dyeMin": 0,
        "dyeMax": 0.8952511035837867,
        "saltLedgerResidual": 2.7755575615628914e-16,
        "dyeLedgerResidual": 4.235164736271502e-21,
        "requestedDt": 0.01,
        "wallMilliseconds": 6763.136292
      }
    ],
    "gridCentroidDifference": 0.000051575843274725974,
    "halfTimestep": {
      "model": "salinity-dye-tank-3d-v6",
      "dimensions": 3,
      "acceleration": "float64-wasm",
      "accelerationFallback": null,
      "grid": [
        32,
        32,
        32
      ],
      "time": 0.30000000000000016,
      "steps": 60,
      "saltIntegral": 0.41473516981663333,
      "dyeIntegral": 0.0000025283027722010317,
      "dyeCentroid": {
        "x": 0.1199999999999999,
        "y": 0.04559194641298167,
        "z": 0.11999999999999991
      },
      "maxSpeed": 0.0046162662615971545,
      "maxW": 0.0008496731609466687,
      "divergenceRms": 9.860824584506387e-19,
      "salinityMin": 29.999999999999872,
      "salinityMax": 33.69498524866404,
      "dyeMin": 1.72679e-318,
      "dyeMax": 0.6158308747773339,
      "saltLedgerResidual": 1.1102230246251565e-16,
      "dyeLedgerResidual": 4.235164736271502e-22,
      "requestedDt": 0.005,
      "wallMilliseconds": 1608.2794169999997
    },
    "timestepCentroidDifference": 3.801606605902119e-9,
    "extremes": [
      {
        "dropSalinity": 0,
        "model": "salinity-dye-tank-3d-v6",
        "dimensions": 3,
        "acceleration": "float64-wasm",
        "accelerationFallback": null,
        "grid": [
          32,
          32,
          32
        ],
        "time": 0.3000000000000001,
        "steps": 30,
        "saltIntegral": 0.41427025509375004,
        "dyeIntegral": 0.000014991496875000013,
        "dyeCentroid": {
          "x": 0.1199999999999999,
          "y": 0.04190206560926896,
          "z": 0.11999999999999993
        },
        "maxSpeed": 0.03676510771933182,
        "maxW": 0.007286623979715738,
        "divergenceRms": 1.2422255569879185e-17,
        "salinityMin": 4.150005078796578,
        "salinityMax": 30.0000000000001,
        "dyeMin": 6.576494453143237e-276,
        "dyeMax": 0.8616664973734478,
        "saltLedgerResidual": 2.7755575615628914e-16,
        "dyeLedgerResidual": 2.0328790734103208e-20,
        "requestedDt": 0.01,
        "wallMilliseconds": 789.1482500000002
      },
      {
        "dropSalinity": 40,
        "model": "salinity-dye-tank-3d-v6",
        "dimensions": 3,
        "acceleration": "float64-wasm",
        "accelerationFallback": null,
        "grid": [
          32,
          32,
          32
        ],
        "time": 0.3000000000000001,
        "steps": 30,
        "saltIntegral": 0.4148699149687492,
        "dyeIntegral": 0.00001499149687499996,
        "dyeCentroid": {
          "x": 0.12000000000000029,
          "y": 0.04604382017059887,
          "z": 0.12000000000000031
        },
        "maxSpeed": 0.01228240395023064,
        "maxW": 0.002248018611003725,
        "divergenceRms": 3.904084148439074e-18,
        "salinityMin": 29.999999999999915,
        "salinityMax": 38.695491550804476,
        "dyeMin": 1.5436900663023604e-295,
        "dyeMax": 0.8695491550804466,
        "saltLedgerResidual": 1.1102230246251565e-16,
        "dyeLedgerResidual": 3.218725199566341e-20,
        "requestedDt": 0.01,
        "wallMilliseconds": 820.5251249999983
      }
    ],
    "taylorGreen": [
      {
        "grid": [
          32,
          32,
          32
        ],
        "initialEnergy": 3.456000000000044e-7,
        "analyticEnergy": 3.455040807585991e-7,
        "observedEnergy": 3.455038013597021e-7,
        "relativeError": 8.086703241483306e-7,
        "divergenceRms": 6.71691061406683e-17
      },
      {
        "grid": [
          64,
          64,
          32
        ],
        "initialEnergy": 3.45599999999999e-7,
        "analyticEnergy": 3.455040807585937e-7,
        "observedEnergy": 3.455039404534164e-7,
        "relativeError": 4.060883362910772e-7,
        "divergenceRms": 1.2916800881346652e-16
      }
    ],
    "vorticity": {
      "time": 0.3000000000000001,
      "max": 0.3331687775137358,
      "rms": 0.02143978902828428,
      "units": "s^-1",
      "physicalFieldsUnchanged": [
        "u",
        "v",
        "w",
        "salinity",
        "gold",
        "coral",
        "dye",
        "phi",
        "pressureEstimate"
      ],
      "physicalClockUnchanged": true
    },
    "coupling": {
      "shortTimeCoefficient": 0.4999998410717576,
      "expectedCoefficient": 0.5,
      "grid": [
        16,
        16,
        16
      ],
      "duration": 0.3,
      "requestedTimesteps": [
        0.02,
        0.01,
        0.005,
        0.0025
      ],
      "fields": {
        "salinity": {
          "successiveRmsDifferences": [
            3.3864656542786166e-11,
            8.469258567350476e-12,
            2.155553231838107e-12
          ],
          "selfConvergenceRatios": [
            3.9985385111911147,
            3.929041715257701
          ]
        },
        "gold": {
          "successiveRmsDifferences": [
            7.1105611741924466e-12,
            1.7797695573652414e-12,
            4.601671859428262e-13
          ],
          "selfConvergenceRatios": [
            3.9952145179507803,
            3.867658563525584
          ]
        }
      }
    }
  },
  "scope": "Selected global quantities, conservation, incompressibility, hydrostatics, density response and one analytic viscous limit for the Float64 reference backend. GPU and 0.02 s requests are checked separately in verification-gpu.json. Not a validation of 3D turbulent morphology, physical entrainment rates, lab observations or measured ocean currents."
}
