• No results found

current layers generated by the tangling of multiple flux tubes. As mentioned previously, the collapse of a 3D null point can lead to current accumulations forming along the spine, separatrix surface or separator associated with the null [Pontin and Craig, 2005, Fuentes- Fern´andez and Parnell, 2012, 2013]. Current layers may also form due to ideal MHD instabilities [Browning et al., 2008] and at quasi-separatrix layers [Galsgaard et al., 2003, Titov et al., 2003, Aulanier et al., 2005, Wilmot-Smith et al., 2009c]. Therefore, as is mentioned previously, 3D reconnection can occur at 3D null points, as in 2D reconnection, but also in their absence.

1.7

Numerical codes

The main aspect of this thesis is to study the equilibrium fields formed by the non- resistive MHD relaxation of a single magnetic separator system, involving the intersection of the separatrix surfaces from two oppositely signed 3D nulls. The evolution of this MHS equilibrium is then studied in a resistive MHD reconnection experiment. Therefore, we are required to use numerical techniques to determine the MHD behaviour of our separator model system and then additional techniques are required to identify the magnetic skeleton of our model during its MHD evolution. Here, we discuss the three codes which we have employed to firstly perform the relaxation and subsequent reconnection of our field and then to locate and characterise the 3D null points, separatrix surfaces and separators throughout the experiments.

1.7.1 MHD code: Lare3d

We use the 3D MHD code, Lare3d, [Arber et al., 2001] to perform our numerical experi- ments. Lare3d is a staggered Lagrangian re-map code, in which the scalar quantities (ρ - density, - internal energy per unit mass andp - pressure) are defined at the cell centres and the magnetic field components,B, are defined on the cell faces to help maintain∇ ·B

= 0. This is done using the Evan’s and Hawley constrained transport method for the magnetic flux [Evans and Hawley, 1988]. Also, the velocity components, v, are staggered with respect to the pressure and magnetic field to prevent the checkerboard instability and so are placed at the cell vertices [Arber et al., 2001]. This layout is displayed in Fig. 1.11.

The code works in two steps with the first part being the Lagrangian step in which the code solves the MHD equations in a frame that moves with the fluid. The second step is a purely geometrical mapping of the Lagrangian grid back onto the original Eulerian grid. For a Lagrangian grid the code’s mesh moves with the fluid and is deformed at each step so no mass crosses the cell boundaries. An Eulerian grid is fixed and the mass flows between the boundaries. Using a Lagrangian grid allows all the physics to be dealt with in one step and allows more physics to be easily added in.

The Lare3d code solves the normalised MHD equations and employs the following normalised quantities (using subscript n to denote the normalising factors and hats to

1.7. NUMERICAL CODES 22

Figure 1.11: Cube displaying the positions of the scalar quantities and magnetic and velocity vector field components used by Lare3d.

represent dimensionless variables which the code uses)

x=Lnxˆ,

B=BnBˆ, (1.37)

ρ=ρnρ,ˆ

where x = (x, y, z) is the length. These factors then define the following normalising constants for the velocity, pressure, current and internal energy per unit mass, respectively,

vn= Bn √ µ0ρn , pn= Bn2 µ0 , (1.38) jn= Bn µ0Ln , n=vn2 = Bn2 µ0ρn ,

where µ0(= 1) is the dimensionless magnetic permeability. From these equations the

plasma beta can be written as

β= 2ˆp ˆ

B2. (1.39)

Therefore, the standard MHD equations used in Lare3d, in the absence of gravity, are (note that the hats are dropped here)

1.7. NUMERICAL CODES 23 Dv Dt = 1 ρ(∇ ×B)×B− 1 ρ∇p+ 1 ρFν, (1.41) DB Dt = (B· ∇)v−B(∇ ·v)− ∇ ×(η∇ ×B), (1.42) D Dt =− p ρ∇ ·v+ 1 ρHν + ηj2 ρ . (1.43) Here Fν = ρν(∇2v+ 1

3∇(∇ ·v)) is the viscous force, where ν is the coefficient of kine-

matic viscosity, andHν = ρν(12eijeij −23(∇ ·v)2) is the viscous heating term (an added

contribution to the internal energy density), whereeij = (∂vi/∂xj) + (∂vj/∂xi) is the rate

of strain tensor.

In the chapters where we are performing a non-resistive relaxation of our model, the resistivity,η, is set to zero.

1.7.2 Finding the magnetic skeleton

All of the work involved in this thesis involves magnetic separators and, hence, having run our numerical experiments we then need to determine the location and nature of the magnetic skeleton in every frame of our experiment.

3D nulls

In order to find the position within the numerical domain and type (positive or negative) of the 3D magnetic null points in the experiments discussed throughout this thesis, I have used the trilinear null finding method described in Haynes and Parnell [2007]. This null finding method assumes that the field within the cell varies in a trilinear manner, that is it is assumed to vary linearly in x, linearly in y and linearly in z. This assumption has the advantage that the null points found will agree with the field lines drawn, since to interpolate along a field line the same assumption is made.

