Elastic workflow output

Hi,

I was using the elastic workflow to get elastic constants. I successfully run the workflow for graphene, MoS2 and WSe2, and I used the following script to read shear and bulk moduli:

from
atomate.utils.utils import get_database

from
pymatgen import Structure

from
pymatgen.analysis.elasticity.elastic import ElasticTensor

PATH_TO_MY_DB_JSON
= <>

atomate_db
= get_database(PATH_TO_MY_DB_JSON, admin = True)

results
= atomate_db.elasticity.find()

entries = [entry for entry in results]

for entry in entries:

structure =
Structure.from_dict(entry[‘optimized_structure’])

elastic_tensor =
entry[‘elastic_tensor’][‘raw’] # convert to pymatgen object

elastic_tensor =
ElasticTensor.from_voigt(elastic_tensor)

print(elastic_tensor.g_vrh)

print(elastic_tensor.k_vrh)

The values I got for graphene is the same as what I had by doing calculations manually and performing a fit, but the values for MoS2 is very off. I am suspecting that the units are not consistent. I wonder what the unit the output is? I couldn’t find anything in the documentation. Thanks in advance for your help!

Best,

Zoe

The units should be GPa.

···

Joseph Montoya, PhD

Research Scientist, Accelerated Materials Design and Discovery

TOYOTA** ****Research **Institute

On Jul 2, 2019, at 12:38 PM, zz…@g.harvard.edu wrote:

Hi,

I was using the elastic workflow to get elastic constants. I successfully run the workflow for graphene, MoS2 and WSe2, and I used the following script to read shear and bulk moduli:

from
atomate.utils.utils import get_database

from
pymatgen import Structure

from
pymatgen.analysis.elasticity.elastic import ElasticTensor

PATH_TO_MY_DB_JSON
= <>

atomate_db
= get_database(PATH_TO_MY_DB_JSON, admin = True)

results
= atomate_db.elasticity.find()

entries = [entry for entry in results]

for entry in entries:

structure =
Structure.from_dict(entry[‘optimized_structure’])

elastic_tensor =
entry[‘elastic_tensor’][‘raw’] # convert to pymatgen object

elastic_tensor =
ElasticTensor.from_voigt(elastic_tensor)

print(elastic_tensor.g_vrh)

print(elastic_tensor.k_vrh)

The values I got for graphene is the same as what I had by doing calculations manually and performing a fit, but the values for MoS2 is very off. I am suspecting that the units are not consistent. I wonder what the unit the output is? I couldn’t find anything in the documentation. Thanks in advance for your help!

Best,

Zoe

You received this message because you are subscribed to the Google Groups “atomate” group.

To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].

To post to this group, send email to [email protected].

To view this discussion on the web visit https://groups.google.com/d/msgid/atomate/8e49939d-1536-4cb1-965f-63f55c7b44b7%40googlegroups.com.

For more options, visit https://groups.google.com/d/optout.


Confidential or protected information may be contained in this email and/or attachment. Unless otherwise marked, all TRI email communications are considered “PROTECTED” and should not be shared or distributed. Thank you.

Hi Dr. Montoya,

Thanks for your response. But does this unit make sense for 2D materials? GPa can be converted to eV/A^3, but how does it convert to eV/A^2 for a 2D material?

Best,

Zoe Zhu

···

On Tuesday, July 2, 2019 at 3:39:48 PM UTC-4, Joseph Montoya wrote:

The units should be GPa.

Joseph Montoya, PhD

Research Scientist, Accelerated Materials Design and Discovery

TOYOTA** ****Research **Institute

On Jul 2, 2019, at 12:38 PM, z…@g.harvard.edu wrote:

Hi,

I was using the elastic workflow to get elastic constants. I successfully run the workflow for graphene, MoS2 and WSe2, and I used the following script to read shear and bulk moduli:

from
atomate.utils.utils import get_database

from
pymatgen import Structure

from
pymatgen.analysis.elasticity.elastic import ElasticTensor

PATH_TO_MY_DB_JSON
= <>

atomate_db
= get_database(PATH_TO_MY_DB_JSON, admin = True)

results
= atomate_db.elasticity.find()

entries = [entry for entry in results]

for entry in entries:

structure =
Structure.from_dict(entry[‘optimized_structure’])

elastic_tensor =
entry[‘elastic_tensor’][‘raw’] # convert to pymatgen object

elastic_tensor =
ElasticTensor.from_voigt(elastic_tensor)

print(elastic_tensor.g_vrh)

print(elastic_tensor.k_vrh)

The values I got for graphene is the same as what I had by doing calculations manually and performing a fit, but the values for MoS2 is very off. I am suspecting that the units are not consistent. I wonder what the unit the output is? I couldn’t find anything in the documentation. Thanks in advance for your help!

Best,

Zoe

You received this message because you are subscribed to the Google Groups “atomate” group.

To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].

To post to this group, send email to [email protected].

To view this discussion on the web visit https://groups.google.com/d/msgid/atomate/8e49939d-1536-4cb1-965f-63f55c7b44b7%40googlegroups.com.

For more options, visit https://groups.google.com/d/optout.


Confidential or protected information may be contained in this email and/or attachment. Unless otherwise marked, all TRI email communications are considered “PROTECTED” and should not be shared or distributed. Thank you.