Test integral variant for Regge/HHJ #6039
8078 tests run, 6489 passed, 1583 skipped, 6 failed.
Annotations
Check failure on line 282 in tests/vertexonly/test_interpolation_from_parent.py
github-actions / Firedrake complex
test_interpolation_from_parent.test_tensor_function_interpolation[shiftedmesh-mesh-100-coords-FunctionSpace(Regge2)]
AssertionError: assert False
+ where False = <function allclose at 0x7f9dd61272b0>(array([[[ 1.43674311e-01-5.75803892e-18j,\n 1.24372901e-01-3.09334946e-18j],\n [ 1.24372901e-01-3.09334946e-18j,\n 1.06107460e-01+1.42886668e-19j]],\n\n [[ 1.00013901e-02+8.09161872e-20j,\n 1.49278171e-02-2.75899387e-18j],\n [ 1.49278171e-02-2.75899387e-18j,\n 1.51586555e-01-5.27523919e-18j]],\n\n [[ 3.31461468e-02+1.28190266e-19j,\n 5.06537791e-02+4.50552716e-19j],\n [ 5.06537791e-02+4.50552716e-19j,\n 7.79804048e-02-3.61111865e-33j]],\n\n [[ 6.27816587e-03+3.62577855e-20j,\n 1.76284326e-02+3.39829104e-19j],\n [ 1.76284326e-02+3.39829104e-19j,\n 5.86353656e-02-6.01853108e-34j]],\n\n [[ 2.13087119e-01+1.91452984e-19j,\n -4.93939794e-02+8.52344267e-18j],\n [-4.93939794e-02+8.52344267e-18j,\n 1.06398469e-02-6.01853108e-34j]],\n\n [[ 6.76448476e-03+1.22215946e-19j,\n 1.43758718e-02+4.29554664e-19j],\n [ 1.43758718e-02+4.29554664e-19j,\n 3.14640065e-02-2.40741243e-33j]],\n\n [[ 2.27120711e-01+1.30772302e-19j,\n -1.27013888e-01+8.12009194e-18j],\n [-1.27013888e-01+8.12009194e-18j,\n 4.83806987e-02+0.00000000e+00... [[ 9.80934964e-03-7.93934480e-19j,\n -2.61702863e-02-5.44361726e-19j],\n [-2.61702863e-02-5.44361726e-19j,\n 5.63826646e-02+9.82629904e-20j]],\n\n [[ 7.16363728e-02-2.00107500e-18j,\n -3.19287889e-02-1.21589899e-18j],\n [-3.19287889e-02-1.21589899e-18j,\n 6.45009799e-03+1.43574330e-19j]],\n\n [[ 1.71234764e-02+1.07516490e-19j,\n 2.85390569e-02+6.29817015e-20j],\n [ 2.85390569e-02+6.29817015e-20j,\n 5.17205577e-02+1.20370622e-33j]],\n\n [[ 1.76037448e-01-6.54663493e-18j,\n -1.03851951e-02-3.46211306e-18j],\n [-1.03851951e-02-3.46211306e-18j,\n 1.24296098e-04+1.25863732e-19j]],\n\n [[ 1.84868507e-02+1.04269169e-19j,\n 4.11319594e-02+3.66476789e-19j],\n [ 4.11319594e-02+3.66476789e-19j,\n 1.07929325e-01-4.81482486e-33j]],\n\n [[ 4.79679212e-02+1.37299416e-20j,\n 8.39663046e-02+8.04281359e-21j],\n [ 8.39663046e-02+8.04281359e-21j,\n 1.39923807e-01+3.00926554e-34j]],\n\n [[ 3.13298757e-01-7.72759155e-19j,\n 1.87898647e-01-4.08664847e-19j],\n [ 1.87898647e-01-4.08664847e-19j,\n 1.08454218e-01+1.48568466e-20j]]]), array([[[ 1.28112370e-01-0.j, 1.16591930e-01-0.j],\n [ 1.16591930e-01-0.j, 1.06107460e-01-0.j]],\n\n [[ 1.00013901e-02-0.j, 4.62988588e-02-0.j],\n [ 4.62988588e-02-0.j, 2.14328639e-01-0.j]],\n\n [[ 3.31461468e-02-0.j, 5.08404361e-02-0.j],\n [ 5.08404361e-02-0.j, 7.79804048e-02-0.j]],\n\n [[ 6.27816587e-03-0.j, 1.91865200e-02-0.j],\n [ 1.91865200e-02-0.j, 5.86353656e-02-0.j]],\n\n [[ 2.13087119e-01-0.j, -4.76152739e-02+0.j],\n [-4.76152739e-02+0.j, 1.06398469e-02+0.j]],\n\n [[ 6.76448476e-03-0.j, 1.45889613e-02-0.j],\n [ 1.45889613e-02-0.j, 3.14640065e-02-0.j]],\n\n [[ 2.27120711e-01-0.j, -1.04824895e-01+0.j],\n [-1.04824895e-01+0.j, 4.83806987e-02+0.j]],\n\n [[ 4.30518717e-03+0.j, -1.70338262e-02+0.j],\n [-1.70338262e-02+0.j, 6.73957309e-02-0.j]],\n\n [[ 8.51567131e-03+0.j, -2.42277159e-02+0.j],\n [-2.42277159e-02+0.j, 6.89296471e-02-0.j]],\n\n [[ 5.24647599e-02-0.j, -2.21183142e-02+0.j],\n [-2.21183142e-02+0.j, 9.32473200e-03+0.j]],\n\n [[ 6.21136065e-03+0.j, -1.05306696e-02+0.j],\n [-1.05306696e-02+0.j, 1.78535764e-02-0.j]],\n\n [[ 9.88263557e-02+0.j, -1...e-01+0.j, 1.30802302e-01-0.j]],\n\n [[ 2.04039612e-03-0.j, -3.93571046e-04+0.j],\n [-3.93571046e-04+0.j, 7.59157337e-05+0.j]],\n\n [[ 1.47411213e-01-0.j, -1.41610458e-01+0.j],\n [-1.41610458e-01+0.j, 1.36037967e-01+0.j]],\n\n [[ 2.98657995e-01+0.j, -1.70571807e-01+0.j],\n [-1.70571807e-01+0.j, 9.74182567e-02-0.j]],\n\n [[ 2.93843368e-01+0.j, -2.12126270e-01+0.j],\n [-2.12126270e-01+0.j, 1.53134491e-01-0.j]],\n\n [[ 1.14137763e-02-0.j, -2.53680729e-02+0.j],\n [-2.53680729e-02+0.j, 5.63826646e-02+0.j]],\n\n [[ 8.78779331e-02+0.j, -2.38080087e-02+0.j],\n [-2.38080087e-02+0.j, 6.45009799e-03-0.j]],\n\n [[ 1.71234764e-02+0.j, 2.97596329e-02+0.j],\n [ 2.97596329e-02+0.j, 5.17205577e-02+0.j]],\n\n [[ 1.87161402e-01+0.j, -4.82321801e-03+0.j],\n [-4.82321801e-03+0.j, 1.24296098e-04-0.j]],\n\n [[ 1.84868507e-02+0.j, 4.46684825e-02+0.j],\n [ 4.46684825e-02+0.j, 1.07929325e-01+0.j]],\n\n [[ 4.79679212e-02+0.j, 8.19259064e-02+0.j],\n [ 8.19259064e-02+0.j, 1.39923807e-01+0.j]],\n\n [[ 2.95606040e-01+0.j, 1.79052288e-01+0.j],\n [ 1.79052288e-01+0.j, 1.08454218e-01+0.j]]]))
+ where <function allclose at 0x7f9dd61272b0> = np.allclose
+ and array([[[ 1.43674311e-01-5.75803892e-18j,\n 1.24372901e-01-3.09334946e-18j],\n [ 1.24372901e-01-3.09334946e-18j,\n 1.06107460e-01+1.42886668e-19j]],\n\n [[ 1.00013901e-02+8.09161872e-20j,\n 1.49278171e-02-2.75899387e-18j],\n [ 1.49278171e-02-2.75899387e-18j,\n 1.51586555e-01-5.27523919e-18j]],\n\n [[ 3.31461468e-02+1.28190266e-19j,\n 5.06537791e-02+4.50552716e-19j],\n [ 5.06537791e-02+4.50552716e-19j,\n 7.79804048e-02-3.61111865e-33j]],\n\n [[ 6.27816587e-03+3.62577855e-20j,\n 1.76284326e-02+3.39829104e-19j],\n [ 1.76284326e-02+3.39829104e-19j,\n 5.86353656e-02-6.01853108e-34j]],\n\n [[ 2.13087119e-01+1.91452984e-19j,\n -4.93939794e-02+8.52344267e-18j],\n [-4.93939794e-02+8.52344267e-18j,\n 1.06398469e-02-6.01853108e-34j]],\n\n [[ 6.76448476e-03+1.22215946e-19j,\n 1.43758718e-02+4.29554664e-19j],\n [ 1.43758718e-02+4.29554664e-19j,\n 3.14640065e-02-2.40741243e-33j]],\n\n [[ 2.27120711e-01+1.30772302e-19j,\n -1.27013888e-01+8.12009194e-18j],\n [-1.27013888e-01+8.12009194e-18j,\n 4.83806987e-02+0.00000000e+00... [[ 9.80934964e-03-7.93934480e-19j,\n -2.61702863e-02-5.44361726e-19j],\n [-2.61702863e-02-5.44361726e-19j,\n 5.63826646e-02+9.82629904e-20j]],\n\n [[ 7.16363728e-02-2.00107500e-18j,\n -3.19287889e-02-1.21589899e-18j],\n [-3.19287889e-02-1.21589899e-18j,\n 6.45009799e-03+1.43574330e-19j]],\n\n [[ 1.71234764e-02+1.07516490e-19j,\n 2.85390569e-02+6.29817015e-20j],\n [ 2.85390569e-02+6.29817015e-20j,\n 5.17205577e-02+1.20370622e-33j]],\n\n [[ 1.76037448e-01-6.54663493e-18j,\n -1.03851951e-02-3.46211306e-18j],\n [-1.03851951e-02-3.46211306e-18j,\n 1.24296098e-04+1.25863732e-19j]],\n\n [[ 1.84868507e-02+1.04269169e-19j,\n 4.11319594e-02+3.66476789e-19j],\n [ 4.11319594e-02+3.66476789e-19j,\n 1.07929325e-01-4.81482486e-33j]],\n\n [[ 4.79679212e-02+1.37299416e-20j,\n 8.39663046e-02+8.04281359e-21j],\n [ 8.39663046e-02+8.04281359e-21j,\n 1.39923807e-01+3.00926554e-34j]],\n\n [[ 3.13298757e-01-7.72759155e-19j,\n 1.87898647e-01-4.08664847e-19j],\n [ 1.87898647e-01-4.08664847e-19j,\n 1.08454218e-01+1.48568466e-20j]]]) = <built-in method reshape of numpy.ndarray object at 0x7f9d968ad0b0>((23, 2, 2))
+ where <built-in method reshape of numpy.ndarray object at 0x7f9d968ad0b0> = array([[[ 1.43674311e-01-5.75803892e-18j,\n 1.24372901e-01-3.09334946e-18j],\n [ 1.24372901e-01-3.09334946e-18j,\n 1.06107460e-01+1.42886668e-19j]],\n\n [[ 1.00013901e-02+8.09161872e-20j,\n 1.49278171e-02-2.75899387e-18j],\n [ 1.49278171e-02-2.75899387e-18j,\n 1.51586555e-01-5.27523919e-18j]],\n\n [[ 3.31461468e-02+1.28190266e-19j,\n 5.06537791e-02+4.50552716e-19j],\n [ 5.06537791e-02+4.50552716e-19j,\n 7.79804048e-02-3.61111865e-33j]],\n\n [[ 6.27816587e-03+3.62577855e-20j,\n 1.76284326e-02+3.39829104e-19j],\n [ 1.76284326e-02+3.39829104e-19j,\n 5.86353656e-02-6.01853108e-34j]],\n\n [[ 2.13087119e-01+1.91452984e-19j,\n -4.93939794e-02+8.52344267e-18j],\n [-4.93939794e-02+8.52344267e-18j,\n 1.06398469e-02-6.01853108e-34j]],\n\n [[ 6.76448476e-03+1.22215946e-19j,\n 1.43758718e-02+4.29554664e-19j],\n [ 1.43758718e-02+4.29554664e-19j,\n 3.14640065e-02-2.40741243e-33j]],\n\n [[ 2.27120711e-01+1.30772302e-19j,\n -1.27013888e-01+8.12009194e-18j],\n [-1.27013888e-01+8.12009194e-18j,\n 4.83806987e-02+0.00000000e+00... [[ 9.80934964e-03-7.93934480e-19j,\n -2.61702863e-02-5.44361726e-19j],\n [-2.61702863e-02-5.44361726e-19j,\n 5.63826646e-02+9.82629904e-20j]],\n\n [[ 7.16363728e-02-2.00107500e-18j,\n -3.19287889e-02-1.21589899e-18j],\n [-3.19287889e-02-1.21589899e-18j,\n 6.45009799e-03+1.43574330e-19j]],\n\n [[ 1.71234764e-02+1.07516490e-19j,\n 2.85390569e-02+6.29817015e-20j],\n [ 2.85390569e-02+6.29817015e-20j,\n 5.17205577e-02+1.20370622e-33j]],\n\n [[ 1.76037448e-01-6.54663493e-18j,\n -1.03851951e-02-3.46211306e-18j],\n [-1.03851951e-02-3.46211306e-18j,\n 1.24296098e-04+1.25863732e-19j]],\n\n [[ 1.84868507e-02+1.04269169e-19j,\n 4.11319594e-02+3.66476789e-19j],\n [ 4.11319594e-02+3.66476789e-19j,\n 1.07929325e-01-4.81482486e-33j]],\n\n [[ 4.79679212e-02+1.37299416e-20j,\n 8.39663046e-02+8.04281359e-21j],\n [ 8.39663046e-02+8.04281359e-21j,\n 1.39923807e-01+3.00926554e-34j]],\n\n [[ 3.13298757e-01-7.72759155e-19j,\n 1.87898647e-01-4.08664847e-19j],\n [ 1.87898647e-01-4.08664847e-19j,\n 1.08454218e-01+1.48568466e-20j]]]).reshape
+ where array([[[ 1.43674311e-01-5.75803892e-18j,\n 1.24372901e-01-3.09334946e-18j],\n [ 1.24372901e-01-3.09334946e-18j,\n 1.06107460e-01+1.42886668e-19j]],\n\n [[ 1.00013901e-02+8.09161872e-20j,\n 1.49278171e-02-2.75899387e-18j],\n [ 1.49278171e-02-2.75899387e-18j,\n 1.51586555e-01-5.27523919e-18j]],\n\n [[ 3.31461468e-02+1.28190266e-19j,\n 5.06537791e-02+4.50552716e-19j],\n [ 5.06537791e-02+4.50552716e-19j,\n 7.79804048e-02-3.61111865e-33j]],\n\n [[ 6.27816587e-03+3.62577855e-20j,\n 1.76284326e-02+3.39829104e-19j],\n [ 1.76284326e-02+3.39829104e-19j,\n 5.86353656e-02-6.01853108e-34j]],\n\n [[ 2.13087119e-01+1.91452984e-19j,\n -4.93939794e-02+8.52344267e-18j],\n [-4.93939794e-02+8.52344267e-18j,\n 1.06398469e-02-6.01853108e-34j]],\n\n [[ 6.76448476e-03+1.22215946e-19j,\n 1.43758718e-02+4.29554664e-19j],\n [ 1.43758718e-02+4.29554664e-19j,\n 3.14640065e-02-2.40741243e-33j]],\n\n [[ 2.27120711e-01+1.30772302e-19j,\n -1.27013888e-01+8.12009194e-18j],\n [-1.27013888e-01+8.12009194e-18j,\n 4.83806987e-02+0.00000000e+00... [[ 9.80934964e-03-7.93934480e-19j,\n -2.61702863e-02-5.44361726e-19j],\n [-2.61702863e-02-5.44361726e-19j,\n 5.63826646e-02+9.82629904e-20j]],\n\n [[ 7.16363728e-02-2.00107500e-18j,\n -3.19287889e-02-1.21589899e-18j],\n [-3.19287889e-02-1.21589899e-18j,\n 6.45009799e-03+1.43574330e-19j]],\n\n [[ 1.71234764e-02+1.07516490e-19j,\n 2.85390569e-02+6.29817015e-20j],\n [ 2.85390569e-02+6.29817015e-20j,\n 5.17205577e-02+1.20370622e-33j]],\n\n [[ 1.76037448e-01-6.54663493e-18j,\n -1.03851951e-02-3.46211306e-18j],\n [-1.03851951e-02-3.46211306e-18j,\n 1.24296098e-04+1.25863732e-19j]],\n\n [[ 1.84868507e-02+1.04269169e-19j,\n 4.11319594e-02+3.66476789e-19j],\n [ 4.11319594e-02+3.66476789e-19j,\n 1.07929325e-01-4.81482486e-33j]],\n\n [[ 4.79679212e-02+1.37299416e-20j,\n 8.39663046e-02+8.04281359e-21j],\n [ 8.39663046e-02+8.04281359e-21j,\n 1.39923807e-01+3.00926554e-34j]],\n\n [[ 3.13298757e-01-7.72759155e-19j,\n 1.87898647e-01-4.08664847e-19j],\n [ 1.87898647e-01-4.08664847e-19j,\n 1.08454218e-01+1.48568466e-20j]]]) = Dat(DataSet(Set((np.int64(23), np.int64(23), np.int64(23)), 'set_#x7f9d96beaa20'), (2, 2), 'None_nodes_dset'), None, dtype('complex128'), 'function_3268').data_ro
+ where Dat(DataSet(Set((np.int64(23), np.int64(23), np.int64(23)), 'set_#x7f9d96beaa20'), (2, 2), 'None_nodes_dset'), None, dtype('complex128'), 'function_3268') = Coefficient(WithGeometry(FunctionSpace(<firedrake.mesh.VertexOnlyMeshTopology object at 0x7f9d96a52ab0>, TensorElement(FiniteElement('Discontinuous Lagrange', vertex, 0), shape=(2, 2), symmetry={}), name=None), Mesh(VectorElement(FiniteElement('Discontinuous Lagrange', Cell(vertex, 2), 0), dim=2), 3262)), 5884).dat
+ and (23, 2, 2) = array([[[ 1.28112370e-01-0.j, 1.16591930e-01-0.j],\n [ 1.16591930e-01-0.j, 1.06107460e-01-0.j]],\n\n [[ 1.00013901e-02-0.j, 4.62988588e-02-0.j],\n [ 4.62988588e-02-0.j, 2.14328639e-01-0.j]],\n\n [[ 3.31461468e-02-0.j, 5.08404361e-02-0.j],\n [ 5.08404361e-02-0.j, 7.79804048e-02-0.j]],\n\n [[ 6.27816587e-03-0.j, 1.91865200e-02-0.j],\n [ 1.91865200e-02-0.j, 5.86353656e-02-0.j]],\n\n [[ 2.13087119e-01-0.j, -4.76152739e-02+0.j],\n [-4.76152739e-02+0.j, 1.06398469e-02+0.j]],\n\n [[ 6.76448476e-03-0.j, 1.45889613e-02-0.j],\n [ 1.45889613e-02-0.j, 3.14640065e-02-0.j]],\n\n [[ 2.27120711e-01-0.j, -1.04824895e-01+0.j],\n [-1.04824895e-01+0.j, 4.83806987e-02+0.j]],\n\n [[ 4.30518717e-03+0.j, -1.70338262e-02+0.j],\n [-1.70338262e-02+0.j, 6.73957309e-02-0.j]],\n\n [[ 8.51567131e-03+0.j, -2.42277159e-02+0.j],\n [-2.42277159e-02+0.j, 6.89296471e-02-0.j]],\n\n [[ 5.24647599e-02-0.j, -2.21183142e-02+0.j],\n [-2.21183142e-02+0.j, 9.32473200e-03+0.j]],\n\n [[ 6.21136065e-03+0.j, -1.05306696e-02+0.j],\n [-1.05306696e-02+0.j, 1.78535764e-02-0.j]],\n\n [[ 9.88263557e-02+0.j, -1...e-01+0.j, 1.30802302e-01-0.j]],\n\n [[ 2.04039612e-03-0.j, -3.93571046e-04+0.j],\n [-3.93571046e-04+0.j, 7.59157337e-05+0.j]],\n\n [[ 1.47411213e-01-0.j, -1.41610458e-01+0.j],\n [-1.41610458e-01+0.j, 1.36037967e-01+0.j]],\n\n [[ 2.98657995e-01+0.j, -1.70571807e-01+0.j],\n [-1.70571807e-01+0.j, 9.74182567e-02-0.j]],\n\n [[ 2.93843368e-01+0.j, -2.12126270e-01+0.j],\n [-2.12126270e-01+0.j, 1.53134491e-01-0.j]],\n\n [[ 1.14137763e-02-0.j, -2.53680729e-02+0.j],\n [-2.53680729e-02+0.j, 5.63826646e-02+0.j]],\n\n [[ 8.78779331e-02+0.j, -2.38080087e-02+0.j],\n [-2.38080087e-02+0.j, 6.45009799e-03-0.j]],\n\n [[ 1.71234764e-02+0.j, 2.97596329e-02+0.j],\n [ 2.97596329e-02+0.j, 5.17205577e-02+0.j]],\n\n [[ 1.87161402e-01+0.j, -4.82321801e-03+0.j],\n [-4.82321801e-03+0.j, 1.24296098e-04-0.j]],\n\n [[ 1.84868507e-02+0.j, 4.46684825e-02+0.j],\n [ 4.46684825e-02+0.j, 1.07929325e-01+0.j]],\n\n [[ 4.79679212e-02+0.j, 8.19259064e-02+0.j],\n [ 8.19259064e-02+0.j, 1.39923807e-01+0.j]],\n\n [[ 2.95606040e-01+0.j, 1.79052288e-01+0.j],\n [ 1.79052288e-01+0.j, 1.08454218e-01+0.j]]]).shape
Raw output
parentmesh = Mesh(VectorElement(FiniteElement('Lagrange', triangle, 1), dim=2), 3256)
vertexcoords = array([[-0.35792788+0.j, -0.3257414 +0.j],
[-0.10000695+0.j, -0.46295641+0.j],
[-0.18206083+0.j, -0.2792....13596636+0.j, 0.32852599+0.j],
[ 0.2190158 +0.j, 0.37406391+0.j],
[ 0.54369664+0.j, 0.32932388+0.j]])
tfs = ('Regge', 2, <cyfunction FunctionSpace at 0x7f9dc894bac0>)
def test_tensor_function_interpolation(parentmesh, vertexcoords, tfs):
if parentmesh.name == "immersedsphere":
vertexcoords = immersed_sphere_vertexcoords(parentmesh, vertexcoords)
tfs_fam, tfs_deg, tfs_typ = tfs
vm = VertexOnlyMesh(parentmesh, vertexcoords, missing_points_behaviour=None)
vertexcoords = vm.coordinates.dat.data_ro
if (
parentmesh.coordinates.function_space().ufl_element().family()
== "Discontinuous Lagrange"
):
pytest.skip(f"Interpolating into f{tfs_fam} on a periodic mesh is not well-defined.")
V = tfs_typ(parentmesh, tfs_fam, tfs_deg)
W = TensorFunctionSpace(vm, "DG", 0)
x = SpatialCoordinate(parentmesh)
# use outer product to check Regge works
expr = outer(x, x)
assert W.shape == expr.ufl_shape
v = Function(V).interpolate(expr)
result = np.asarray([np.outer(vertexcoords[i], vertexcoords[i]) for i in range(len(vertexcoords))])
if len(result) == 0:
result = result.reshape(vertexcoords.shape + (parentmesh.geometric_dimension(),))
w_v = assemble(interpolate(v, W))
> assert np.allclose(w_v.dat.data_ro.reshape(result.shape), result)
E AssertionError: assert False
E + where False = <function allclose at 0x7f9dd61272b0>(array([[[ 1.43674311e-01-5.75803892e-18j,\n 1.24372901e-01-3.09334946e-18j],\n [ 1.24372901e-01-3.09334946e-18j,\n 1.06107460e-01+1.42886668e-19j]],\n\n [[ 1.00013901e-02+8.09161872e-20j,\n 1.49278171e-02-2.75899387e-18j],\n [ 1.49278171e-02-2.75899387e-18j,\n 1.51586555e-01-5.27523919e-18j]],\n\n [[ 3.31461468e-02+1.28190266e-19j,\n 5.06537791e-02+4.50552716e-19j],\n [ 5.06537791e-02+4.50552716e-19j,\n 7.79804048e-02-3.61111865e-33j]],\n\n [[ 6.27816587e-03+3.62577855e-20j,\n 1.76284326e-02+3.39829104e-19j],\n [ 1.76284326e-02+3.39829104e-19j,\n 5.86353656e-02-6.01853108e-34j]],\n\n [[ 2.13087119e-01+1.91452984e-19j,\n -4.93939794e-02+8.52344267e-18j],\n [-4.93939794e-02+8.52344267e-18j,\n 1.06398469e-02-6.01853108e-34j]],\n\n [[ 6.76448476e-03+1.22215946e-19j,\n 1.43758718e-02+4.29554664e-19j],\n [ 1.43758718e-02+4.29554664e-19j,\n 3.14640065e-02-2.40741243e-33j]],\n\n [[ 2.27120711e-01+1.30772302e-19j,\n -1.27013888e-01+8.12009194e-18j],\n [-1.27013888e-01+8.12009194e-18j,\n 4.83806987e-02+0.00000000e+00... [[ 9.80934964e-03-7.93934480e-19j,\n -2.61702863e-02-5.44361726e-19j],\n [-2.61702863e-02-5.44361726e-19j,\n 5.63826646e-02+9.82629904e-20j]],\n\n [[ 7.16363728e-02-2.00107500e-18j,\n -3.19287889e-02-1.21589899e-18j],\n [-3.19287889e-02-1.21589899e-18j,\n 6.45009799e-03+1.43574330e-19j]],\n\n [[ 1.71234764e-02+1.07516490e-19j,\n 2.85390569e-02+6.29817015e-20j],\n [ 2.85390569e-02+6.29817015e-20j,\n 5.17205577e-02+1.20370622e-33j]],\n\n [[ 1.76037448e-01-6.54663493e-18j,\n -1.03851951e-02-3.46211306e-18j],\n [-1.03851951e-02-3.46211306e-18j,\n 1.24296098e-04+1.25863732e-19j]],\n\n [[ 1.84868507e-02+1.04269169e-19j,\n 4.11319594e-02+3.66476789e-19j],\n [ 4.11319594e-02+3.66476789e-19j,\n 1.07929325e-01-4.81482486e-33j]],\n\n [[ 4.79679212e-02+1.37299416e-20j,\n 8.39663046e-02+8.04281359e-21j],\n [ 8.39663046e-02+8.04281359e-21j,\n 1.39923807e-01+3.00926554e-34j]],\n\n [[ 3.13298757e-01-7.72759155e-19j,\n 1.87898647e-01-4.08664847e-19j],\n [ 1.87898647e-01-4.08664847e-19j,\n 1.08454218e-01+1.48568466e-20j]]]), array([[[ 1.28112370e-01-0.j, 1.16591930e-01-0.j],\n [ 1.16591930e-01-0.j, 1.06107460e-01-0.j]],\n\n [[ 1.00013901e-02-0.j, 4.62988588e-02-0.j],\n [ 4.62988588e-02-0.j, 2.14328639e-01-0.j]],\n\n [[ 3.31461468e-02-0.j, 5.08404361e-02-0.j],\n [ 5.08404361e-02-0.j, 7.79804048e-02-0.j]],\n\n [[ 6.27816587e-03-0.j, 1.91865200e-02-0.j],\n [ 1.91865200e-02-0.j, 5.86353656e-02-0.j]],\n\n [[ 2.13087119e-01-0.j, -4.76152739e-02+0.j],\n [-4.76152739e-02+0.j, 1.06398469e-02+0.j]],\n\n [[ 6.76448476e-03-0.j, 1.45889613e-02-0.j],\n [ 1.45889613e-02-0.j, 3.14640065e-02-0.j]],\n\n [[ 2.27120711e-01-0.j, -1.04824895e-01+0.j],\n [-1.04824895e-01+0.j, 4.83806987e-02+0.j]],\n\n [[ 4.30518717e-03+0.j, -1.70338262e-02+0.j],\n [-1.70338262e-02+0.j, 6.73957309e-02-0.j]],\n\n [[ 8.51567131e-03+0.j, -2.42277159e-02+0.j],\n [-2.42277159e-02+0.j, 6.89296471e-02-0.j]],\n\n [[ 5.24647599e-02-0.j, -2.21183142e-02+0.j],\n [-2.21183142e-02+0.j, 9.32473200e-03+0.j]],\n\n [[ 6.21136065e-03+0.j, -1.05306696e-02+0.j],\n [-1.05306696e-02+0.j, 1.78535764e-02-0.j]],\n\n [[ 9.88263557e-02+0.j, -1...e-01+0.j, 1.30802302e-01-0.j]],\n\n [[ 2.04039612e-03-0.j, -3.93571046e-04+0.j],\n [-3.93571046e-04+0.j, 7.59157337e-05+0.j]],\n\n [[ 1.47411213e-01-0.j, -1.41610458e-01+0.j],\n [-1.41610458e-01+0.j, 1.36037967e-01+0.j]],\n\n [[ 2.98657995e-01+0.j, -1.70571807e-01+0.j],\n [-1.70571807e-01+0.j, 9.74182567e-02-0.j]],\n\n [[ 2.93843368e-01+0.j, -2.12126270e-01+0.j],\n [-2.12126270e-01+0.j, 1.53134491e-01-0.j]],\n\n [[ 1.14137763e-02-0.j, -2.53680729e-02+0.j],\n [-2.53680729e-02+0.j, 5.63826646e-02+0.j]],\n\n [[ 8.78779331e-02+0.j, -2.38080087e-02+0.j],\n [-2.38080087e-02+0.j, 6.45009799e-03-0.j]],\n\n [[ 1.71234764e-02+0.j, 2.97596329e-02+0.j],\n [ 2.97596329e-02+0.j, 5.17205577e-02+0.j]],\n\n [[ 1.87161402e-01+0.j, -4.82321801e-03+0.j],\n [-4.82321801e-03+0.j, 1.24296098e-04-0.j]],\n\n [[ 1.84868507e-02+0.j, 4.46684825e-02+0.j],\n [ 4.46684825e-02+0.j, 1.07929325e-01+0.j]],\n\n [[ 4.79679212e-02+0.j, 8.19259064e-02+0.j],\n [ 8.19259064e-02+0.j, 1.39923807e-01+0.j]],\n\n [[ 2.95606040e-01+0.j, 1.79052288e-01+0.j],\n [ 1.79052288e-01+0.j, 1.08454218e-01+0.j]]]))
E + where <function allclose at 0x7f9dd61272b0> = np.allclose
E + and array([[[ 1.43674311e-01-5.75803892e-18j,\n 1.24372901e-01-3.09334946e-18j],\n [ 1.24372901e-01-3.09334946e-18j,\n 1.06107460e-01+1.42886668e-19j]],\n\n [[ 1.00013901e-02+8.09161872e-20j,\n 1.49278171e-02-2.75899387e-18j],\n [ 1.49278171e-02-2.75899387e-18j,\n 1.51586555e-01-5.27523919e-18j]],\n\n [[ 3.31461468e-02+1.28190266e-19j,\n 5.06537791e-02+4.50552716e-19j],\n [ 5.06537791e-02+4.50552716e-19j,\n 7.79804048e-02-3.61111865e-33j]],\n\n [[ 6.27816587e-03+3.62577855e-20j,\n 1.76284326e-02+3.39829104e-19j],\n [ 1.76284326e-02+3.39829104e-19j,\n 5.86353656e-02-6.01853108e-34j]],\n\n [[ 2.13087119e-01+1.91452984e-19j,\n -4.93939794e-02+8.52344267e-18j],\n [-4.93939794e-02+8.52344267e-18j,\n 1.06398469e-02-6.01853108e-34j]],\n\n [[ 6.76448476e-03+1.22215946e-19j,\n 1.43758718e-02+4.29554664e-19j],\n [ 1.43758718e-02+4.29554664e-19j,\n 3.14640065e-02-2.40741243e-33j]],\n\n [[ 2.27120711e-01+1.30772302e-19j,\n -1.27013888e-01+8.12009194e-18j],\n [-1.27013888e-01+8.12009194e-18j,\n 4.83806987e-02+0.00000000e+00... [[ 9.80934964e-03-7.93934480e-19j,\n -2.61702863e-02-5.44361726e-19j],\n [-2.61702863e-02-5.44361726e-19j,\n 5.63826646e-02+9.82629904e-20j]],\n\n [[ 7.16363728e-02-2.00107500e-18j,\n -3.19287889e-02-1.21589899e-18j],\n [-3.19287889e-02-1.21589899e-18j,\n 6.45009799e-03+1.43574330e-19j]],\n\n [[ 1.71234764e-02+1.07516490e-19j,\n 2.85390569e-02+6.29817015e-20j],\n [ 2.85390569e-02+6.29817015e-20j,\n 5.17205577e-02+1.20370622e-33j]],\n\n [[ 1.76037448e-01-6.54663493e-18j,\n -1.03851951e-02-3.46211306e-18j],\n [-1.03851951e-02-3.46211306e-18j,\n 1.24296098e-04+1.25863732e-19j]],\n\n [[ 1.84868507e-02+1.04269169e-19j,\n 4.11319594e-02+3.66476789e-19j],\n [ 4.11319594e-02+3.66476789e-19j,\n 1.07929325e-01-4.81482486e-33j]],\n\n [[ 4.79679212e-02+1.37299416e-20j,\n 8.39663046e-02+8.04281359e-21j],\n [ 8.39663046e-02+8.04281359e-21j,\n 1.39923807e-01+3.00926554e-34j]],\n\n [[ 3.13298757e-01-7.72759155e-19j,\n 1.87898647e-01-4.08664847e-19j],\n [ 1.87898647e-01-4.08664847e-19j,\n 1.08454218e-01+1.48568466e-20j]]]) = <built-in method reshape of numpy.ndarray object at 0x7f9d968ad0b0>((23, 2, 2))
E + where <built-in method reshape of numpy.ndarray object at 0x7f9d968ad0b0> = array([[[ 1.43674311e-01-5.75803892e-18j,\n 1.24372901e-01-3.09334946e-18j],\n [ 1.24372901e-01-3.09334946e-18j,\n 1.06107460e-01+1.42886668e-19j]],\n\n [[ 1.00013901e-02+8.09161872e-20j,\n 1.49278171e-02-2.75899387e-18j],\n [ 1.49278171e-02-2.75899387e-18j,\n 1.51586555e-01-5.27523919e-18j]],\n\n [[ 3.31461468e-02+1.28190266e-19j,\n 5.06537791e-02+4.50552716e-19j],\n [ 5.06537791e-02+4.50552716e-19j,\n 7.79804048e-02-3.61111865e-33j]],\n\n [[ 6.27816587e-03+3.62577855e-20j,\n 1.76284326e-02+3.39829104e-19j],\n [ 1.76284326e-02+3.39829104e-19j,\n 5.86353656e-02-6.01853108e-34j]],\n\n [[ 2.13087119e-01+1.91452984e-19j,\n -4.93939794e-02+8.52344267e-18j],\n [-4.93939794e-02+8.52344267e-18j,\n 1.06398469e-02-6.01853108e-34j]],\n\n [[ 6.76448476e-03+1.22215946e-19j,\n 1.43758718e-02+4.29554664e-19j],\n [ 1.43758718e-02+4.29554664e-19j,\n 3.14640065e-02-2.40741243e-33j]],\n\n [[ 2.27120711e-01+1.30772302e-19j,\n -1.27013888e-01+8.12009194e-18j],\n [-1.27013888e-01+8.12009194e-18j,\n 4.83806987e-02+0.00000000e+00... [[ 9.80934964e-03-7.93934480e-19j,\n -2.61702863e-02-5.44361726e-19j],\n [-2.61702863e-02-5.44361726e-19j,\n 5.63826646e-02+9.82629904e-20j]],\n\n [[ 7.16363728e-02-2.00107500e-18j,\n -3.19287889e-02-1.21589899e-18j],\n [-3.19287889e-02-1.21589899e-18j,\n 6.45009799e-03+1.43574330e-19j]],\n\n [[ 1.71234764e-02+1.07516490e-19j,\n 2.85390569e-02+6.29817015e-20j],\n [ 2.85390569e-02+6.29817015e-20j,\n 5.17205577e-02+1.20370622e-33j]],\n\n [[ 1.76037448e-01-6.54663493e-18j,\n -1.03851951e-02-3.46211306e-18j],\n [-1.03851951e-02-3.46211306e-18j,\n 1.24296098e-04+1.25863732e-19j]],\n\n [[ 1.84868507e-02+1.04269169e-19j,\n 4.11319594e-02+3.66476789e-19j],\n [ 4.11319594e-02+3.66476789e-19j,\n 1.07929325e-01-4.81482486e-33j]],\n\n [[ 4.79679212e-02+1.37299416e-20j,\n 8.39663046e-02+8.04281359e-21j],\n [ 8.39663046e-02+8.04281359e-21j,\n 1.39923807e-01+3.00926554e-34j]],\n\n [[ 3.13298757e-01-7.72759155e-19j,\n 1.87898647e-01-4.08664847e-19j],\n [ 1.87898647e-01-4.08664847e-19j,\n 1.08454218e-01+1.48568466e-20j]]]).reshape
E + where array([[[ 1.43674311e-01-5.75803892e-18j,\n 1.24372901e-01-3.09334946e-18j],\n [ 1.24372901e-01-3.09334946e-18j,\n 1.06107460e-01+1.42886668e-19j]],\n\n [[ 1.00013901e-02+8.09161872e-20j,\n 1.49278171e-02-2.75899387e-18j],\n [ 1.49278171e-02-2.75899387e-18j,\n 1.51586555e-01-5.27523919e-18j]],\n\n [[ 3.31461468e-02+1.28190266e-19j,\n 5.06537791e-02+4.50552716e-19j],\n [ 5.06537791e-02+4.50552716e-19j,\n 7.79804048e-02-3.61111865e-33j]],\n\n [[ 6.27816587e-03+3.62577855e-20j,\n 1.76284326e-02+3.39829104e-19j],\n [ 1.76284326e-02+3.39829104e-19j,\n 5.86353656e-02-6.01853108e-34j]],\n\n [[ 2.13087119e-01+1.91452984e-19j,\n -4.93939794e-02+8.52344267e-18j],\n [-4.93939794e-02+8.52344267e-18j,\n 1.06398469e-02-6.01853108e-34j]],\n\n [[ 6.76448476e-03+1.22215946e-19j,\n 1.43758718e-02+4.29554664e-19j],\n [ 1.43758718e-02+4.29554664e-19j,\n 3.14640065e-02-2.40741243e-33j]],\n\n [[ 2.27120711e-01+1.30772302e-19j,\n -1.27013888e-01+8.12009194e-18j],\n [-1.27013888e-01+8.12009194e-18j,\n 4.83806987e-02+0.00000000e+00... [[ 9.80934964e-03-7.93934480e-19j,\n -2.61702863e-02-5.44361726e-19j],\n [-2.61702863e-02-5.44361726e-19j,\n 5.63826646e-02+9.82629904e-20j]],\n\n [[ 7.16363728e-02-2.00107500e-18j,\n -3.19287889e-02-1.21589899e-18j],\n [-3.19287889e-02-1.21589899e-18j,\n 6.45009799e-03+1.43574330e-19j]],\n\n [[ 1.71234764e-02+1.07516490e-19j,\n 2.85390569e-02+6.29817015e-20j],\n [ 2.85390569e-02+6.29817015e-20j,\n 5.17205577e-02+1.20370622e-33j]],\n\n [[ 1.76037448e-01-6.54663493e-18j,\n -1.03851951e-02-3.46211306e-18j],\n [-1.03851951e-02-3.46211306e-18j,\n 1.24296098e-04+1.25863732e-19j]],\n\n [[ 1.84868507e-02+1.04269169e-19j,\n 4.11319594e-02+3.66476789e-19j],\n [ 4.11319594e-02+3.66476789e-19j,\n 1.07929325e-01-4.81482486e-33j]],\n\n [[ 4.79679212e-02+1.37299416e-20j,\n 8.39663046e-02+8.04281359e-21j],\n [ 8.39663046e-02+8.04281359e-21j,\n 1.39923807e-01+3.00926554e-34j]],\n\n [[ 3.13298757e-01-7.72759155e-19j,\n 1.87898647e-01-4.08664847e-19j],\n [ 1.87898647e-01-4.08664847e-19j,\n 1.08454218e-01+1.48568466e-20j]]]) = Dat(DataSet(Set((np.int64(23), np.int64(23), np.int64(23)), 'set_#x7f9d96beaa20'), (2, 2), 'None_nodes_dset'), None, dtype('complex128'), 'function_3268').data_ro
E + where Dat(DataSet(Set((np.int64(23), np.int64(23), np.int64(23)), 'set_#x7f9d96beaa20'), (2, 2), 'None_nodes_dset'), None, dtype('complex128'), 'function_3268') = Coefficient(WithGeometry(FunctionSpace(<firedrake.mesh.VertexOnlyMeshTopology object at 0x7f9d96a52ab0>, TensorElement(FiniteElement('Discontinuous Lagrange', vertex, 0), shape=(2, 2), symmetry={}), name=None), Mesh(VectorElement(FiniteElement('Discontinuous Lagrange', Cell(vertex, 2), 0), dim=2), 3262)), 5884).dat
E + and (23, 2, 2) = array([[[ 1.28112370e-01-0.j, 1.16591930e-01-0.j],\n [ 1.16591930e-01-0.j, 1.06107460e-01-0.j]],\n\n [[ 1.00013901e-02-0.j, 4.62988588e-02-0.j],\n [ 4.62988588e-02-0.j, 2.14328639e-01-0.j]],\n\n [[ 3.31461468e-02-0.j, 5.08404361e-02-0.j],\n [ 5.08404361e-02-0.j, 7.79804048e-02-0.j]],\n\n [[ 6.27816587e-03-0.j, 1.91865200e-02-0.j],\n [ 1.91865200e-02-0.j, 5.86353656e-02-0.j]],\n\n [[ 2.13087119e-01-0.j, -4.76152739e-02+0.j],\n [-4.76152739e-02+0.j, 1.06398469e-02+0.j]],\n\n [[ 6.76448476e-03-0.j, 1.45889613e-02-0.j],\n [ 1.45889613e-02-0.j, 3.14640065e-02-0.j]],\n\n [[ 2.27120711e-01-0.j, -1.04824895e-01+0.j],\n [-1.04824895e-01+0.j, 4.83806987e-02+0.j]],\n\n [[ 4.30518717e-03+0.j, -1.70338262e-02+0.j],\n [-1.70338262e-02+0.j, 6.73957309e-02-0.j]],\n\n [[ 8.51567131e-03+0.j, -2.42277159e-02+0.j],\n [-2.42277159e-02+0.j, 6.89296471e-02-0.j]],\n\n [[ 5.24647599e-02-0.j, -2.21183142e-02+0.j],\n [-2.21183142e-02+0.j, 9.32473200e-03+0.j]],\n\n [[ 6.21136065e-03+0.j, -1.05306696e-02+0.j],\n [-1.05306696e-02+0.j, 1.78535764e-02-0.j]],\n\n [[ 9.88263557e-02+0.j, -1...e-01+0.j, 1.30802302e-01-0.j]],\n\n [[ 2.04039612e-03-0.j, -3.93571046e-04+0.j],\n [-3.93571046e-04+0.j, 7.59157337e-05+0.j]],\n\n [[ 1.47411213e-01-0.j, -1.41610458e-01+0.j],\n [-1.41610458e-01+0.j, 1.36037967e-01+0.j]],\n\n [[ 2.98657995e-01+0.j, -1.70571807e-01+0.j],\n [-1.70571807e-01+0.j, 9.74182567e-02-0.j]],\n\n [[ 2.93843368e-01+0.j, -2.12126270e-01+0.j],\n [-2.12126270e-01+0.j, 1.53134491e-01-0.j]],\n\n [[ 1.14137763e-02-0.j, -2.53680729e-02+0.j],\n [-2.53680729e-02+0.j, 5.63826646e-02+0.j]],\n\n [[ 8.78779331e-02+0.j, -2.38080087e-02+0.j],\n [-2.38080087e-02+0.j, 6.45009799e-03-0.j]],\n\n [[ 1.71234764e-02+0.j, 2.97596329e-02+0.j],\n [ 2.97596329e-02+0.j, 5.17205577e-02+0.j]],\n\n [[ 1.87161402e-01+0.j, -4.82321801e-03+0.j],\n [-4.82321801e-03+0.j, 1.24296098e-04-0.j]],\n\n [[ 1.84868507e-02+0.j, 4.46684825e-02+0.j],\n [ 4.46684825e-02+0.j, 1.07929325e-01+0.j]],\n\n [[ 4.79679212e-02+0.j, 8.19259064e-02+0.j],\n [ 8.19259064e-02+0.j, 1.39923807e-01+0.j]],\n\n [[ 2.95606040e-01+0.j, 1.79052288e-01+0.j],\n [ 1.79052288e-01+0.j, 1.08454218e-01+0.j]]]).shape
tests/vertexonly/test_interpolation_from_parent.py:282: AssertionError
Check failure on line 534 in tests/regression/test_interpolate_cross_mesh.py
github-actions / Firedrake complex
test_interpolate_cross_mesh.test_interpolate_cross_mesh[unitsquare_Regge_source]
assert False
+ where False = <function allclose at 0x7fbc77d13370>([array([[0.32470945+6.96018591e-17j, 0.34433209+7.30015848e-17j],\n [0.34433209+7.30015848e-17j, 0.36 +8.93945504e-17j]]), array([[0.01 +4.84718323e-18j, 0.09404452+2.17009235e-17j],\n [0.09404452+2.17009235e-17j, 0.81 +1.99337700e-16j]]), array([[0.81 +2.00516594e-16j, 0.14692594+3.48837227e-17j],\n [0.14692594+3.48837227e-17j, 0.01 +3.46218195e-18j]]), array([[0.81+1.99668455e-16j, 0.81+1.97542332e-16j],\n [0.81+1.97542332e-16j, 0.81+1.98959748e-16j]]), array([[0.49240298+1.17834142e-16j, 0.44222054+1.05613601e-16j],\n [0.44222054+1.05613601e-16j, 0.43349056+1.06721321e-16j]]), array([[-9.41425959e-49+6.16297582e-33j, 4.13576073e-02+1.10845403e-17j],\n [ 4.13576073e-02+1.10845403e-17j, 4.68375339e-17+2.26786444e-18j]]), ...], array([[[0.3136 +0.j, 0.336 +0.j],\n [0.336 +0.j, 0.36 +0.j]],\n\n [[0.01 +0.j, 0.09 +0.j],\n [0.09 +0.j, 0.81 +0.j]],\n\n [[0.81 +0.j, 0.09 +0.j],\n [0.09 +0.j, 0.01 +0.j]],\n\n [[0.81 +0.j, 0.81 +0.j],\n [0.81 +0.j, 0.81 +0.j]],\n\n [[0.527076 +0.j, 0.4779984 +0.j],\n [0.4779984 +0.j, 0.43349056+0.j]],\n\n [[0. +0.j, 0. +0.j],\n [0. +0.j, 0. +0.j]],\n\n [[0. +0.j, 0. +0.j],\n [0. +0.j, 0.11111111+0.j]],\n\n [[0.25 +0.j, 0. +0.j],\n [0. +0.j, 0. +0.j]],\n\n [[0.25 +0.j, 0.16666667+0.j],\n [0.16666667+0.j, 0.11111111+0.j]],\n\n [[1. +0.j, 0. +0.j],\n [0. +0.j, 0. +0.j]],\n\n [[0. +0.j, 0. +0.j],\n [0. +0.j, 0.44444444+0.j]],\n\n [[1. +0.j, 0.33333333+0.j],\n [0.33333333+0.j, 0.11111111+0.j]],\n\n [[0.25 +0.j, 0.33333333+0.j],\n [0.33333333+0.j, 0.44444444+0.j]],\n\n [[0. +0.j, 0. +0.j],\n [0. +0.j, 1. +0.... [[0.44444444+0.j, 0.26666667+0.j],\n [0.26666667+0.j, 0.16 +0.j]],\n\n [[0. +0.j, 0. +0.j],\n [0. +0.j, 0.36 +0.j]],\n\n [[0.11111111+0.j, 0.2 +0.j],\n [0.2 +0.j, 0.36 +0.j]],\n\n [[1. +0.j, 0.4 +0.j],\n [0.4 +0.j, 0.16 +0.j]],\n\n [[0.44444444+0.j, 0.4 +0.j],\n [0.4 +0.j, 0.36 +0.j]],\n\n [[0. +0.j, 0. +0.j],\n [0. +0.j, 0.64 +0.j]],\n\n [[0.11111111+0.j, 0.26666667+0.j],\n [0.26666667+0.j, 0.64 +0.j]],\n\n [[1. +0.j, 0.6 +0.j],\n [0.6 +0.j, 0.36 +0.j]],\n\n [[0.44444444+0.j, 0.53333333+0.j],\n [0.53333333+0.j, 0.64 +0.j]],\n\n [[0. +0.j, 0. +0.j],\n [0. +0.j, 1. +0.j]],\n\n [[0.11111111+0.j, 0.33333333+0.j],\n [0.33333333+0.j, 1. +0.j]],\n\n [[1. +0.j, 0.8 +0.j],\n [0.8 +0.j, 0.64 +0.j]],\n\n [[0.44444444+0.j, 0.66666667+0.j],\n [0.66666667+0.j, 1. +0.j]],\n\n [[1. +0.j, 1. +0.j],\n [1. +0.j, 1. +0.j]]]), atol=1e-08)
+ where <function allclose at 0x7fbc77d13370> = np.allclose
Raw output
parameters = (Mesh(VectorElement(FiniteElement('Lagrange', triangle, 1), dim=2), 6507), Mesh(VectorElement(FiniteElement('Q', quadr...667+0.j, 1. +0.j]],
[[1. +0.j, 1. +0.j],
[1. +0.j, 1. +0.j]]]), ...)
def test_interpolate_cross_mesh(parameters):
(
m_src,
m_dest,
coords,
expr_src,
expr_dest,
expected,
V_src,
V_dest,
V_dest_2,
) = parameters
> get_expected_values(
m_src, m_dest, V_src, V_dest, coords, expected, expr_src, expr_dest
)
tests/regression/test_interpolate_cross_mesh.py:299:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
tests/regression/test_interpolate_cross_mesh.py:501: in get_expected_values
interpolate_function(
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
m_src = Mesh(VectorElement(FiniteElement('Lagrange', triangle, 1), dim=2), 6507)
m_dest = Mesh(VectorElement(FiniteElement('Q', quadrilateral, 1), dim=2), 6508)
V_src = WithGeometry(FunctionSpace(<firedrake.mesh.MeshTopology object at 0x7fbc2518fe90>, FiniteElement('Regge', triangle, 2), name=None), Mesh(VectorElement(FiniteElement('Lagrange', triangle, 1), dim=2), 6507))
V_dest = WithGeometry(FunctionSpace(<firedrake.mesh.MeshTopology object at 0x7fbc2518df40>, TensorElement(FiniteElement('Q', qu...al, 4), shape=(2, 2), symmetry={}), name=None), Mesh(VectorElement(FiniteElement('Q', quadrilateral, 1), dim=2), 6508))
coords = array([[0.56 +0.j, 0.6 +0.j],
[0.1 +0.j, 0.9 +0.j],
[0.9 +0.j, 0.1 +0... [1. +0.j, 0.8 +0.j],
[0.66666667+0.j, 1. +0.j],
[1. +0.j, 1. +0.j]])
expected = array([[[0.3136 +0.j, 0.336 +0.j],
[0.336 +0.j, 0.36 +0.j]],
[[0.01 +0.j, 0.09 ....66666667+0.j, 1. +0.j]],
[[1. +0.j, 1. +0.j],
[1. +0.j, 1. +0.j]]])
expr_src = Outer(SpatialCoordinate(Mesh(VectorElement(FiniteElement('Lagrange', triangle, 1), dim=2), 6507)), SpatialCoordinate(Mesh(VectorElement(FiniteElement('Lagrange', triangle, 1), dim=2), 6507)))
expr_dest = Outer(SpatialCoordinate(Mesh(VectorElement(FiniteElement('Q', quadrilateral, 1), dim=2), 6508)), SpatialCoordinate(Mesh(VectorElement(FiniteElement('Q', quadrilateral, 1), dim=2), 6508)))
atol = 1e-08
def interpolate_function(
m_src, m_dest, V_src, V_dest, coords, expected, expr_src, expr_dest, atol
):
f_src = Function(V_src).interpolate(expr_src)
f_dest = assemble(interpolate(f_src, V_dest))
assert extract_unique_domain(f_dest) is m_dest
got = f_dest.at(coords)
> assert np.allclose(got, expected, atol=atol)
E assert False
E + where False = <function allclose at 0x7fbc77d13370>([array([[0.32470945+6.96018591e-17j, 0.34433209+7.30015848e-17j],\n [0.34433209+7.30015848e-17j, 0.36 +8.93945504e-17j]]), array([[0.01 +4.84718323e-18j, 0.09404452+2.17009235e-17j],\n [0.09404452+2.17009235e-17j, 0.81 +1.99337700e-16j]]), array([[0.81 +2.00516594e-16j, 0.14692594+3.48837227e-17j],\n [0.14692594+3.48837227e-17j, 0.01 +3.46218195e-18j]]), array([[0.81+1.99668455e-16j, 0.81+1.97542332e-16j],\n [0.81+1.97542332e-16j, 0.81+1.98959748e-16j]]), array([[0.49240298+1.17834142e-16j, 0.44222054+1.05613601e-16j],\n [0.44222054+1.05613601e-16j, 0.43349056+1.06721321e-16j]]), array([[-9.41425959e-49+6.16297582e-33j, 4.13576073e-02+1.10845403e-17j],\n [ 4.13576073e-02+1.10845403e-17j, 4.68375339e-17+2.26786444e-18j]]), ...], array([[[0.3136 +0.j, 0.336 +0.j],\n [0.336 +0.j, 0.36 +0.j]],\n\n [[0.01 +0.j, 0.09 +0.j],\n [0.09 +0.j, 0.81 +0.j]],\n\n [[0.81 +0.j, 0.09 +0.j],\n [0.09 +0.j, 0.01 +0.j]],\n\n [[0.81 +0.j, 0.81 +0.j],\n [0.81 +0.j, 0.81 +0.j]],\n\n [[0.527076 +0.j, 0.4779984 +0.j],\n [0.4779984 +0.j, 0.43349056+0.j]],\n\n [[0. +0.j, 0. +0.j],\n [0. +0.j, 0. +0.j]],\n\n [[0. +0.j, 0. +0.j],\n [0. +0.j, 0.11111111+0.j]],\n\n [[0.25 +0.j, 0. +0.j],\n [0. +0.j, 0. +0.j]],\n\n [[0.25 +0.j, 0.16666667+0.j],\n [0.16666667+0.j, 0.11111111+0.j]],\n\n [[1. +0.j, 0. +0.j],\n [0. +0.j, 0. +0.j]],\n\n [[0. +0.j, 0. +0.j],\n [0. +0.j, 0.44444444+0.j]],\n\n [[1. +0.j, 0.33333333+0.j],\n [0.33333333+0.j, 0.11111111+0.j]],\n\n [[0.25 +0.j, 0.33333333+0.j],\n [0.33333333+0.j, 0.44444444+0.j]],\n\n [[0. +0.j, 0. +0.j],\n [0. +0.j, 1. +0.... [[0.44444444+0.j, 0.26666667+0.j],\n [0.26666667+0.j, 0.16 +0.j]],\n\n [[0. +0.j, 0. +0.j],\n [0. +0.j, 0.36 +0.j]],\n\n [[0.11111111+0.j, 0.2 +0.j],\n [0.2 +0.j, 0.36 +0.j]],\n\n [[1. +0.j, 0.4 +0.j],\n [0.4 +0.j, 0.16 +0.j]],\n\n [[0.44444444+0.j, 0.4 +0.j],\n [0.4 +0.j, 0.36 +0.j]],\n\n [[0. +0.j, 0. +0.j],\n [0. +0.j, 0.64 +0.j]],\n\n [[0.11111111+0.j, 0.26666667+0.j],\n [0.26666667+0.j, 0.64 +0.j]],\n\n [[1. +0.j, 0.6 +0.j],\n [0.6 +0.j, 0.36 +0.j]],\n\n [[0.44444444+0.j, 0.53333333+0.j],\n [0.53333333+0.j, 0.64 +0.j]],\n\n [[0. +0.j, 0. +0.j],\n [0. +0.j, 1. +0.j]],\n\n [[0.11111111+0.j, 0.33333333+0.j],\n [0.33333333+0.j, 1. +0.j]],\n\n [[1. +0.j, 0.8 +0.j],\n [0.8 +0.j, 0.64 +0.j]],\n\n [[0.44444444+0.j, 0.66666667+0.j],\n [0.66666667+0.j, 1. +0.j]],\n\n [[1. +0.j, 1. +0.j],\n [1. +0.j, 1. +0.j]]]), atol=1e-08)
E + where <function allclose at 0x7fbc77d13370> = np.allclose
tests/regression/test_interpolate_cross_mesh.py:534: AssertionError
Check failure on line 1 in tests/vertexonly/test_interpolation_from_parent.py
github-actions / Firedrake complex
test_interpolation_from_parent.test_tensor_function_interpolation_parallel[shiftedmesh-mesh-100-coords-FunctionSpace(Regge2)]
subprocess.CalledProcessError: Command '['mpiexec', '-n', '1', '-genv', '_PYTEST_MPI_CHILD_PROCESS', '1', '/__w/firedrake/firedrake_venv/bin/python', '-m', 'pytest', '--runxfail', '-s', '-q', '/__w/firedrake/firedrake/tests/vertexonly/test_interpolation_from_parent.py::test_tensor_function_interpolation_parallel[shiftedmesh-mesh-100-coords-FunctionSpace(Regge2)]', ':', '-n', '2', '/__w/firedrake/firedrake_venv/bin/python', '-m', 'pytest', '--runxfail', '-s', '-q', '/__w/firedrake/firedrake/tests/vertexonly/test_interpolation_from_parent.py::test_tensor_function_interpolation_parallel[shiftedmesh-mesh-100-coords-FunctionSpace(Regge2)]', '--tb=no', '--no-summary', '--no-header', '--disable-warnings', '--show-capture=no']' returned non-zero exit status 1.
Raw output
args = ()
kwargs = {'parentmesh': Mesh(VectorElement(FiniteElement('Lagrange', triangle, 1), dim=2), 972), 'tfs': ('Regge', 2, <cyfunctio...1.38874478],
[ 0.97910159, 0.48091762],
[-0.04517074, 0.00871296],
[-0.38394168, 0.36883325]])}
def parallel_callback(*args, **kwargs):
> subprocess.run(cmd, check=True)
../firedrake_venv/src/pytest-mpi/pytest_mpi.py:233:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
input = None, capture_output = False, timeout = None, check = True
popenargs = (['mpiexec', '-n', '1', '-genv', '_PYTEST_MPI_CHILD_PROCESS', '1', ...],)
kwargs = {}
process = <Popen: returncode: 1 args: ['mpiexec', '-n', '1', '-genv', '_PYTEST_MPI_CHI...>
stdout = None, stderr = None, retcode = 1
def run(*popenargs,
input=None, capture_output=False, timeout=None, check=False, **kwargs):
"""Run command with arguments and return a CompletedProcess instance.
The returned instance will have attributes args, returncode, stdout and
stderr. By default, stdout and stderr are not captured, and those attributes
will be None. Pass stdout=PIPE and/or stderr=PIPE in order to capture them,
or pass capture_output=True to capture both.
If check is True and the exit code was non-zero, it raises a
CalledProcessError. The CalledProcessError object will have the return code
in the returncode attribute, and output & stderr attributes if those streams
were captured.
If timeout is given, and the process takes too long, a TimeoutExpired
exception will be raised.
There is an optional argument "input", allowing you to
pass bytes or a string to the subprocess's stdin. If you use this argument
you may not also use the Popen constructor's "stdin" argument, as
it will be used internally.
By default, all communication is in bytes, and therefore any "input" should
be bytes, and the stdout and stderr will be bytes. If in text mode, any
"input" should be a string, and stdout and stderr will be strings decoded
according to locale encoding, or by "encoding" if set. Text mode is
triggered by setting any of text, encoding, errors or universal_newlines.
The other arguments are the same as for the Popen constructor.
"""
if input is not None:
if kwargs.get('stdin') is not None:
raise ValueError('stdin and input arguments may not both be used.')
kwargs['stdin'] = PIPE
if capture_output:
if kwargs.get('stdout') is not None or kwargs.get('stderr') is not None:
raise ValueError('stdout and stderr arguments may not be used '
'with capture_output.')
kwargs['stdout'] = PIPE
kwargs['stderr'] = PIPE
with Popen(*popenargs, **kwargs) as process:
try:
stdout, stderr = process.communicate(input, timeout=timeout)
except TimeoutExpired as exc:
process.kill()
if _mswindows:
# Windows accumulates the output in a single blocking
# read() call run on child threads, with the timeout
# being done in a join() on those threads. communicate()
# _after_ kill() is required to collect that and add it
# to the exception.
exc.stdout, exc.stderr = process.communicate()
else:
# POSIX _communicate already populated the output so
# far into the TimeoutExpired exception.
process.wait()
raise
except: # Including KeyboardInterrupt, communicate handled that.
process.kill()
# We don't call process.wait() as .__exit__ does that for us.
raise
retcode = process.poll()
if check and retcode:
> raise CalledProcessError(retcode, process.args,
output=stdout, stderr=stderr)
E subprocess.CalledProcessError: Command '['mpiexec', '-n', '1', '-genv', '_PYTEST_MPI_CHILD_PROCESS', '1', '/__w/firedrake/firedrake_venv/bin/python', '-m', 'pytest', '--runxfail', '-s', '-q', '/__w/firedrake/firedrake/tests/vertexonly/test_interpolation_from_parent.py::test_tensor_function_interpolation_parallel[shiftedmesh-mesh-100-coords-FunctionSpace(Regge2)]', ':', '-n', '2', '/__w/firedrake/firedrake_venv/bin/python', '-m', 'pytest', '--runxfail', '-s', '-q', '/__w/firedrake/firedrake/tests/vertexonly/test_interpolation_from_parent.py::test_tensor_function_interpolation_parallel[shiftedmesh-mesh-100-coords-FunctionSpace(Regge2)]', '--tb=no', '--no-summary', '--no-header', '--disable-warnings', '--show-capture=no']' returned non-zero exit status 1.
/usr/lib/python3.12/subprocess.py:571: CalledProcessError
Check failure on line 1 in tests/regression/test_interpolate_cross_mesh.py
github-actions / Firedrake complex
test_interpolate_cross_mesh.test_interpolate_cross_mesh_parallel[unitsquare_Regge_source]
subprocess.CalledProcessError: Command '['mpiexec', '-n', '1', '-genv', '_PYTEST_MPI_CHILD_PROCESS', '1', '/__w/firedrake/firedrake_venv/bin/python', '-m', 'pytest', '--runxfail', '-s', '-q', '/__w/firedrake/firedrake/tests/regression/test_interpolate_cross_mesh.py::test_interpolate_cross_mesh_parallel[unitsquare_Regge_source]', ':', '-n', '2', '/__w/firedrake/firedrake_venv/bin/python', '-m', 'pytest', '--runxfail', '-s', '-q', '/__w/firedrake/firedrake/tests/regression/test_interpolate_cross_mesh.py::test_interpolate_cross_mesh_parallel[unitsquare_Regge_source]', '--tb=no', '--no-summary', '--no-header', '--disable-warnings', '--show-capture=no']' returned non-zero exit status 1.
Raw output
args = ()
kwargs = {'parameters': (Mesh(VectorElement(FiniteElement('Lagrange', triangle, 1), dim=2), 8269), Mesh(VectorElement(FiniteEle...67+0.j, 1. +0.j]],
[[1. +0.j, 1. +0.j],
[1. +0.j, 1. +0.j]]]), ...)}
def parallel_callback(*args, **kwargs):
> subprocess.run(cmd, check=True)
../firedrake_venv/src/pytest-mpi/pytest_mpi.py:233:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
input = None, capture_output = False, timeout = None, check = True
popenargs = (['mpiexec', '-n', '1', '-genv', '_PYTEST_MPI_CHILD_PROCESS', '1', ...],)
kwargs = {}
process = <Popen: returncode: 1 args: ['mpiexec', '-n', '1', '-genv', '_PYTEST_MPI_CHI...>
stdout = None, stderr = None, retcode = 1
def run(*popenargs,
input=None, capture_output=False, timeout=None, check=False, **kwargs):
"""Run command with arguments and return a CompletedProcess instance.
The returned instance will have attributes args, returncode, stdout and
stderr. By default, stdout and stderr are not captured, and those attributes
will be None. Pass stdout=PIPE and/or stderr=PIPE in order to capture them,
or pass capture_output=True to capture both.
If check is True and the exit code was non-zero, it raises a
CalledProcessError. The CalledProcessError object will have the return code
in the returncode attribute, and output & stderr attributes if those streams
were captured.
If timeout is given, and the process takes too long, a TimeoutExpired
exception will be raised.
There is an optional argument "input", allowing you to
pass bytes or a string to the subprocess's stdin. If you use this argument
you may not also use the Popen constructor's "stdin" argument, as
it will be used internally.
By default, all communication is in bytes, and therefore any "input" should
be bytes, and the stdout and stderr will be bytes. If in text mode, any
"input" should be a string, and stdout and stderr will be strings decoded
according to locale encoding, or by "encoding" if set. Text mode is
triggered by setting any of text, encoding, errors or universal_newlines.
The other arguments are the same as for the Popen constructor.
"""
if input is not None:
if kwargs.get('stdin') is not None:
raise ValueError('stdin and input arguments may not both be used.')
kwargs['stdin'] = PIPE
if capture_output:
if kwargs.get('stdout') is not None or kwargs.get('stderr') is not None:
raise ValueError('stdout and stderr arguments may not be used '
'with capture_output.')
kwargs['stdout'] = PIPE
kwargs['stderr'] = PIPE
with Popen(*popenargs, **kwargs) as process:
try:
stdout, stderr = process.communicate(input, timeout=timeout)
except TimeoutExpired as exc:
process.kill()
if _mswindows:
# Windows accumulates the output in a single blocking
# read() call run on child threads, with the timeout
# being done in a join() on those threads. communicate()
# _after_ kill() is required to collect that and add it
# to the exception.
exc.stdout, exc.stderr = process.communicate()
else:
# POSIX _communicate already populated the output so
# far into the TimeoutExpired exception.
process.wait()
raise
except: # Including KeyboardInterrupt, communicate handled that.
process.kill()
# We don't call process.wait() as .__exit__ does that for us.
raise
retcode = process.poll()
if check and retcode:
> raise CalledProcessError(retcode, process.args,
output=stdout, stderr=stderr)
E subprocess.CalledProcessError: Command '['mpiexec', '-n', '1', '-genv', '_PYTEST_MPI_CHILD_PROCESS', '1', '/__w/firedrake/firedrake_venv/bin/python', '-m', 'pytest', '--runxfail', '-s', '-q', '/__w/firedrake/firedrake/tests/regression/test_interpolate_cross_mesh.py::test_interpolate_cross_mesh_parallel[unitsquare_Regge_source]', ':', '-n', '2', '/__w/firedrake/firedrake_venv/bin/python', '-m', 'pytest', '--runxfail', '-s', '-q', '/__w/firedrake/firedrake/tests/regression/test_interpolate_cross_mesh.py::test_interpolate_cross_mesh_parallel[unitsquare_Regge_source]', '--tb=no', '--no-summary', '--no-header', '--disable-warnings', '--show-capture=no']' returned non-zero exit status 1.
/usr/lib/python3.12/subprocess.py:571: CalledProcessError
Check failure on line 58 in tests/regression/test_interpolate_vs_project.py
github-actions / Firedrake complex
test_interpolate_vs_project.test_interpolate_vs_project[square-FunctionSpace(Regge1)]
AssertionError: assert False
+ where False = <function allclose at 0x7fbc77d13370>(array([0.16666667+0.j, 0.16666667+0.j, 0. +0.j, 0.35355339+0.j,\n 0.20412415+0.j, 0. +0.j, 0. +0.j, 0.35355339+0.j,\n 0.20412415+0.j, 0. +0.j, 0.33333333+0.j, 0.33333333+0.j,\n 0.35355339+0.j, 0.20412415+0.j, 0.35355339+0.j, 0.20412415+0.j,\n 0.16666667+0.j, 0.66666667+0.j, 0. +0.j, 0. +0.j,\n 0. +0.j, 1.06066017+0.j, 0.20412415+0.j, 0.16666667+0.j,\n 0.66666667+0.j, 0. +0.j, 1.06066017+0.j, 0.20412415+0.j,\n 0. +0.j, 0. +0.j, 0. +0.j, 0.83333333+0.j,\n 0.33333333+0.j, 1.06066017+0.j, 0.20412415+0.j, 0.5 +0.j,\n 0.28867513+0.j, 0. +0.j, 0.83333333+0.j, 0.33333333+0.j,\n 0.5 +0.j, 0.28867513+0.j, 1.06066017+0.j, 0.20412415+0.j,\n 0.66666667+0.j, 0.66666667+0.j, 0. +0.j, 0. +0.j,\n 0. +0.j, 0. +0.j, 0.83333333+0.j, 0.83333333+0.j,\n 1.5 +0.j, 0.28867513+0.j, 1.06066017+0.j, 0.20412415+0.j]), array([ 1.67752016e-01+0.j, 1.67752017e-01+0.j, 4.34139936e-03+0.j,\n 3.55764540e-01+0.j, 2.08059306e-01+0.j, 2.60483878e-02+0.j,\n -1.44431658e-02+0.j, 3.51342246e-01+0.j, 2.05506089e-01+0.j,\n -2.01663799e-02+0.j, 3.32743962e-01+0.j, 3.15291240e-01+0.j,\n 3.52745428e-01+0.j, 2.05433671e-01+0.j, 3.98563338e-01+0.j,\n 2.28335034e-01+0.j, 1.77772838e-01+0.j, 6.65557825e-01+0.j,\n 7.77964870e-03+0.j, 1.11847071e-02+0.j, -1.96274994e-02+0.j,\n 1.06747413e+00+0.j, 2.05342092e-01+0.j, 1.66434174e-01+0.j,\n 6.66612260e-01+0.j, -3.95712710e-04+0.j, 1.06071258e+00+0.j,\n 2.04021134e-01+0.j, 4.98351674e-04+0.j, -8.23692783e-05+0.j,\n 2.56390623e-03+0.j, 8.33545034e-01+0.j, 3.34117401e-01+0.j,\n 1.06305001e+00+0.j, 2.01871348e-01+0.j, 4.93186044e-01+0.j,\n 2.89893082e-01+0.j, 1.54057892e-04+0.j, 8.33371977e-01+0.j,\n 3.33371805e-01+0.j, 4.99947592e-01+0.j, 2.88572124e-01+0.j,\n 1.06069796e+00+0.j, 2.04186949e-01+0.j, 6.67328444e-01+0.j,\n 6.66755900e-01+0.j, 9.29823912e-04+0.j, -1.07287349e-03+0.j,\n -1.25808343e-04+0.j, -2.52878707e-04+0.j, 8.33270113e-01+0.j,\n 8.33270113e-01+0.j, 1.49996148e+00+0.j, 2.88916374e-01+0.j,\n 1.06068741e+00+0.j, 2.04263275e-01+0.j]), atol=1e-06)
+ where <function allclose at 0x7fbc77d13370> = np.allclose
+ and array([0.16666667+0.j, 0.16666667+0.j, 0. +0.j, 0.35355339+0.j,\n 0.20412415+0.j, 0. +0.j, 0. +0.j, 0.35355339+0.j,\n 0.20412415+0.j, 0. +0.j, 0.33333333+0.j, 0.33333333+0.j,\n 0.35355339+0.j, 0.20412415+0.j, 0.35355339+0.j, 0.20412415+0.j,\n 0.16666667+0.j, 0.66666667+0.j, 0. +0.j, 0. +0.j,\n 0. +0.j, 1.06066017+0.j, 0.20412415+0.j, 0.16666667+0.j,\n 0.66666667+0.j, 0. +0.j, 1.06066017+0.j, 0.20412415+0.j,\n 0. +0.j, 0. +0.j, 0. +0.j, 0.83333333+0.j,\n 0.33333333+0.j, 1.06066017+0.j, 0.20412415+0.j, 0.5 +0.j,\n 0.28867513+0.j, 0. +0.j, 0.83333333+0.j, 0.33333333+0.j,\n 0.5 +0.j, 0.28867513+0.j, 1.06066017+0.j, 0.20412415+0.j,\n 0.66666667+0.j, 0.66666667+0.j, 0. +0.j, 0. +0.j,\n 0. +0.j, 0. +0.j, 0.83333333+0.j, 0.83333333+0.j,\n 1.5 +0.j, 0.28867513+0.j, 1.06066017+0.j, 0.20412415+0.j]) = Dat(DataSet(Set((np.int64(56), np.int64(56), np.int64(56)), 'set_#x7fbc2464e7e0'), (1,), 'None_nodes_dset'), None, dtype('complex128'), 'function_8336').data
+ where Dat(DataSet(Set((np.int64(56), np.int64(56), np.int64(56)), 'set_#x7fbc2464e7e0'), (1,), 'None_nodes_dset'), None, dtype('complex128'), 'function_8336') = Coefficient(WithGeometry(FunctionSpace(<firedrake.mesh.MeshTopology object at 0x7fbc2453f3b0>, FiniteElement('Regge', triangle, 1), name=None), Mesh(VectorElement(FiniteElement('Lagrange', triangle, 1), dim=2), 8293)), 14029).dat
+ and array([ 1.67752016e-01+0.j, 1.67752017e-01+0.j, 4.34139936e-03+0.j,\n 3.55764540e-01+0.j, 2.08059306e-01+0.j, 2.60483878e-02+0.j,\n -1.44431658e-02+0.j, 3.51342246e-01+0.j, 2.05506089e-01+0.j,\n -2.01663799e-02+0.j, 3.32743962e-01+0.j, 3.15291240e-01+0.j,\n 3.52745428e-01+0.j, 2.05433671e-01+0.j, 3.98563338e-01+0.j,\n 2.28335034e-01+0.j, 1.77772838e-01+0.j, 6.65557825e-01+0.j,\n 7.77964870e-03+0.j, 1.11847071e-02+0.j, -1.96274994e-02+0.j,\n 1.06747413e+00+0.j, 2.05342092e-01+0.j, 1.66434174e-01+0.j,\n 6.66612260e-01+0.j, -3.95712710e-04+0.j, 1.06071258e+00+0.j,\n 2.04021134e-01+0.j, 4.98351674e-04+0.j, -8.23692783e-05+0.j,\n 2.56390623e-03+0.j, 8.33545034e-01+0.j, 3.34117401e-01+0.j,\n 1.06305001e+00+0.j, 2.01871348e-01+0.j, 4.93186044e-01+0.j,\n 2.89893082e-01+0.j, 1.54057892e-04+0.j, 8.33371977e-01+0.j,\n 3.33371805e-01+0.j, 4.99947592e-01+0.j, 2.88572124e-01+0.j,\n 1.06069796e+00+0.j, 2.04186949e-01+0.j, 6.67328444e-01+0.j,\n 6.66755900e-01+0.j, 9.29823912e-04+0.j, -1.07287349e-03+0.j,\n -1.25808343e-04+0.j, -2.52878707e-04+0.j, 8.33270113e-01+0.j,\n 8.33270113e-01+0.j, 1.49996148e+00+0.j, 2.88916374e-01+0.j,\n 1.06068741e+00+0.j, 2.04263275e-01+0.j]) = Dat(DataSet(Set((np.int64(56), np.int64(56), np.int64(56)), 'set_#x7fbc2464e7e0'), (1,), 'None_nodes_dset'), None, dtype('complex128'), 'function_8337').data
+ where Dat(DataSet(Set((np.int64(56), np.int64(56), np.int64(56)), 'set_#x7fbc2464e7e0'), (1,), 'None_nodes_dset'), None, dtype('complex128'), 'function_8337') = Coefficient(WithGeometry(FunctionSpace(<firedrake.mesh.MeshTopology object at 0x7fbc2453f3b0>, FiniteElement('Regge', triangle, 1), name=None), Mesh(VectorElement(FiniteElement('Lagrange', triangle, 1), dim=2), 8293)), 14031).dat
Raw output
V = WithGeometry(FunctionSpace(<firedrake.mesh.MeshTopology object at 0x7fbc2453f3b0>, FiniteElement('Regge', triangle, 1), name=None), Mesh(VectorElement(FiniteElement('Lagrange', triangle, 1), dim=2), 8293))
def test_interpolate_vs_project(V):
mesh = V.mesh()
dim = mesh.geometric_dimension()
if dim == 2:
x, y = SpatialCoordinate(mesh)
elif dim == 3:
x, y, z = SpatialCoordinate(mesh)
shape = V.ufl_element().value_shape
if dim == 2:
if len(shape) == 0:
expression = x + y
elif len(shape) == 1:
expression = as_vector([x, y])
elif len(shape) == 2:
expression = as_tensor(([x, y], [x, y]))
elif dim == 3:
if len(shape) == 0:
expression = x + y + z
elif len(shape) == 1:
expression = as_vector([x, y, z])
elif len(shape) == 2:
expression = as_tensor(([x, y, z], [x, y, z], [x, y, z]))
f = assemble(interpolate(expression, V))
expect = project(expression, V)
> assert np.allclose(f.dat.data, expect.dat.data, atol=1e-06)
E AssertionError: assert False
E + where False = <function allclose at 0x7fbc77d13370>(array([0.16666667+0.j, 0.16666667+0.j, 0. +0.j, 0.35355339+0.j,\n 0.20412415+0.j, 0. +0.j, 0. +0.j, 0.35355339+0.j,\n 0.20412415+0.j, 0. +0.j, 0.33333333+0.j, 0.33333333+0.j,\n 0.35355339+0.j, 0.20412415+0.j, 0.35355339+0.j, 0.20412415+0.j,\n 0.16666667+0.j, 0.66666667+0.j, 0. +0.j, 0. +0.j,\n 0. +0.j, 1.06066017+0.j, 0.20412415+0.j, 0.16666667+0.j,\n 0.66666667+0.j, 0. +0.j, 1.06066017+0.j, 0.20412415+0.j,\n 0. +0.j, 0. +0.j, 0. +0.j, 0.83333333+0.j,\n 0.33333333+0.j, 1.06066017+0.j, 0.20412415+0.j, 0.5 +0.j,\n 0.28867513+0.j, 0. +0.j, 0.83333333+0.j, 0.33333333+0.j,\n 0.5 +0.j, 0.28867513+0.j, 1.06066017+0.j, 0.20412415+0.j,\n 0.66666667+0.j, 0.66666667+0.j, 0. +0.j, 0. +0.j,\n 0. +0.j, 0. +0.j, 0.83333333+0.j, 0.83333333+0.j,\n 1.5 +0.j, 0.28867513+0.j, 1.06066017+0.j, 0.20412415+0.j]), array([ 1.67752016e-01+0.j, 1.67752017e-01+0.j, 4.34139936e-03+0.j,\n 3.55764540e-01+0.j, 2.08059306e-01+0.j, 2.60483878e-02+0.j,\n -1.44431658e-02+0.j, 3.51342246e-01+0.j, 2.05506089e-01+0.j,\n -2.01663799e-02+0.j, 3.32743962e-01+0.j, 3.15291240e-01+0.j,\n 3.52745428e-01+0.j, 2.05433671e-01+0.j, 3.98563338e-01+0.j,\n 2.28335034e-01+0.j, 1.77772838e-01+0.j, 6.65557825e-01+0.j,\n 7.77964870e-03+0.j, 1.11847071e-02+0.j, -1.96274994e-02+0.j,\n 1.06747413e+00+0.j, 2.05342092e-01+0.j, 1.66434174e-01+0.j,\n 6.66612260e-01+0.j, -3.95712710e-04+0.j, 1.06071258e+00+0.j,\n 2.04021134e-01+0.j, 4.98351674e-04+0.j, -8.23692783e-05+0.j,\n 2.56390623e-03+0.j, 8.33545034e-01+0.j, 3.34117401e-01+0.j,\n 1.06305001e+00+0.j, 2.01871348e-01+0.j, 4.93186044e-01+0.j,\n 2.89893082e-01+0.j, 1.54057892e-04+0.j, 8.33371977e-01+0.j,\n 3.33371805e-01+0.j, 4.99947592e-01+0.j, 2.88572124e-01+0.j,\n 1.06069796e+00+0.j, 2.04186949e-01+0.j, 6.67328444e-01+0.j,\n 6.66755900e-01+0.j, 9.29823912e-04+0.j, -1.07287349e-03+0.j,\n -1.25808343e-04+0.j, -2.52878707e-04+0.j, 8.33270113e-01+0.j,\n 8.33270113e-01+0.j, 1.49996148e+00+0.j, 2.88916374e-01+0.j,\n 1.06068741e+00+0.j, 2.04263275e-01+0.j]), atol=1e-06)
E + where <function allclose at 0x7fbc77d13370> = np.allclose
E + and array([0.16666667+0.j, 0.16666667+0.j, 0. +0.j, 0.35355339+0.j,\n 0.20412415+0.j, 0. +0.j, 0. +0.j, 0.35355339+0.j,\n 0.20412415+0.j, 0. +0.j, 0.33333333+0.j, 0.33333333+0.j,\n 0.35355339+0.j, 0.20412415+0.j, 0.35355339+0.j, 0.20412415+0.j,\n 0.16666667+0.j, 0.66666667+0.j, 0. +0.j, 0. +0.j,\n 0. +0.j, 1.06066017+0.j, 0.20412415+0.j, 0.16666667+0.j,\n 0.66666667+0.j, 0. +0.j, 1.06066017+0.j, 0.20412415+0.j,\n 0. +0.j, 0. +0.j, 0. +0.j, 0.83333333+0.j,\n 0.33333333+0.j, 1.06066017+0.j, 0.20412415+0.j, 0.5 +0.j,\n 0.28867513+0.j, 0. +0.j, 0.83333333+0.j, 0.33333333+0.j,\n 0.5 +0.j, 0.28867513+0.j, 1.06066017+0.j, 0.20412415+0.j,\n 0.66666667+0.j, 0.66666667+0.j, 0. +0.j, 0. +0.j,\n 0. +0.j, 0. +0.j, 0.83333333+0.j, 0.83333333+0.j,\n 1.5 +0.j, 0.28867513+0.j, 1.06066017+0.j, 0.20412415+0.j]) = Dat(DataSet(Set((np.int64(56), np.int64(56), np.int64(56)), 'set_#x7fbc2464e7e0'), (1,), 'None_nodes_dset'), None, dtype('complex128'), 'function_8336').data
E + where Dat(DataSet(Set((np.int64(56), np.int64(56), np.int64(56)), 'set_#x7fbc2464e7e0'), (1,), 'None_nodes_dset'), None, dtype('complex128'), 'function_8336') = Coefficient(WithGeometry(FunctionSpace(<firedrake.mesh.MeshTopology object at 0x7fbc2453f3b0>, FiniteElement('Regge', triangle, 1), name=None), Mesh(VectorElement(FiniteElement('Lagrange', triangle, 1), dim=2), 8293)), 14029).dat
E + and array([ 1.67752016e-01+0.j, 1.67752017e-01+0.j, 4.34139936e-03+0.j,\n 3.55764540e-01+0.j, 2.08059306e-01+0.j, 2.60483878e-02+0.j,\n -1.44431658e-02+0.j, 3.51342246e-01+0.j, 2.05506089e-01+0.j,\n -2.01663799e-02+0.j, 3.32743962e-01+0.j, 3.15291240e-01+0.j,\n 3.52745428e-01+0.j, 2.05433671e-01+0.j, 3.98563338e-01+0.j,\n 2.28335034e-01+0.j, 1.77772838e-01+0.j, 6.65557825e-01+0.j,\n 7.77964870e-03+0.j, 1.11847071e-02+0.j, -1.96274994e-02+0.j,\n 1.06747413e+00+0.j, 2.05342092e-01+0.j, 1.66434174e-01+0.j,\n 6.66612260e-01+0.j, -3.95712710e-04+0.j, 1.06071258e+00+0.j,\n 2.04021134e-01+0.j, 4.98351674e-04+0.j, -8.23692783e-05+0.j,\n 2.56390623e-03+0.j, 8.33545034e-01+0.j, 3.34117401e-01+0.j,\n 1.06305001e+00+0.j, 2.01871348e-01+0.j, 4.93186044e-01+0.j,\n 2.89893082e-01+0.j, 1.54057892e-04+0.j, 8.33371977e-01+0.j,\n 3.33371805e-01+0.j, 4.99947592e-01+0.j, 2.88572124e-01+0.j,\n 1.06069796e+00+0.j, 2.04186949e-01+0.j, 6.67328444e-01+0.j,\n 6.66755900e-01+0.j, 9.29823912e-04+0.j, -1.07287349e-03+0.j,\n -1.25808343e-04+0.j, -2.52878707e-04+0.j, 8.33270113e-01+0.j,\n 8.33270113e-01+0.j, 1.49996148e+00+0.j, 2.88916374e-01+0.j,\n 1.06068741e+00+0.j, 2.04263275e-01+0.j]) = Dat(DataSet(Set((np.int64(56), np.int64(56), np.int64(56)), 'set_#x7fbc2464e7e0'), (1,), 'None_nodes_dset'), None, dtype('complex128'), 'function_8337').data
E + where Dat(DataSet(Set((np.int64(56), np.int64(56), np.int64(56)), 'set_#x7fbc2464e7e0'), (1,), 'None_nodes_dset'), None, dtype('complex128'), 'function_8337') = Coefficient(WithGeometry(FunctionSpace(<firedrake.mesh.MeshTopology object at 0x7fbc2453f3b0>, FiniteElement('Regge', triangle, 1), name=None), Mesh(VectorElement(FiniteElement('Lagrange', triangle, 1), dim=2), 8293)), 14031).dat
tests/regression/test_interpolate_vs_project.py:58: AssertionError
Check failure on line 58 in tests/regression/test_interpolate_vs_project.py
github-actions / Firedrake complex
test_interpolate_vs_project.test_interpolate_vs_project[cube-FunctionSpace(Regge1)]
AssertionError: assert False
+ where False = <function allclose at 0x7fbc77d13370>(array([ 3. +0.j, 0.83333333+0.j, 0.66666667+0.j, 3.33333333+0.j,\n 5.5 +0.j, 0.16666667+0.j, 0.83333333+0.j, 5. +0.j,\n 1.66666667+0.j, 1.44337567+0.j, 0.28867513+0.j, 3.46410162+0.j,\n 4.24264069+0.j, 0.81649658+0.j, 1.5 +0.j, -0.28867513+0.j,\n 1.06066017+0.j, 0.20412415+0.j, 7.4246212 +0.j, 1.83711731+0.j,\n 0.5 +0.j, 0.28867513+0.j, 4. +0.j, 1.15470054+0.j,\n 3. +0.j, 0.83333333+0.j, 0.66666667+0.j, 5. +0.j,\n 0.83333333+0.j, 1.66666667+0.j, 0.28867513+0.j, 1.44337567+0.j,\n 3.46410162+0.j, 1.06066017+0.j, 0.20412415+0.j, 1.5 +0.j,\n -0.28867513+0.j, 4. +0.j, -1.15470054+0.j, 5.5 +0.j,\n 2.33333333+0.j, 0.66666667+0.j, 0.83333333+0.j, 2. +0.j,\n 0.16666667+0.j, 3.46410162+0.j, 0.57735027+0.j, 1.15470054+0.j,\n 2.82842712+0.j, 0.81649658+0.j, 1.06066017+0.j, -0.20412415+0.j,\n 0.5 +0.j, 0.28867513+0.j, 2. +0.j, 0.16666667+0.j,\n 0.83333333+0.j, 0.28867513+0.j, 4.04145188+0.j, 6.92820323+0.j,\n 3.5 +0.j, 0.66666667+0.j, 0.83333333+0.j, 0.16666667+0.j... 4. +0.j, 1.66666667+0.j, 0.33333333+0.j, 3.5 +0.j,\n 5.30330086+0.j, -1.83711731+0.j, 2. +0.j, 0.83333333+0.j,\n 0.16666667+0.j, 1.15470054+0.j, 3.46410162+0.j, 0.57735027+0.j,\n 0.35355339+0.j, -0.20412415+0.j, 1.66666667+0.j, 0.33333333+0.j,\n 3.5 +0.j, 2. +0.j, 0.83333333+0.j, 0.16666667+0.j,\n 1.15470054+0.j, 3.46410162+0.j, 0.57735027+0.j, 0.35355339+0.j,\n -0.20412415+0.j, 4. +0.j, 0.16666667+0.j, 2.33333333+0.j,\n 0.33333333+0.j, 0.66666667+0.j, 2. +0.j, 4. +0.j,\n 1.15470054+0.j, 0.33333333+0.j, 0.66666667+0.j, 2. +0.j,\n 4. +0.j, 0.16666667+0.j, 2.33333333+0.j, 4. +0.j,\n 1.15470054+0.j, 3.5 +0.j, 0.66666667+0.j, 0.83333333+0.j,\n 3.46410162+0.j, 1.44337567+0.j, 0.28867513+0.j, 0.16666667+0.j,\n 1. +0.j, 0.33333333+0.j, 1.5 +0.j, 0.28867513+0.j,\n 1.41421356+0.j, -0.81649658+0.j, 0.5 +0.j, -0.28867513+0.j,\n 3.46410162+0.j, 1.44337567+0.j, 0.28867513+0.j, 0.16666667+0.j,\n 1. +0.j, 0.33333333+0.j, 0.5 +0.j, -0.28867513+0.j]), array([ 3.05085842+0.j, 0.86107353+0.j, 0.68690482+0.j, 3.46782652+0.j,\n 5.77440476+0.j, 0.18713935+0.j, 0.88680504+0.j, 5.31936332+0.j,\n 1.85744485+0.j, 1.41416709+0.j, 0.25946654+0.j, 3.34726724+0.j,\n 4.48869293+0.j, 0.50453799+0.j, 1.43858189+0.j, -0.24152551+0.j,\n 1.17622132+0.j, 0.11587108+0.j, 8.34545762+0.j, 1.4162593 +0.j,\n 0.43928549+0.j, 0.336231 +0.j, 4.08380429+0.j, 1.15632545+0.j,\n 3.05085842+0.j, 0.86107353+0.j, 0.68690482+0.j, 5.31936333+0.j,\n 0.88680504+0.j, 1.85744486+0.j, 0.25946653+0.j, 1.41416709+0.j,\n 3.34726724+0.j, 1.17622132+0.j, 0.11587107+0.j, 1.43858189+0.j,\n -0.24152552+0.j, 4.08380429+0.j, -1.15632546+0.j, 5.31938635+0.j,\n 2.43400809+0.j, 0.68042695+0.j, 0.79155607+0.j, 1.89142585+0.j,\n 0.15524404+0.j, 2.96243402+0.j, 0.46879328+0.j, 1.03466801+0.j,\n 3.09662316+0.j, 0.4958687 +0.j, 1.35357074+0.j, -0.31535984+0.j,\n 0.36310608+0.j, 0.22059957+0.j, 1.79674107+0.j, 0.12474411+0.j,\n 0.88337549+0.j, 0.15895804+0.j, 2.56929955+0.j, 4.49344088+0.j,\n 3.86866315+0.j, 0.67548334+0.j, 0.91686289+0.j, 0.17577899+0.j... 3.99331102+0.j, 1.64832237+0.j, 0.28062424+0.j, 3.70645802+0.j,\n 5.16352959+0.j, -2.41179053+0.j, 1.80330713+0.j, 0.75497906+0.j,\n 0.13183775+0.j, 0.98857867+0.j, 3.67454032+0.j, 0.61483971+0.j,\n 0.41669874+0.j, -0.26501953+0.j, 1.64832236+0.j, 0.28062423+0.j,\n 3.706458 +0.j, 1.80330714+0.j, 0.75497905+0.j, 0.13183776+0.j,\n 0.98857867+0.j, 3.6745403 +0.j, 0.61483971+0.j, 0.41669876+0.j,\n -0.26501952+0.j, 4.17288651+0.j, 0.19991104+0.j, 2.34125801+0.j,\n 0.31652345+0.j, 0.62058386+0.j, 2.16684412+0.j, 2.72026236+0.j,\n 1.09980084+0.j, 0.31652346+0.j, 0.62058387+0.j, 2.16684415+0.j,\n 4.17288656+0.j, 0.19991104+0.j, 2.34125804+0.j, 2.72026246+0.j,\n 1.09980085+0.j, 3.34766794+0.j, 0.54552516+0.j, 0.89160837+0.j,\n 2.71838179+0.j, 1.25694571+0.j, 0.10224517+0.j, 0.17981149+0.j,\n 1.13321999+0.j, 0.38368428+0.j, 1.34894718+0.j, 0.37245404+0.j,\n 1.33261983+0.j, -0.89319085+0.j, 0.3251749 +0.j, -0.19117131+0.j,\n 2.71838184+0.j, 1.25694572+0.j, 0.10224519+0.j, 0.1798115 +0.j,\n 1.13322002+0.j, 0.38368428+0.j, 0.32517492+0.j, -0.19117132+0.j]), atol=1e-06)
+ where <function allclose at 0x7fbc77d13370> = np.allclose
+ and array([ 3. +0.j, 0.83333333+0.j, 0.66666667+0.j, 3.33333333+0.j,\n 5.5 +0.j, 0.16666667+0.j, 0.83333333+0.j, 5. +0.j,\n 1.66666667+0.j, 1.44337567+0.j, 0.28867513+0.j, 3.46410162+0.j,\n 4.24264069+0.j, 0.81649658+0.j, 1.5 +0.j, -0.28867513+0.j,\n 1.06066017+0.j, 0.20412415+0.j, 7.4246212 +0.j, 1.83711731+0.j,\n 0.5 +0.j, 0.28867513+0.j, 4. +0.j, 1.15470054+0.j,\n 3. +0.j, 0.83333333+0.j, 0.66666667+0.j, 5. +0.j,\n 0.83333333+0.j, 1.66666667+0.j, 0.28867513+0.j, 1.44337567+0.j,\n 3.46410162+0.j, 1.06066017+0.j, 0.20412415+0.j, 1.5 +0.j,\n -0.28867513+0.j, 4. +0.j, -1.15470054+0.j, 5.5 +0.j,\n 2.33333333+0.j, 0.66666667+0.j, 0.83333333+0.j, 2. +0.j,\n 0.16666667+0.j, 3.46410162+0.j, 0.57735027+0.j, 1.15470054+0.j,\n 2.82842712+0.j, 0.81649658+0.j, 1.06066017+0.j, -0.20412415+0.j,\n 0.5 +0.j, 0.28867513+0.j, 2. +0.j, 0.16666667+0.j,\n 0.83333333+0.j, 0.28867513+0.j, 4.04145188+0.j, 6.92820323+0.j,\n 3.5 +0.j, 0.66666667+0.j, 0.83333333+0.j, 0.16666667+0.j... 4. +0.j, 1.66666667+0.j, 0.33333333+0.j, 3.5 +0.j,\n 5.30330086+0.j, -1.83711731+0.j, 2. +0.j, 0.83333333+0.j,\n 0.16666667+0.j, 1.15470054+0.j, 3.46410162+0.j, 0.57735027+0.j,\n 0.35355339+0.j, -0.20412415+0.j, 1.66666667+0.j, 0.33333333+0.j,\n 3.5 +0.j, 2. +0.j, 0.83333333+0.j, 0.16666667+0.j,\n 1.15470054+0.j, 3.46410162+0.j, 0.57735027+0.j, 0.35355339+0.j,\n -0.20412415+0.j, 4. +0.j, 0.16666667+0.j, 2.33333333+0.j,\n 0.33333333+0.j, 0.66666667+0.j, 2. +0.j, 4. +0.j,\n 1.15470054+0.j, 0.33333333+0.j, 0.66666667+0.j, 2. +0.j,\n 4. +0.j, 0.16666667+0.j, 2.33333333+0.j, 4. +0.j,\n 1.15470054+0.j, 3.5 +0.j, 0.66666667+0.j, 0.83333333+0.j,\n 3.46410162+0.j, 1.44337567+0.j, 0.28867513+0.j, 0.16666667+0.j,\n 1. +0.j, 0.33333333+0.j, 1.5 +0.j, 0.28867513+0.j,\n 1.41421356+0.j, -0.81649658+0.j, 0.5 +0.j, -0.28867513+0.j,\n 3.46410162+0.j, 1.44337567+0.j, 0.28867513+0.j, 0.16666667+0.j,\n 1. +0.j, 0.33333333+0.j, 0.5 +0.j, -0.28867513+0.j]) = Dat(DataSet(Set((np.int64(556), np.int64(556), np.int64(556)), 'set_#x7fbc23714290'), (1,), 'None_nodes_dset'), None, dtype('complex128'), 'function_8382').data
+ where Dat(DataSet(Set((np.int64(556), np.int64(556), np.int64(556)), 'set_#x7fbc23714290'), (1,), 'None_nodes_dset'), None, dtype('complex128'), 'function_8382') = Coefficient(WithGeometry(FunctionSpace(<firedrake.mesh.MeshTopology object at 0x7fbc241e26c0>, FiniteElement('Regge', tetrahedron, 1), name=None), Mesh(VectorElement(FiniteElement('Lagrange', tetrahedron, 1), dim=3), 8339)), 14160).dat
+ and array([ 3.05085842+0.j, 0.86107353+0.j, 0.68690482+0.j, 3.46782652+0.j,\n 5.77440476+0.j, 0.18713935+0.j, 0.88680504+0.j, 5.31936332+0.j,\n 1.85744485+0.j, 1.41416709+0.j, 0.25946654+0.j, 3.34726724+0.j,\n 4.48869293+0.j, 0.50453799+0.j, 1.43858189+0.j, -0.24152551+0.j,\n 1.17622132+0.j, 0.11587108+0.j, 8.34545762+0.j, 1.4162593 +0.j,\n 0.43928549+0.j, 0.336231 +0.j, 4.08380429+0.j, 1.15632545+0.j,\n 3.05085842+0.j, 0.86107353+0.j, 0.68690482+0.j, 5.31936333+0.j,\n 0.88680504+0.j, 1.85744486+0.j, 0.25946653+0.j, 1.41416709+0.j,\n 3.34726724+0.j, 1.17622132+0.j, 0.11587107+0.j, 1.43858189+0.j,\n -0.24152552+0.j, 4.08380429+0.j, -1.15632546+0.j, 5.31938635+0.j,\n 2.43400809+0.j, 0.68042695+0.j, 0.79155607+0.j, 1.89142585+0.j,\n 0.15524404+0.j, 2.96243402+0.j, 0.46879328+0.j, 1.03466801+0.j,\n 3.09662316+0.j, 0.4958687 +0.j, 1.35357074+0.j, -0.31535984+0.j,\n 0.36310608+0.j, 0.22059957+0.j, 1.79674107+0.j, 0.12474411+0.j,\n 0.88337549+0.j, 0.15895804+0.j, 2.56929955+0.j, 4.49344088+0.j,\n 3.86866315+0.j, 0.67548334+0.j, 0.91686289+0.j, 0.17577899+0.j... 3.99331102+0.j, 1.64832237+0.j, 0.28062424+0.j, 3.70645802+0.j,\n 5.16352959+0.j, -2.41179053+0.j, 1.80330713+0.j, 0.75497906+0.j,\n 0.13183775+0.j, 0.98857867+0.j, 3.67454032+0.j, 0.61483971+0.j,\n 0.41669874+0.j, -0.26501953+0.j, 1.64832236+0.j, 0.28062423+0.j,\n 3.706458 +0.j, 1.80330714+0.j, 0.75497905+0.j, 0.13183776+0.j,\n 0.98857867+0.j, 3.6745403 +0.j, 0.61483971+0.j, 0.41669876+0.j,\n -0.26501952+0.j, 4.17288651+0.j, 0.19991104+0.j, 2.34125801+0.j,\n 0.31652345+0.j, 0.62058386+0.j, 2.16684412+0.j, 2.72026236+0.j,\n 1.09980084+0.j, 0.31652346+0.j, 0.62058387+0.j, 2.16684415+0.j,\n 4.17288656+0.j, 0.19991104+0.j, 2.34125804+0.j, 2.72026246+0.j,\n 1.09980085+0.j, 3.34766794+0.j, 0.54552516+0.j, 0.89160837+0.j,\n 2.71838179+0.j, 1.25694571+0.j, 0.10224517+0.j, 0.17981149+0.j,\n 1.13321999+0.j, 0.38368428+0.j, 1.34894718+0.j, 0.37245404+0.j,\n 1.33261983+0.j, -0.89319085+0.j, 0.3251749 +0.j, -0.19117131+0.j,\n 2.71838184+0.j, 1.25694572+0.j, 0.10224519+0.j, 0.1798115 +0.j,\n 1.13322002+0.j, 0.38368428+0.j, 0.32517492+0.j, -0.19117132+0.j]) = Dat(DataSet(Set((np.int64(556), np.int64(556), np.int64(556)), 'set_#x7fbc23714290'), (1,), 'None_nodes_dset'), None, dtype('complex128'), 'function_8383').data
+ where Dat(DataSet(Set((np.int64(556), np.int64(556), np.int64(556)), 'set_#x7fbc23714290'), (1,), 'None_nodes_dset'), None, dtype('complex128'), 'function_8383') = Coefficient(WithGeometry(FunctionSpace(<firedrake.mesh.MeshTopology object at 0x7fbc241e26c0>, FiniteElement('Regge', tetrahedron, 1), name=None), Mesh(VectorElement(FiniteElement('Lagrange', tetrahedron, 1), dim=3), 8339)), 14162).dat
Raw output
V = WithGeometry(FunctionSpace(<firedrake.mesh.MeshTopology object at 0x7fbc241e26c0>, FiniteElement('Regge', tetrahedron, 1), name=None), Mesh(VectorElement(FiniteElement('Lagrange', tetrahedron, 1), dim=3), 8339))
def test_interpolate_vs_project(V):
mesh = V.mesh()
dim = mesh.geometric_dimension()
if dim == 2:
x, y = SpatialCoordinate(mesh)
elif dim == 3:
x, y, z = SpatialCoordinate(mesh)
shape = V.ufl_element().value_shape
if dim == 2:
if len(shape) == 0:
expression = x + y
elif len(shape) == 1:
expression = as_vector([x, y])
elif len(shape) == 2:
expression = as_tensor(([x, y], [x, y]))
elif dim == 3:
if len(shape) == 0:
expression = x + y + z
elif len(shape) == 1:
expression = as_vector([x, y, z])
elif len(shape) == 2:
expression = as_tensor(([x, y, z], [x, y, z], [x, y, z]))
f = assemble(interpolate(expression, V))
expect = project(expression, V)
> assert np.allclose(f.dat.data, expect.dat.data, atol=1e-06)
E AssertionError: assert False
E + where False = <function allclose at 0x7fbc77d13370>(array([ 3. +0.j, 0.83333333+0.j, 0.66666667+0.j, 3.33333333+0.j,\n 5.5 +0.j, 0.16666667+0.j, 0.83333333+0.j, 5. +0.j,\n 1.66666667+0.j, 1.44337567+0.j, 0.28867513+0.j, 3.46410162+0.j,\n 4.24264069+0.j, 0.81649658+0.j, 1.5 +0.j, -0.28867513+0.j,\n 1.06066017+0.j, 0.20412415+0.j, 7.4246212 +0.j, 1.83711731+0.j,\n 0.5 +0.j, 0.28867513+0.j, 4. +0.j, 1.15470054+0.j,\n 3. +0.j, 0.83333333+0.j, 0.66666667+0.j, 5. +0.j,\n 0.83333333+0.j, 1.66666667+0.j, 0.28867513+0.j, 1.44337567+0.j,\n 3.46410162+0.j, 1.06066017+0.j, 0.20412415+0.j, 1.5 +0.j,\n -0.28867513+0.j, 4. +0.j, -1.15470054+0.j, 5.5 +0.j,\n 2.33333333+0.j, 0.66666667+0.j, 0.83333333+0.j, 2. +0.j,\n 0.16666667+0.j, 3.46410162+0.j, 0.57735027+0.j, 1.15470054+0.j,\n 2.82842712+0.j, 0.81649658+0.j, 1.06066017+0.j, -0.20412415+0.j,\n 0.5 +0.j, 0.28867513+0.j, 2. +0.j, 0.16666667+0.j,\n 0.83333333+0.j, 0.28867513+0.j, 4.04145188+0.j, 6.92820323+0.j,\n 3.5 +0.j, 0.66666667+0.j, 0.83333333+0.j, 0.16666667+0.j... 4. +0.j, 1.66666667+0.j, 0.33333333+0.j, 3.5 +0.j,\n 5.30330086+0.j, -1.83711731+0.j, 2. +0.j, 0.83333333+0.j,\n 0.16666667+0.j, 1.15470054+0.j, 3.46410162+0.j, 0.57735027+0.j,\n 0.35355339+0.j, -0.20412415+0.j, 1.66666667+0.j, 0.33333333+0.j,\n 3.5 +0.j, 2. +0.j, 0.83333333+0.j, 0.16666667+0.j,\n 1.15470054+0.j, 3.46410162+0.j, 0.57735027+0.j, 0.35355339+0.j,\n -0.20412415+0.j, 4. +0.j, 0.16666667+0.j, 2.33333333+0.j,\n 0.33333333+0.j, 0.66666667+0.j, 2. +0.j, 4. +0.j,\n 1.15470054+0.j, 0.33333333+0.j, 0.66666667+0.j, 2. +0.j,\n 4. +0.j, 0.16666667+0.j, 2.33333333+0.j, 4. +0.j,\n 1.15470054+0.j, 3.5 +0.j, 0.66666667+0.j, 0.83333333+0.j,\n 3.46410162+0.j, 1.44337567+0.j, 0.28867513+0.j, 0.16666667+0.j,\n 1. +0.j, 0.33333333+0.j, 1.5 +0.j, 0.28867513+0.j,\n 1.41421356+0.j, -0.81649658+0.j, 0.5 +0.j, -0.28867513+0.j,\n 3.46410162+0.j, 1.44337567+0.j, 0.28867513+0.j, 0.16666667+0.j,\n 1. +0.j, 0.33333333+0.j, 0.5 +0.j, -0.28867513+0.j]), array([ 3.05085842+0.j, 0.86107353+0.j, 0.68690482+0.j, 3.46782652+0.j,\n 5.77440476+0.j, 0.18713935+0.j, 0.88680504+0.j, 5.31936332+0.j,\n 1.85744485+0.j, 1.41416709+0.j, 0.25946654+0.j, 3.34726724+0.j,\n 4.48869293+0.j, 0.50453799+0.j, 1.43858189+0.j, -0.24152551+0.j,\n 1.17622132+0.j, 0.11587108+0.j, 8.34545762+0.j, 1.4162593 +0.j,\n 0.43928549+0.j, 0.336231 +0.j, 4.08380429+0.j, 1.15632545+0.j,\n 3.05085842+0.j, 0.86107353+0.j, 0.68690482+0.j, 5.31936333+0.j,\n 0.88680504+0.j, 1.85744486+0.j, 0.25946653+0.j, 1.41416709+0.j,\n 3.34726724+0.j, 1.17622132+0.j, 0.11587107+0.j, 1.43858189+0.j,\n -0.24152552+0.j, 4.08380429+0.j, -1.15632546+0.j, 5.31938635+0.j,\n 2.43400809+0.j, 0.68042695+0.j, 0.79155607+0.j, 1.89142585+0.j,\n 0.15524404+0.j, 2.96243402+0.j, 0.46879328+0.j, 1.03466801+0.j,\n 3.09662316+0.j, 0.4958687 +0.j, 1.35357074+0.j, -0.31535984+0.j,\n 0.36310608+0.j, 0.22059957+0.j, 1.79674107+0.j, 0.12474411+0.j,\n 0.88337549+0.j, 0.15895804+0.j, 2.56929955+0.j, 4.49344088+0.j,\n 3.86866315+0.j, 0.67548334+0.j, 0.91686289+0.j, 0.17577899+0.j... 3.99331102+0.j, 1.64832237+0.j, 0.28062424+0.j, 3.70645802+0.j,\n 5.16352959+0.j, -2.41179053+0.j, 1.80330713+0.j, 0.75497906+0.j,\n 0.13183775+0.j, 0.98857867+0.j, 3.67454032+0.j, 0.61483971+0.j,\n 0.41669874+0.j, -0.26501953+0.j, 1.64832236+0.j, 0.28062423+0.j,\n 3.706458 +0.j, 1.80330714+0.j, 0.75497905+0.j, 0.13183776+0.j,\n 0.98857867+0.j, 3.6745403 +0.j, 0.61483971+0.j, 0.41669876+0.j,\n -0.26501952+0.j, 4.17288651+0.j, 0.19991104+0.j, 2.34125801+0.j,\n 0.31652345+0.j, 0.62058386+0.j, 2.16684412+0.j, 2.72026236+0.j,\n 1.09980084+0.j, 0.31652346+0.j, 0.62058387+0.j, 2.16684415+0.j,\n 4.17288656+0.j, 0.19991104+0.j, 2.34125804+0.j, 2.72026246+0.j,\n 1.09980085+0.j, 3.34766794+0.j, 0.54552516+0.j, 0.89160837+0.j,\n 2.71838179+0.j, 1.25694571+0.j, 0.10224517+0.j, 0.17981149+0.j,\n 1.13321999+0.j, 0.38368428+0.j, 1.34894718+0.j, 0.37245404+0.j,\n 1.33261983+0.j, -0.89319085+0.j, 0.3251749 +0.j, -0.19117131+0.j,\n 2.71838184+0.j, 1.25694572+0.j, 0.10224519+0.j, 0.1798115 +0.j,\n 1.13322002+0.j, 0.38368428+0.j, 0.32517492+0.j, -0.19117132+0.j]), atol=1e-06)
E + where <function allclose at 0x7fbc77d13370> = np.allclose
E + and array([ 3. +0.j, 0.83333333+0.j, 0.66666667+0.j, 3.33333333+0.j,\n 5.5 +0.j, 0.16666667+0.j, 0.83333333+0.j, 5. +0.j,\n 1.66666667+0.j, 1.44337567+0.j, 0.28867513+0.j, 3.46410162+0.j,\n 4.24264069+0.j, 0.81649658+0.j, 1.5 +0.j, -0.28867513+0.j,\n 1.06066017+0.j, 0.20412415+0.j, 7.4246212 +0.j, 1.83711731+0.j,\n 0.5 +0.j, 0.28867513+0.j, 4. +0.j, 1.15470054+0.j,\n 3. +0.j, 0.83333333+0.j, 0.66666667+0.j, 5. +0.j,\n 0.83333333+0.j, 1.66666667+0.j, 0.28867513+0.j, 1.44337567+0.j,\n 3.46410162+0.j, 1.06066017+0.j, 0.20412415+0.j, 1.5 +0.j,\n -0.28867513+0.j, 4. +0.j, -1.15470054+0.j, 5.5 +0.j,\n 2.33333333+0.j, 0.66666667+0.j, 0.83333333+0.j, 2. +0.j,\n 0.16666667+0.j, 3.46410162+0.j, 0.57735027+0.j, 1.15470054+0.j,\n 2.82842712+0.j, 0.81649658+0.j, 1.06066017+0.j, -0.20412415+0.j,\n 0.5 +0.j, 0.28867513+0.j, 2. +0.j, 0.16666667+0.j,\n 0.83333333+0.j, 0.28867513+0.j, 4.04145188+0.j, 6.92820323+0.j,\n 3.5 +0.j, 0.66666667+0.j, 0.83333333+0.j, 0.16666667+0.j... 4. +0.j, 1.66666667+0.j, 0.33333333+0.j, 3.5 +0.j,\n 5.30330086+0.j, -1.83711731+0.j, 2. +0.j, 0.83333333+0.j,\n 0.16666667+0.j, 1.15470054+0.j, 3.46410162+0.j, 0.57735027+0.j,\n 0.35355339+0.j, -0.20412415+0.j, 1.66666667+0.j, 0.33333333+0.j,\n 3.5 +0.j, 2. +0.j, 0.83333333+0.j, 0.16666667+0.j,\n 1.15470054+0.j, 3.46410162+0.j, 0.57735027+0.j, 0.35355339+0.j,\n -0.20412415+0.j, 4. +0.j, 0.16666667+0.j, 2.33333333+0.j,\n 0.33333333+0.j, 0.66666667+0.j, 2. +0.j, 4. +0.j,\n 1.15470054+0.j, 0.33333333+0.j, 0.66666667+0.j, 2. +0.j,\n 4. +0.j, 0.16666667+0.j, 2.33333333+0.j, 4. +0.j,\n 1.15470054+0.j, 3.5 +0.j, 0.66666667+0.j, 0.83333333+0.j,\n 3.46410162+0.j, 1.44337567+0.j, 0.28867513+0.j, 0.16666667+0.j,\n 1. +0.j, 0.33333333+0.j, 1.5 +0.j, 0.28867513+0.j,\n 1.41421356+0.j, -0.81649658+0.j, 0.5 +0.j, -0.28867513+0.j,\n 3.46410162+0.j, 1.44337567+0.j, 0.28867513+0.j, 0.16666667+0.j,\n 1. +0.j, 0.33333333+0.j, 0.5 +0.j, -0.28867513+0.j]) = Dat(DataSet(Set((np.int64(556), np.int64(556), np.int64(556)), 'set_#x7fbc23714290'), (1,), 'None_nodes_dset'), None, dtype('complex128'), 'function_8382').data
E + where Dat(DataSet(Set((np.int64(556), np.int64(556), np.int64(556)), 'set_#x7fbc23714290'), (1,), 'None_nodes_dset'), None, dtype('complex128'), 'function_8382') = Coefficient(WithGeometry(FunctionSpace(<firedrake.mesh.MeshTopology object at 0x7fbc241e26c0>, FiniteElement('Regge', tetrahedron, 1), name=None), Mesh(VectorElement(FiniteElement('Lagrange', tetrahedron, 1), dim=3), 8339)), 14160).dat
E + and array([ 3.05085842+0.j, 0.86107353+0.j, 0.68690482+0.j, 3.46782652+0.j,\n 5.77440476+0.j, 0.18713935+0.j, 0.88680504+0.j, 5.31936332+0.j,\n 1.85744485+0.j, 1.41416709+0.j, 0.25946654+0.j, 3.34726724+0.j,\n 4.48869293+0.j, 0.50453799+0.j, 1.43858189+0.j, -0.24152551+0.j,\n 1.17622132+0.j, 0.11587108+0.j, 8.34545762+0.j, 1.4162593 +0.j,\n 0.43928549+0.j, 0.336231 +0.j, 4.08380429+0.j, 1.15632545+0.j,\n 3.05085842+0.j, 0.86107353+0.j, 0.68690482+0.j, 5.31936333+0.j,\n 0.88680504+0.j, 1.85744486+0.j, 0.25946653+0.j, 1.41416709+0.j,\n 3.34726724+0.j, 1.17622132+0.j, 0.11587107+0.j, 1.43858189+0.j,\n -0.24152552+0.j, 4.08380429+0.j, -1.15632546+0.j, 5.31938635+0.j,\n 2.43400809+0.j, 0.68042695+0.j, 0.79155607+0.j, 1.89142585+0.j,\n 0.15524404+0.j, 2.96243402+0.j, 0.46879328+0.j, 1.03466801+0.j,\n 3.09662316+0.j, 0.4958687 +0.j, 1.35357074+0.j, -0.31535984+0.j,\n 0.36310608+0.j, 0.22059957+0.j, 1.79674107+0.j, 0.12474411+0.j,\n 0.88337549+0.j, 0.15895804+0.j, 2.56929955+0.j, 4.49344088+0.j,\n 3.86866315+0.j, 0.67548334+0.j, 0.91686289+0.j, 0.17577899+0.j... 3.99331102+0.j, 1.64832237+0.j, 0.28062424+0.j, 3.70645802+0.j,\n 5.16352959+0.j, -2.41179053+0.j, 1.80330713+0.j, 0.75497906+0.j,\n 0.13183775+0.j, 0.98857867+0.j, 3.67454032+0.j, 0.61483971+0.j,\n 0.41669874+0.j, -0.26501953+0.j, 1.64832236+0.j, 0.28062423+0.j,\n 3.706458 +0.j, 1.80330714+0.j, 0.75497905+0.j, 0.13183776+0.j,\n 0.98857867+0.j, 3.6745403 +0.j, 0.61483971+0.j, 0.41669876+0.j,\n -0.26501952+0.j, 4.17288651+0.j, 0.19991104+0.j, 2.34125801+0.j,\n 0.31652345+0.j, 0.62058386+0.j, 2.16684412+0.j, 2.72026236+0.j,\n 1.09980084+0.j, 0.31652346+0.j, 0.62058387+0.j, 2.16684415+0.j,\n 4.17288656+0.j, 0.19991104+0.j, 2.34125804+0.j, 2.72026246+0.j,\n 1.09980085+0.j, 3.34766794+0.j, 0.54552516+0.j, 0.89160837+0.j,\n 2.71838179+0.j, 1.25694571+0.j, 0.10224517+0.j, 0.17981149+0.j,\n 1.13321999+0.j, 0.38368428+0.j, 1.34894718+0.j, 0.37245404+0.j,\n 1.33261983+0.j, -0.89319085+0.j, 0.3251749 +0.j, -0.19117131+0.j,\n 2.71838184+0.j, 1.25694572+0.j, 0.10224519+0.j, 0.1798115 +0.j,\n 1.13322002+0.j, 0.38368428+0.j, 0.32517492+0.j, -0.19117132+0.j]) = Dat(DataSet(Set((np.int64(556), np.int64(556), np.int64(556)), 'set_#x7fbc23714290'), (1,), 'None_nodes_dset'), None, dtype('complex128'), 'function_8383').data
E + where Dat(DataSet(Set((np.int64(556), np.int64(556), np.int64(556)), 'set_#x7fbc23714290'), (1,), 'None_nodes_dset'), None, dtype('complex128'), 'function_8383') = Coefficient(WithGeometry(FunctionSpace(<firedrake.mesh.MeshTopology object at 0x7fbc241e26c0>, FiniteElement('Regge', tetrahedron, 1), name=None), Mesh(VectorElement(FiniteElement('Lagrange', tetrahedron, 1), dim=3), 8339)), 14162).dat
tests/regression/test_interpolate_vs_project.py:58: AssertionError