#X3Start = 0.; X3End = 1. Rin = 0.98 * (1. + np.sqrt(1. - blackHoleSpin * blackHoleSpin)) Rout = 40. X1Start = np.log(Rin) X1End = np.log(Rout) X2Start = 1e-8 X2End = 1. - 1e-8 X3Start = 0. X3End = 2. * np.pi periodicBoundariesX1 = False periodicBoundariesX2 = False periodicBoundariesX3 = False numVars = 10 prim = gridPy.gridPy(N1, N2, N3, dim, numVars, numGhost, periodicBoundariesX1, periodicBoundariesX2, periodicBoundariesX3) fluxesX1 = gridPy.gridPy(N1, N2, N3, dim, numVars, numGhost, periodicBoundariesX1, periodicBoundariesX2, periodicBoundariesX3) XCoords = gridPy.coordinatesGridPy(N1, N2, N3, dim, numGhost, X1Start, X1End, X2Start, X2End, X3Start, X3End) X1Coords, X2Coords, X3Coords = XCoords.getCoords(gridPy.CENTER) geom = geometryPy.geometryPy(geometryPy.MODIFIED_KERR_SCHILD, blackHoleSpin, hSlope, XCoords) elem = physicsPy.fluidElementPy(prim, geom) numReads, numWrites = elem.computeFluxes(gridPy.X1, fluxesX1) print "numReads = ", numReads, " numWrites = ", numWrites
X2Start = 0.; X2End = 1. X3Start = 0.; X3End = 1. periodicBoundariesX1 = False periodicBoundariesX2 = False periodicBoundariesX3 = False XCoords = gridPy.coordinatesGridPy(N1, N2, N3, dim, numGhost, X1Start, X1End, X2Start, X2End, X3Start, X3End ) X1Coords, X2Coords, X3Coords = XCoords.getCoords(gridPy.CENTER) geomMinkowski = geometryPy.geometryPy(geometryPy.MINKOWSKI, 0., 0., XCoords ) def test_minkowski_params(): np.testing.assert_equal(N1, geomMinkowski.N1) np.testing.assert_equal(N2, geomMinkowski.N2) np.testing.assert_equal(N3, geomMinkowski.N3) np.testing.assert_equal(dim, geomMinkowski.dim) np.testing.assert_equal(numGhost, geomMinkowski.numGhost) def test_minkowski_gCov(): np.testing.assert_allclose(geomMinkowski.gCov[0][0], -1.) np.testing.assert_allclose(geomMinkowski.gCov[0][1], 0.) np.testing.assert_allclose(geomMinkowski.gCov[0][2], 0.) np.testing.assert_allclose(geomMinkowski.gCov[0][3], 0.) np.testing.assert_allclose(geomMinkowski.gCov[1][0], 0.)
numGhost = 3 X1Start = 0. X1End = 1. X2Start = 0. X2End = 1. X3Start = 0. X3End = 1. periodicBoundariesX1 = False periodicBoundariesX2 = False periodicBoundariesX3 = False XCoords = gridPy.coordinatesGridPy(N1, N2, N3, dim, numGhost, X1Start, X1End, X2Start, X2End, X3Start, X3End) X1Coords, X2Coords, X3Coords = XCoords.getCoords(gridPy.CENTER) geomMinkowski = geometryPy.geometryPy(geometryPy.MINKOWSKI, 0., 0., XCoords) def test_minkowski_params(): np.testing.assert_equal(N1, geomMinkowski.N1) np.testing.assert_equal(N2, geomMinkowski.N2) np.testing.assert_equal(N3, geomMinkowski.N3) np.testing.assert_equal(dim, geomMinkowski.dim) np.testing.assert_equal(numGhost, geomMinkowski.numGhost) def test_minkowski_gCov(): np.testing.assert_allclose(geomMinkowski.gCov[0][0], -1.) np.testing.assert_allclose(geomMinkowski.gCov[0][1], 0.) np.testing.assert_allclose(geomMinkowski.gCov[0][2], 0.) np.testing.assert_allclose(geomMinkowski.gCov[0][3], 0.)
numVars=10 prim = gridPy.gridPy(N1, N2, N3, dim, numVars, numGhost, periodicBoundariesX1, periodicBoundariesX2, periodicBoundariesX3 ) fluxesX1 = gridPy.gridPy(N1, N2, N3, dim, numVars, numGhost, periodicBoundariesX1, periodicBoundariesX2, periodicBoundariesX3 ) XCoords = gridPy.coordinatesGridPy(N1, N2, N3, dim, numGhost, X1Start, X1End, X2Start, X2End, X3Start, X3End ) X1Coords, X2Coords, X3Coords = XCoords.getCoords(gridPy.CENTER) geom = geometryPy.geometryPy(geometryPy.MODIFIED_KERR_SCHILD, blackHoleSpin, hSlope, XCoords ) elem = physicsPy.fluidElementPy(prim, geom) numReads, numWrites = elem.computeFluxes(gridPy.X1, fluxesX1) print "numReads = ", numReads, " numWrites = ", numWrites