dc3dm: Software to efficiently form and apply a 3D DDM operator for a nonuniformly discretized rectangular planar fault
Abstract
My poster will describe dc3dm, a free open source software (FOSS) package that efficiently forms and applies the linear operator relating slip and traction components on a nonuniformly discretized rectangular planar fault in a homogeneous elastic (HE) half space. This linear operator implements what is called the displacement discontinuity method (DDM). The key properties of dc3dm are: 1. The mesh can be nonuniform. 2. Work and memory scale roughly linearly in the number of elements (rather than quadratically). 3. The order of accuracy of my method on a nonuniform mesh is the same as that of the standard method on a uniform mesh. Property 2 is achieved using my FOSS package hmmvp [AGU 2012]. A nonuniform mesh (property 1) is natural for some problems. For example, in a rate-state friction simulation, nucleation length, and so required element size, scales reciprocally with effective normal stress. Property 3 assures that if a nonuniform mesh is more efficient than a uniform mesh (in the sense of accuracy per element) at one level of mesh refinement, it will remain so at all further mesh refinements. I use the routine DC3D of Y. Okada, which calculates the stress tensor at a receiver resulting from a rectangular uniform dislocation source in an HE half space. On a uniform mesh, straightforward application of this Green's function (GF) yields a DDM I refer to as DDMu. On a nonuniform mesh, this same procedure leads to artifacts that degrade the order of accuracy of the DDM. I have developed a method I call IGA that implements the DDM using this GF for a nonuniformly discretized mesh having certain properties. Importantly, IGA's order of accuracy on a nonuniform mesh is the same as DDMu's on a uniform one. Boundary conditions can be periodic in the surface-parallel direction (in both directions if the GF is for a whole space), velocity on any side, and free surface. The mesh must have the following main property: each uniquely sized element must tile each element larger than itself. A mesh generated by a family of quadtrees has this property. Using multiple quadtrees that collectively cover the domain enables the elements to have a small aspect ratio. Mathematically, IGA works as follows. Let Mn be the nonuniform mesh. Define Mu to be the uniform mesh that is composed of the smallest element in Mn. Every element e in Mu has associated subelements in Mn that tile e. First, a linear operator Inu mapping data on Mn to Mu implements smooth (C^1) interpolation; I use cubic (Clough-Tocher) interpolation over a triangulation induced by Mn. Second, a linear operator Gu implements DDMu on Mu. Third, a linear operator Aun maps data on Mu to Mn. These three linear operators implement exact IGA (EIGA): Gn = Aun Gu Inu. Computationally, there are several more details. EIGA has the undesirable property that calculating one entry of Gn for receiver ri requires calculating multiple entries of Gu, no matter how far away from ri the smallest element is. Approximate IGA (AIGA) solves this problem by restricting EIGA to a neighborhood around each receiver. Associated with each neighborhood is a minimum element size s^i that indexes a family of operators Gu^i. The order of accuracy of AIGA is the same as that of EIGA and DDMu if each neighborhood is kept constant in spatial extent as the mesh is refined.
- Publication:
-
AGU Fall Meeting Abstracts
- Pub Date:
- December 2013
- Bibcode:
- 2013AGUFM.T51D2490B
- Keywords:
-
- 0560 COMPUTATIONAL GEOPHYSICS Numerical solutions;
- 0545 COMPUTATIONAL GEOPHYSICS Modeling