This null finding method works in three steps:

(i) Reduction - the first step scans each cell in the domain and removes those cells which can not possibly contain a 3D magnetic null point. In order to test whether a cell can contain a null or not, the signs ofBx, By andBz on the eight vertices are considered

(Fig. 1.12). If all three components of the magnetic field have the same sign at all eight vertices of a cell then the cell is removed from further consideration since the magnetic field can not be found to be zero at any point in the cell.

(ii) Analysis - the remaining cells are now analysed to check if a null does actually exist inside them. For a null to exist within a cell, the three lines Bx = By = 0,

Bx = Bz = 0 and By = Bz = 0 individually will either intersect the cell faces or

form a loop within the cell. If the lines form a circuit within a cell then two 3D nulls points would lie within that cell indicating that the field within the cell is not properly resolved. Therefore, the null finding code considers the latter option. Figs. 1.13a, 1.13b and 1.13c display three cells, containing surfaces ofBx= 0,By = 0

and Bz = 0, respectively. Using the bilinear nature of the field on the cell faces, all

1.7. NUMERICAL CODES 24

Figure 1.12: A cell with a value ofB= (Bx, By, Bz) at each vertex.

cell faces (solid lines in Figs. 1.13a, 1.13b and 1.13c). For a null to exist each of these pairs of curves (Bx =By = 0, Bx = Bz = 0 and By =Bz = 0) must have a

minimum of two intersections on the surfaces. Consider the pair of curvesBx = 0 and

By = 0. Having found two intersections of these curves on the cell faces (asterisks

in Fig. 1.13d), a null can only be found to exist within the cell if the sign of Bz at

one of these intersections is the opposite of the sign ofBz at the other intersection,

i.e., the surface Bz = 0 intersects the line of Bx =By = 0 which goes through the

cell joining the asterisks in Fig. 1.13d.

Figure 1.13: An example cell with surfaces of (a) Bx = 0 (blue), (b) By = 0 (green) and

(c) Bz = 0 (maroon). The thick blue/green/maroon lines represent where these surfaces

intersect the cell faces. (d) A cell containing these three surfaces, with all sides opened up, is displayed below the three individual cells.

1.7. NUMERICAL CODES 25

(iii) Position - if a cell has been identified as one which contains a null point, the location of the null is found to subgrid resolution by iterating from a set of initial points inside the cell in question using Newton-Raphson.

1.7.3 Finding the skeleton of a 3D null point

The spine’s of the nulls which we discuss throughout this thesis are found using the eigenvector method as discussed in Haynes and Parnell [2010]. Using the eigenvector of the spine,xs, (which is associated with the eigenvalueλs of opposite sign to the other two

eigenvalues) two initial points are placed a small radius away from the null on either side of it. These two points are in the directions±xs. A field line tracing method is then used to draw the spine out from either side of the null. For an analytical field, the eigenvalues and eigenvectors of a null can be easily found, but even for a numerical field where these values may not be known exactly, the eigenvector method still works. This is because field lines, which are traced from starting points sufficiently close to the null point such that the magnetic field is linear, will tend towards the spine according to Eq. 1.35

The method we employ for finding and tracing the separatrix surfaces of the nulls is also discussed in Haynes and Parnell [2010]. This method stores the data for the separatrix surfaces in rings which, depending on the nature of the null and its separatrix surface, may be a complete ring or a series of arcs separated by discontinuities. This method works in four distinct steps:

(i) Initialisation - The first step draws a pair of rings, one is a single point at the null, and the other is a ring centred on the null, and on the plane spanned byxf1 andxf2,

with a radius small enough such that the magnetic field here is close to linear.

(ii) Expansion - This step involves the creation of additional rings tracing out the sep- aratrix surface. Field lines are traced out from the points on the initial ring and a new ring is formed a short distance along these lines such that the new ring is not too far from the previous ring. Now checks are implemented which ensure the points on the new ring are not too far apart from each other (within a given tolerance) and are not too close together. If points are found to be further apart than the tolerance then (linear) interpolation will be carried out between these points and additional points will be added to fill the gap. If the points are too close together then some points will be removed.

(iii) Null-breaking - This stage sees null points being identified in the new ring. If the distance from a null point to any point on the (n+ 1)th ring is smaller than a set distance, then the position of the point on the nth ring closest to the null is

moved to the location of the null. Two new points are placed onto the ring a small distance along the spine of the new null point (one on either side). This implies that rings drawn from this point onwards will have a discontinuity which lies between these two points. This step is repeated until either the separatrix surface reaches the boundary of the box or the whole surface is bounded by spines from oppositely signed null points.

(iv) Trace-back - Finally the separators may be traced between the null points. As discussed previously, the separatrix surface has a break in it at each null of opposite