# Question about strain rate calculation

**URL:** <https://community.geodynamics.org/t/question-about-strain-rate-calculation/4286>\
**Category:** ASPECT\
**Created:** [September 10, 2025, 1:33pm UTC](https://community.geodynamics.org/t/question-about-strain-rate-calculation/4286 "2025-09-10T13:33:33Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![kjun825](https://avatars.discourse-cdn.com/v4/letter/k/d07c76/32.png) [@kjun825](https://community.geodynamics.org/u/kjun825)\
**Post date:** [September 10, 2025, 1:33pm UTC](https://community.geodynamics.org/t/question-about-strain-rate-calculation/4286/1 "2025-09-10T13:33:33Z")

</div>

Hello,

I am currently working with ASPECT v2.4 and trying to verify the strain rate output in solution.pvd using ParaView.

Specifically, I took the strain rate tensor components (0–8; xx, xy, xz, yx, yy, yz, zx, zy, zz) and computed the strain rate magnitude following the manual. I used the tensor inner product (incompressible material):

 ![image](https://canada1.discourse-cdn.com/flex036/uploads/geodynamics/original/2X/9/98b32e5468c9c6ed61dd90234d6e5546de7606c6.png)

When I compared this with ASPECT’s built-in strain\_rate output, I noticed that there is about a factor of sqrt(2) difference.

In some documents, the strain rate magnitude is instead recorded as

![image](https://canada1.discourse-cdn.com/flex036/uploads/geodynamics/original/2X/4/4d587ec12d6618c15998361babb36c94f1c88765.png)

So my questions are:

1. Is it correct that ASPECT’s strain\_rate output corresponds to this latter definition (i.e., differs by a factor of sqrt(2) compared to the Frobenius norm?

2. In regions with strong strain rate contrasts (for example, where the background is ~1e-15 s⁻¹ and the local values drop to ~1e-16 s⁻¹), I observe absolute differences between the computed J2 strain rate and ASPECT’s output on the order of 1e-16 s⁻¹. Is this level of discrepancy expected due to numerical precision or postprocessing?

Thank you very much for clarifying.

Best regards,  
Kyeongjun.

---

<div class="post-metadata">

**Author:** ![bangerth](https://yyz2.discourse-cdn.com/flex036/user_avatar/community.geodynamics.org/bangerth/32/52_2.png) [@bangerth](https://community.geodynamics.org/u/bangerth)\
**Post date:** [September 11, 2025, 3:31am UTC](https://community.geodynamics.org/t/question-about-strain-rate-calculation/4286/2 "2025-09-11T03:31:28Z")

</div>

@kjun825 There is no consensus in the literature how to define the (scalar) strain rate as a function of the strain rate tensor – both of the formulas you show are used in various papers. As a consequence, it is indeed always useful to make sure you know what is being used in which context.

When you say “Aspect’s strain\_rate output”, I assume that you are talking about the `strain rate` visualization postprocessor. For this, the specific documentation of what it outputs is perhaps slightly difficult to find, but if you scroll down to “strain rate” from this link [Postprocess — ASPECT 3.1.0-pre](https://aspect-documentation.readthedocs.io/en/latest/parameters/Postprocess.html#parameters-postprocess-visualization-list-20of-20output-20variables), you see that it matches the former equation you show (without the 0.5).

As for your second question, I’m not entirely sure I understand what you are asking. What exactly is it you are comparing? What is the “computed J2 strain rate”?

Best

W.

---

<div class="post-metadata">

**Author:** ![kjun825](https://avatars.discourse-cdn.com/v4/letter/k/d07c76/32.png) [@kjun825](https://community.geodynamics.org/u/kjun825)\
**Post date:** [September 11, 2025, 5:15am UTC](https://community.geodynamics.org/t/question-about-strain-rate-calculation/4286/3 "2025-09-11T05:15:50Z")

</div>

Thank you for your reply.  
By “Aspect’s strain\_rate output,” I indeed meant the strain rate from the visualization postprocessor, as you mentioned. I also checked the manual and confirmed that it is defined using the formula without the factor of 0.5.

The reason I asked is that when I calculate the strain rate (via √tensor double contraction) from the visualization postprocessor’s strain rate tensor, there is a difference by a factor of 1/√2 compared to the visualization postprocessor’s strain rate.

The J2 strain rate refers to the form of strain rate where a factor of 1/√2 is applied to the tensor double contraction.

As you pointed out, since both definitions are widely used, I will make sure to double-check and use them appropriately depending on the context.

Thanks again for your kind answer.
