• Tidak ada hasil yang ditemukan

A key challenge when evolving event horizons is to be able to accurately determine when geodesics merge onto the horizon. In the event horizon finder, the geodesics being tracked are not all on the event horizon for all time. Some of these geodesics have merged onto the black hole during

the time period covered by the simulation. As such, distinguishing these geodesics from others is not automatic. The set of such merger points has been studied extensively [7, 8], where it is argued that this set of points forms a 2-dimensional surface segment of the full 3-dimensional null hypersurface, and that these points can be classified into two types. Caustics points, discussed previously in Section 5.1.4, occur when neighboring rays converge. These points are not generic, but rather serve as a boundary to the set of generic meeting points, termed cross-over points, in which non-neighboring points converge. In the head-on axisymmetric case (Section 5.1), the symmetry condenses the set of merger points in such a way that all merger points are on the boundary of the set of merger points, and are therefore caustic points. Interestingly, we find that in the spinning head-on case (Section 5.2), despite the lack of pure axisymmetry, the set of merger points is also composed entirely of caustic points. In these cases, it was sufficient to perform a collision detection analysis designed to catch only caustic points (see Section 5.1.5). However, this is not the case for mergers that result from inspirals. Therefore, a new technique for detecting crossover points is required.

In order to detect crossover points, we resort to a straightforward point-surface collision detection algorithm. We model the event horizon as a set of triangles. These triangles are easily defined, since the geodesics are initially placed on the collocation points of an S2 surface, which is a rectangular grid, and the property “neighbor-ness” (i.e. knowing which geodesics are to the left/right/above/below any given geodesic) is maintained throughout the simulation. Since represent our geodesic set as an expansion in vector spherical harmonics, the number of geodesics in a surface of resolution L is 2(L+ 1)2, and the number of triangles in the surface is 4(L+ 1)2. The polar regions of the S2 parameter-surface not covered by the rectangular grid have triangles defined by placing an artificial pole point using the meanx, y, zcoordinates of the top row of geodesics on the S2 rectangular grid.

Triangles formed above (below) the rectangular grid each use two neighboring geodesics on the top (bottom) row, and the north (south) pole point of the S2 configuration. The algorithm compares every triangle with every geodesic point, to determine whether the geodesic has passed through that triangle between the current and previous time-step. If the number of geodesics on the horizon in N, the number of triangles is 2N, and the algorithm scales asO(N2). Unfortunately, we have not been able to develop an algorithm where the number of operations scales with a better thanO(N2) behavior.

Determining whether the point has passed through the triangle proceeds as follows (see Figure 6.1 for a diagram): Suppose that the positions of the three geodesics that comprise the vertices of the triangle at time t0 are p0, q0, r0, and the position of the potentially intersecting geodesic isa0. At time t1 these positions are p1, q1, r1 anda1. We assume that the geodesics move linearly in space between timet0andt1. Thusp(t) =p0+t(p1−p0) =p0+tp, and similarly for¯ q, panda. We now

a 0

a 1

p 0

q 0 r 0 r q 1

p 1

1

n 1

n 0 p

q r

Figure 6.1: Diagram of collision detection between a moving triangle and a moving point.

define the normal of the triangle at timet0

n0= (q0−p0)×(r0−p0), (6.1) where we have assumed that the orientation of the triangle points is anti-clockwise. As a function of time, the normal is

n(t) = (q(t)−p(t))×(r(t)−p(t))

= (q0−p0+tq−p))¯ ×(r0−p0+tr−p))¯

= (q0−p0)×(r0−p0) +t[(¯q−p×(r0−p0) + (q0−p0)×r−p)]¯

+t2q−p×r−p).¯ (6.2)

Sincep0, q0, r0,p,¯ q,¯ r¯are known quantities, we can write Equation 6.2 as

n(t) =n0+αt+βt2. (6.3)

Now, any given planeP has the property that

∀i∈P, i·nP =D, (6.4)

whereDis a constant, andnP is the normal of the plane. Now,D(t) =p(t)·n(t), a cubic equation,

so our geodesica(t) and the triangle{p, q, r}(t) are coplanar at timestwhich satisfy the equation

p(t)·n(t)−a(t)·n(t) =n(t)·(p(t)−a(t)) = 0. (6.5) Equation 6.5 is a cubic with algebraic roots, which can be solved for analytically. For every root found between t0 < t ≤t1, it is a simple matter to check whether a(troot) is within the triangle {p, q, r}(troot), rather than merely being co-planar.

There are of course a few important boundary conditions to be checked, such as ensuring that the geodesic being tested for intersection is not one of the geodesics that make up the triangle, or including special cases for when the cubic equation is degenerate, but the algorithm itself is quite robust and effective. Although the algorithm is, as mentioned above, of orderO(N2), the expense of the algorithm is mitigated by two factors. Firstly, since the algorithm involves analytically solving an at most cubic equation, the run time of each individual instance is very small, on the order of microseconds. Secondly, the looping condition is sufficiently simple that it can be parallelized over multiple cores without any significant overhead. In practice, with the current maximum resolution of just under 30,000 geodesics, the run-time is not prohibitive. Additionally, since the caustic point-finding algorithm from Section 5.1.4 is run prior to the collision detection algorithm we can determine the caustic vs. crossover structure of the event horizon.

6.3 Topological structure of the Event Horizon for an Inspiral-