What does "piezo v_max" mean?

Hi. Let me thank you for this great project!

I found “v_max” property in “Piezoelectricity”, but I don’t understand what does it means.
For example mp-35555,

v_{max}=[-0.56865, 0.60653, 0.55566]

and there is a comment “Crystallographic Direction”.

However, I’d think v_max is [111] (and other equivalent direction), what do you think?

Hi Yohei,

Thanks for this comment, I’ve linked below the piezoelectricity calculation documentation. As far as I can tell, this is a real-space vector that corresponds to the maximum piezoelectric response derived from the tensor. Perhaps @shyamd can comment further?


Thanks for reply!

I read the linked documentation and below paper(Jong2015).

However I think the v_{max} of mp-35555 is [111].

P : Piezoelectric Tensor

Then, max eigen value of Pv (: R^{3*3}) equals to |e_{ij}|_{max} written in mp-35555 page where v=[111], but not where v=v_{max}.

Hi Yohei,

You’re correct. The direction should be [111]. The method we use to compute that direction is Singular Value Decomposition since the piezo tensor is not square. The result is some noise in the values and a vector that lies within the equivalent families. In this case, the vector is in the [-111] direction which lies in the <111> family since this is a cubic material.

It’s also important to note that the piezo tensor and elastic tensor are for our conventional standard structure orientation. They have to be rotated if you intend to use them with the primitive cell or some other orientation, which will change that direction.

@shyamd just to be clear, are you saying v_{max} = [-0.56865, 0.60653, 0.55566] is actually a noisy/un-normalized v_{max} = [-1, 1, 1] ?

I’m not too concerned that it’s showing [-1,1,1] instead of [1,1,1] but we should probably round/normalize the noisy value + make it clear it’s referenced to the conventional cell, since lattice parameters at the top of the detail page show the primitive.

Hi mkhorton, thanks for reply!

Thus, are you saying that the basis of Piezo tensor is orthonormal, but the basis of v_{max} is not orthonormal?

@shyamd pushed a fix for this issue, so piezoelectric v_max values should now be more readable, e.g. your example of mp-35555 now reads [0, 0, 1]