{
  "checks": 41,
  "results": [
    {
      "test": "solve_direct vs dense minimizer",
      "error": 1.5000400143022207e-10,
      "limit": 1e-08
    },
    {
      "test": "solve_equivalent vs dense minimizer",
      "error": 1.63709555900267e-10,
      "limit": 1e-08
    },
    {
      "test": "solve_direct laminate strain",
      "error": 1.5013141070313398e-11,
      "limit": 1e-08
    },
    {
      "test": "solve_direct laminate stress",
      "error": 1.0452979627706416e-12,
      "limit": 1e-10
    },
    {
      "test": "solve_direct mean strain",
      "error": 2.3852447794681098e-17,
      "limit": 1e-12
    },
    {
      "test": "solve_equivalent laminate strain",
      "error": 1.8822630344673197e-11,
      "limit": 1e-08
    },
    {
      "test": "solve_equivalent laminate stress",
      "error": 1.4461296743428775e-12,
      "limit": 1e-10
    },
    {
      "test": "solve_equivalent mean strain",
      "error": 3.903127820947816e-18,
      "limit": 1e-12
    },
    {
      "test": "Fourier displacement amplitude/sign",
      "error": 9.215718466126788e-19,
      "limit": 1e-14
    },
    {
      "test": "Homogeneous isotropic energy including mean",
      "error": 2.220446049250313e-16,
      "limit": 1e-09
    },
    {
      "test": "contrast 0.2: strain agreement",
      "error": 8.121373482007922e-11,
      "limit": 1e-08
    },
    {
      "test": "contrast 0.2: energy agreement",
      "error": 2.220446049250313e-16,
      "limit": 1e-10
    },
    {
      "test": "contrast 0.2: direct equilibrium",
      "error": 8.417230381974649e-11,
      "limit": 1e-09
    },
    {
      "test": "contrast 0.2: equivalent equilibrium",
      "error": 7.480820231958897e-11,
      "limit": 1e-09
    },
    {
      "test": "contrast 0.2: stress matching",
      "error": 2.130764588910243e-11,
      "limit": 1e-09
    },
    {
      "test": "contrast 0.5: strain agreement",
      "error": 6.539425966317761e-11,
      "limit": 1e-08
    },
    {
      "test": "contrast 0.5: energy agreement",
      "error": 0.0,
      "limit": 1e-10
    },
    {
      "test": "contrast 0.5: direct equilibrium",
      "error": 7.12795706827188e-11,
      "limit": 1e-09
    },
    {
      "test": "contrast 0.5: equivalent equilibrium",
      "error": 9.981736633505278e-11,
      "limit": 1e-09
    },
    {
      "test": "contrast 0.5: stress matching",
      "error": 2.4321370382943787e-11,
      "limit": 1e-09
    },
    {
      "test": "contrast 1: strain agreement",
      "error": 3.276799812988978e-11,
      "limit": 1e-08
    },
    {
      "test": "contrast 1: energy agreement",
      "error": 1.1102230246251565e-16,
      "limit": 1e-10
    },
    {
      "test": "contrast 1: direct equilibrium",
      "error": 3.2768628350702585e-11,
      "limit": 1e-09
    },
    {
      "test": "contrast 1: equivalent equilibrium",
      "error": 1.5218387218767203e-14,
      "limit": 1e-09
    },
    {
      "test": "contrast 1: stress matching",
      "error": 0.0,
      "limit": 1e-09
    },
    {
      "test": "contrast 2: strain agreement",
      "error": 1.1741183248590778e-11,
      "limit": 1e-08
    },
    {
      "test": "contrast 2: energy agreement",
      "error": 0.0,
      "limit": 1e-10
    },
    {
      "test": "contrast 2: direct equilibrium",
      "error": 4.81134825422872e-11,
      "limit": 1e-09
    },
    {
      "test": "contrast 2: equivalent equilibrium",
      "error": 4.973485968568581e-11,
      "limit": 1e-09
    },
    {
      "test": "contrast 2: stress matching",
      "error": 1.0395303304016809e-11,
      "limit": 1e-09
    },
    {
      "test": "contrast 5: strain agreement",
      "error": 1.7011927386064264e-11,
      "limit": 1e-08
    },
    {
      "test": "contrast 5: energy agreement",
      "error": 4.440892098500626e-16,
      "limit": 1e-10
    },
    {
      "test": "contrast 5: direct equilibrium",
      "error": 8.77157955867997e-11,
      "limit": 1e-09
    },
    {
      "test": "contrast 5: equivalent equilibrium",
      "error": 7.965201407282498e-11,
      "limit": 1e-09
    },
    {
      "test": "contrast 5: stress matching",
      "error": 1.3051005381110293e-11,
      "limit": 1e-09
    },
    {
      "test": "Independent anisotropies with shear",
      "error": 2.298477967504283e-11,
      "limit": 1e-08
    },
    {
      "test": "Imposed tensor shear",
      "error": 6.942281208919283e-19,
      "limit": 1e-12
    },
    {
      "test": "65 to 129 relative energy change",
      "error": 1.2483681042674277e-05,
      "limit": 0.002
    },
    {
      "test": "Refinement reduces energy difference",
      "error": 0.00754672721351539,
      "limit": 0.5
    },
    {
      "test": "solve_direct rejects unconverged solve",
      "passed": true
    },
    {
      "test": "solve_equivalent rejects unconverged solve",
      "passed": true
    }
  ],
  "spatial_convergence": {
    "grids": [
      33,
      65,
      129
    ],
    "energies": [
      2.223838244109954e-06,
      2.227523024719576e-06,
      2.2275508327536785e-06
    ]
  },
  "scope": "2D, periodic, prescribed mean strain, positive cubic stiffness; no vacuum or evolving phase field"
}
