Rifts: from uniform to exponential stretching

Hi all,

I received a question regarding the problem of uniform stretching in rifts (and have received similar questions in the past) so thought I’d post this…

If you create a deforming network in GPlates to model a rift and use it to stretch crustal thickness you might notice that the thickness reduces uniformly (equally) across the rift as it stretches, rather than retaining the initial (un-stretched) thickness near the margin and thinning the most near the rift axis.

This is usually because the rift network is insufficiently constrained in its interior - it usually just has points/lines along the margin (and also along the rift axis if ocean crust is forming there). One solution is to manually add more points in the interior region (where the plate ID of each interior point determines its velocity and hence affects the strain rate, which is the spatial gradient of velocity, and hence affects crustal thinning).

Another solution is to enable the exponential stretching in GPlates 2.2. This automatically adds more points to the interior of the deforming network (at run-time; you can see them if you view the network in mesh mode) and distributes the velocities at these points such that the strain rate varies exponentially (along the stretching direction) from the un-stretched side of the rift towards the rift centre.

If you want to play with it then you just need to load up your deforming model and add a ‘rift’ left and right plate ID to any of your deforming networks . It doesn’t matter which plate is left and which is right (ie, you can swap them). The presence of these two plate IDs is what triggers the rift stretching algorithm in GPlates (on a per-network basis).

There are also three other parameters (noted below), in addition to the two plate IDs mentioned, that can be used to control the degree of exponential stretching and how accurately to model the exponential strain rate curve. These parameters can either be set on a deforming network feature or just set in the layer (in GPlates). If they are set in both places then the feature properties override the layer parameters. These parameters can be directly modified to see what effect they have on crustal thicknesses.

Here are the parameters (all 5 can go in GPML file, and the 3 non-plate-ID parameters can also be set in the layers as a default):

  • riftLeftPlate/riftRightPlate:

    • Two conjugate rigid plates bounding a rift topological network.
    • The presence of riftLeftPlate and riftRightPlate triggers the generation of an exponential strain rate rift profile in GPlates.
    • These should only be defined when a topological network is a rift.
  • riftExponentialStretchingConstant:

    • Controls exponential variation of stretching across rift profile in network triangulation.
    • The strain rate in the rift stretching direction varies exponentially from un-stretched side of rift towards the rift axis.
    • The spatial variation in strain rate is SR(x) = SR_constant * exp(C*x) * [C * / (exp(C) - 1)] where SR_constant is un-subdivided strain rate, C is stretching constant and x=0 at un-stretched side and x=1 at stretched point. Therefore SR(0) < SR_constant < SR(1). For example, when C=1.0 then SR(0) = 0.58 * SR_constant and SR(1) = 1.58 * SR_constant.
  • riftStrainRateResolutionLog10:

    • Rift edges in network triangulation are sub-divided (ie, more interior points are inserted) until strain rate matches exponential curve within this tolerance (10 ^ riftStrainRateResolutionLog10, in units of 1/second).
    • To set riftStrainRateResolutionLog10, take your strain rate threshold (in units of 1/second) and then take log10 of that. For example, a strain rate resolution of 2e-17 gets converted to -16.7. (However, note that in the layer parameters you don’t need to take log10).
    • Note that sub-division is also limited by riftEdgeLengthThresholdDegrees (which may limit sub-division before riftStrainRateResolutionLog10 does).
  • riftEdgeLengthThresholdDegrees:

    • Rifts edges in network triangulation are sub-divided (ie, more interior points are inserted) to fit an exponential strain rate profile in the rift stretching direction. However sub-divided rift edges shorter than this length, in degrees, will not be further sub-divided.
    • Note that sub-division is also limited by riftStrainRateResolutionLog10 (which may limit sub-division before riftEdgeLengthThresholdDegrees does).