
Development of Geocrack3D is the primary focus of our effort. This project is supported by the US Department of Energy and the post-MTC Project (Murphy Project) by NEDO in Japan. The overall technical objectives of this project are to:
In order to have a solid foundation on which to build an interactive reservoir simulator, Geocrack3D uses a vertex-use based, non-manifold topological database to represent the problem domain (Mantyla, 1988; Weiler, 1986; Martha, 1997). Topology provides a rigorous framework for geometry description. The topology used in Geocrack3D includes vertices, edges, faces, and volumes. By defining a set of consistent Euler operators, and using only those operators during geometry construction, one can be guaranteed that the geometry created is physically meaningful. This approach makes it possible to describe the reservoir independent of any particular method to be used to solve the problem. The user works at the feature level (fractures, wells, boundaries) rather than with the mesh.
Three examples are:
You can go to the software download page and obtain the Geocrack3D executable and run these examples. However, we suggest that you first read about the feature-based approach as described in the following figures and text.
Figure 1 shows the first step in developing a model, the definition of the reservoir boundary. After the boundary is defined, the user can define fractures and wells in the reservoir. In this simple illustration, the user defines a set of parallel fractures (Figure 2). As shown in Figures 3 and 4, the user can then add intersecting fractures and wells. The important point is that the user has defined the reservoir using actual features of the reservoir. The user has not had to worry about how the problem will be meshed for the solution. In addition, the user has always had an interactive display of the model to see the features added. This makes the model more natural to use that a file-based input model.

Figure 1: The user begins by defining the outer boundary of the reservoir model.

Figure 2: Fractures are defined interactively. Presently only a simple method of defining fractures (a point on the fracture and a normal to the fracture) is implemented. More options will be developed.

Figure 3: This shows three wells added to the model. The intersections of the wells with the existing fractures are calculated automatically.

Figure 4: This illustrates adding two more fractures to the model. These fractures provide flow paths between the existing parallel fractures.
We have implemented the finite element solution for fluid flow on fractures and heat transfer. The heat transfer presently includes transport on the fractures and conduction in the rock. We are working on coupled elasticity. Our approach is to use object-oriented software methods to design a finite element program framework applicable to the coupled hydro-thermal-structure problem, while allowing extension and application to other problems. A draft design document has been completed and is being followed as we write the actual code to implement the solution.
The coupled physics of the problem provides a challenge, since we need to solve the structure, fluid, and heat transfer problems simultaneously. In traditional finite element implementations, where there are many different modeling capabilities, an element such as a six-noded triangle may have multiple implementations. For instance, there may be both plane stress and plane strain elements that are implemented using the same shape functions.
Our approach emphasizes that the main purpose of an element is discretization and interpolation. The underlying element physics are independent of the element functionality, except that the integration scheme must be able to capture adequately the physics. The underlying physics, called the element behavior, is separated from the element interpolation functionality. Then, a six-noded triangle element can have either plane stress or plane strain functionality by only changing the behavior, not the element.
The finite element implementation is shown in Figures 5 and 6. Figure 5 shows the discretization of the fracture planes into finite elements. This was done automatically. The solution was then obtained and is illustrated in Figure 6, which shows the pressure contours on the fractures. In this case, the middle well was an injection well and the two other wells were production wells.
Figure 7 shows a 3D mesh of the rock and Figure 8 shows the steady state temperatures.

Figure 5: After the problem is defined, the surfaces of the fractures are automatically meshed.

Figure 6: After the finite element solution is obtained, the solution can be displayed interactively. This figure shows contours of pressure on the fractures.

Figure 7: 3D meshing of the rock volume

Figure 8: Temperature contours in rock

Figure 7: While each face in the model is a plane, curved planes can be approximated using many faces.
Other capabilites include tracer analysis using particle tracking. The coupled elasticity analysis capability is presently under development.