pymatgen-io-validation


Namepymatgen-io-validation JSON
Version 0.0.3 PyPI version JSON
download
home_pagehttps://github.com/materialsproject/pymatgen-io-validation
SummaryA comprehensive I/O validator for electronic structure calculations
upload_time2024-05-08 23:24:20
maintainerMatthew Kuner
docs_urlNone
authorJanosh Riebesell, Jason Munro, Aaron Kaplan
requires_python>=3.8
licensemodified BSD
keywords io validation dft vasp
VCS
bugtrack_url
requirements pymatgen emmet-core pydantic pydantic-core pydantic-settings typing-extensions monty numpy requests
Travis-CI No Travis.
coveralls test coverage No coveralls.
            pymatgen-io-validation
=====

This package is an extension to `pymatgen` for performing I/O validation. Specifically, this package checks for discrepancies between a specific calculation and a provided input set; it also checks for known bugs when certain input parameters are used in combination, alongside several other small checks. The motivation for creating this package was to ensure VASP calculations performed by groups outside of the Materials Project (MP) are compliant with MP data, thus enabling their raw data to be included in the MP Database.


Installation
=====

You can install this package by simply running

`pip install pymatgen-io-validation`


Usage
=====

For validating calculations from the raw files, run:
```
from pymatgen.io.validation import ValidationDoc
validation_doc = ValidationDoc.from_directory(dir_name = path_to_vasp_calculation_directory)
```

In the above case, whether a calculation passes the validator can be accessed via `validation_doc.valid`. Moreover, reasons for an invalidated calculation can be accessed via `validation_doc.reasons` (this will be empty for valid calculations). Last but not least, warnings for potential issues (sometimes minor, sometimes major) can be accessed via `validation_doc.warnings`.
\
\
For validating calculations from `TaskDoc` objects from the [Emmet](https://github.com/materialsproject/emmet) package, run:
```
from pymatgen.io.validation import ValidationDoc
validation_doc = ValidationDoc.from_task_doc(task_doc = my_task_doc)
```

Contributors
=====

* [Matthew Kuner](https://github.com/matthewkuner) (lead), email: matthewkuner@gmail.com
* [Aaron Kaplan](https://github.com/esoteric-ephemera)
* [Janosh Riebesell](https://github.com/janosh)
* [Jason Munro](https://github.com/munrojm)


Rationale
====

| **Parameter** | **Reason** |
| ---- | ---- |
| ADDGRID | ADDGRID must be set to False. MP uses ADDGRID = False, as the VASP manual states “please do not use this tag [ADDGRID] as default in all your calculations!”. ADDGRID can affect the outputted forces, hence all calculations are thus required to have ADDGRID = False for compatibility. |
| AEXX / AMGGAX / AMGGAC / AGGAX / ALDAC / ALDAX | These parameters should be the VASP defaults unless otherwise specified in a given MP input set, as changing them is effectively a change to the level of theory. |
| ALGO / IALGO | ALGO must be one of: "Normal", "Conjugate", "All", "Fast", "Exact". (This corresponds to an IALGO of 38, 58, 58, 68, 90, respectively). |
| DEPER / EBREAK / WEIMIN | DEPER, EBREAK, and WEIMIN should not be changed according to the VASP wiki, hence MP requires them to remain as their default values. |
| EDIFF | EDIFF must be equal to or greater than the value in the relevant MP input set. This will ensure compatibility between results with those in the MP Database. |
| EDIFFG | Should be the same or better than in the relevant MP input set. For MP input sets with an energy-based cutoff, the calculation must have an energy change between the last two steps be less in magnitude than the specified EDIFFG (so even if your calculation uses force-based convergence, the energy must converge within the MP input set’s specification). The same logic applies to MP input sets with force-based EDIFFG settings. |
| EFERMI | EFERMI must be one of: "LEGACY", "MIDGAP" |
| EFIELD | Current MP input sets used to construct the main MP database do not set EFIELD, and hence we require this to be unset or set to 0. |
| ENAUG | If ENAUG is present in the relevant MP input set, then a calculation’s ENAUG must be equal to or better than that value. |
| ENCUT | ENCUT must be equal to or greater than the value in the relevant MP input set, as otherwise results will likely be incompatible with MP. |
| ENINI | ENINI must not be adjusted for high-throughput calculations, and hence should be left equal to the value used for ENCUT in the relevant MP input set. Values greater than the ENCUT in the relevant MP input set will also be accepted, though we expect this to be uncommon and do not recommend it. |
| EPSILON | EPSILON must be set to the VASP default of 1. Changing the dielectric constant of the medium will cause results to be incompatible with MP. |
| GGA / METAGGA | The level of theory used must match the relevant MP input set. Moreover, GGA and METAGGA should never be set simultaneously, as this has been shown to result in seriously erroneous results. See https://github.com/materialsproject/atomate2/issues/453#issuecomment-1699605867 for more details. |
| GGA_COMPAT | GGA_COMPAT must be set to the VASP default of True. The VASP manual only recommends setting this to False for noncollinear magnetic calculations, which are not currently included in the MP database. |
| IBRION | IBRION values must be one of: -1, 1, 2. Other IBRION values correspond to non-standard forms of DFT calculations that are not included in the MP database. (Note that, while phonon data is included in the MP database, such values are not calculated using, say, IBRION = 5. Such logic applies to all other IBRION values not allowed). |
| ICHARG | ICHARG must be set to be compatible with the calculation type. For example, if the relevant MP input set is for a SCF calculation, ICHARG $\leq 9$ must be used. For NSCF calculations, the value for ICHARG must exactly match the value contained in the relevant MP input set. |
| ICORELEVEL | ICORELEVEL must be set to 0. MP does not explicitly calculate core energies. |
| IDIPOL | IDIPOL must be set to 0 (the VASP default). |
| IMAGES | IMAGES must be set to 0 to match MP calculations. |
| INIWAV | INIWAV must be set as the VASP default of 1 to be consistent with MP calculations. |
| ISPIN | All values of ISPIN are allowed, though it should be noted that virtually all MP calculations permit spin symmetry breaking, and have ferromagnetic, antiferrogmanetic, or nonmagnetic ordering. |
| ISMEAR | The appropriate ISMEAR depends on the bandgap of the material (which cannot be known a priori). As per the VASP manual: for metals (bandgap = 0), any ISMEAR value in [0, 1, 2] is acceptable. For nonmetals (bandgap > 0), any ISMEAR value in [-5, 0] is acceptable. Hence, for those who are performing normal relaxations/static calculations and want to ensure their calculations are MP-compatible, we recommend setting ISMEAR to 0. |
| ISIF | MP allows any ISIF $\geq 2$. This value is restricted as such simply because all ISIF values $\geq 2$ output the complete stress tensor. |
| ISYM | ISYM must be one of -1, 0, 1, 2, except for when the relevant MP input set uses a hybrid functional, in which case ISYM=3 is also allowed. |
| ISTART | ISTART must be one of: 0, 1, 2. |
| IVDW | IVDW must be set to 0. MP currently does not apply any vdW dispersion corrections. |
| IWAVPR | IWAVPR must be set to 0 (the default). VASP discourages users from setting this tag. |
| KGAMMA | KGAMMA must be set to True (the VASP default). This is only relevant when no KPOINTS file is used. |
| KSPACING / KPOINTS | The KSPACING parameter or KPOINTS file must correspond with at least 0.9 times **the number of KPOINTS in the non-symmetry-reduced Brillouin zone specified by the relevant MP input set** (i.e., not the number of points in the irreducible wedge of the first Brillouin zone). Hence, either method of specifying the KPOINTS can be chosen. This ensures that a calculation uses a comparable number of kpoints to MP. |
| Kpoint mesh type (for KPOINTS) | The type of Kpoint mesh must be valid for the symmetry of the crystal structure in the calculation. For example, for a hexagonal closed packed structure, one must use a $\Gamma$-centered mesh. All Kpoints generated using Pymatgen *should* be valid. |
| LASPH | LASPH must be set to True (this is **<u>*not*</u>** the VASP default). |
| LCALCEPS | LCALCEPS must be set to False (the VASP default). |
| LBERRY | LBERRY must be set to False (the VASP default). |
| LCALCPOL | LCALCPOL  must be set to False (the VASP default). |
| LCHIMAG | LCHIMAG must be set to False (the VASP default). |
| LCORR | LCORR must be set to True (the VASP default) for calculations with IALGO = 58. |
| LDAU / LDAUU / LDAUJ / LDAUL / LDAUTYPE | For DFT$`+U`$ calculations, all parameters corresponding to $+U$ or $+J$ corrections must exactly match those specified in the relevant MP input set. Alternatively, LDAU = False (DFT) is always acceptable. |
| LDIPOL | LDIPOL must be set to False (the VASP default). |
| LMONO | LMONO must be set to False (the VASP default). |
| LEFG | LEFG must be set to False (the VASP default), unless explicitly specified to be True by the relevant MP input set. |
| LEPSILON | LEPSILON must be set to False (the VASP default), unless explicitly specified to be True by the relevant MP input set. |
| LHFCALC | The value of LHFCALC should match that of the relevant MP input set, as it will otherwise result in a change in the level of theory applied in the calculation. |
| LHYPERFINE | LHYPERFINE must be set to False (the VASP default). |
| LKPROJ | LKPROJ must be set to False (the VASP default). |
| LKPOINTS_OPT | LKPOINTS_OPT must be set to False. |
| LMAXPAW | LMAXPAW must remain unspecified, as the VASP wiki states that “Energies should be evaluated with the default setting for LMAXPAW”. |
| LMAXMIX | LMAXMIX must be set to 6. This is based on tests from Aaron Kaplan (@esoteric-ephemera) — see the “bench_vasp_pars.docx” document in https://github.com/materialsproject/pymatgen/issues/3322. |
| LMAXTAU | LMAXTAU must be set to 6 (the VASP default when using LASPH = True). |
| LMP2LT / LSMP2LT | Both must be set to False (VASP defaults) |
| LNONCOLLINEAR / LSORBIT | Both must be set to False (VASP defaults) |
| LOCPROJ | LOCPROJ must be set to None (the VASP default). |
| LOPTICS | LOPTICS must be set to False (the VASP default), unless explicitly specified by the relevant MP input set. |
| LORBIT | LORBIT must **<u>*not*</u>** be None if the user also sets ISPIN=2, otherwise all values of LORBIT are acceptable. This is due to magnetization values not being output when ISPIN=2 and LORBIT = None are set together. |
| LREAL | If the LREAL in the relevant MP input set is “Auto”, then the user must be one of: "Auto", False. Otherwise, if the LREAL in the relevant MP input set is False, then the user must use False. |
| LRPA | LRPA must be set to False (the VASP default). MP does not currently support random phase approximation (RPA) calculations. |
| LSPECTRAL | LSPECTRAL must be set to False (the VASP default for most calculations). |
| LSUBROT | LSUBROT must be set to False (the VASP default). |
| MAGMOM | While any initial magnetic moments are allowed, the final total magnetic moment for any given atom must be less than 5 $\mu_B$ (Bohr magnetons) (except for elements Gd and Eu, which must be less than 10 $\mu_B$). This simply serves as a filter for erroneous data. |
| ML_LMFF | ML_LMFF must be set to False (the VASP default). |
| NGX / NGY / NGZ | The values for NGX/NGY/NGZ must be at least 0.9 times the default value for the respective parameter generated by VASP. If the user simply does not specify these parameters, the calculation should be compatible with MP data. |
| NGFX / NGFY / NGFZ | The values for NGFX/NGFY/NGFZ must be at least 0.9 times the default value for the respective parameter generated by VASP. If the user simply does not specify these parameters, the calculation should be compatible with MP data. |
| NLSPLINE | NLSPLINE should be set to False (the VASP default), unless explicitly specified by the relevant MP input set. |
| NBANDS | NBANDS must be greater than the value $\mathrm{ceil}(\mathrm{NELECT}/2) + 1 $(minimum allowable number of bands to avoid degeneracy) and less than 4 times (minimum allowable number of bands to avoid degeneracy). For high-throughput calculations, it is generally recommended to not set this parameter directly. See https://github.com/materialsproject/custodian/issues/224 for more information. |
| NELECT | NELECT must not be changed from the default value VASP would use for the particular structure and pseudopotentials calculated. The easiest way to ensure that NELECT is compliant with MP data is to simply not specify NELECT in the INCAR file. |
| NWRITE | NWRITE must be set to be $\geq 2$ (the VASP default is 2). |
| POTIM | POTIM $\leq 5$. We suggest not setting POTIM in the INCAR file, and rather allowing VASP to set it to the default value of 0.5. |
| PSTRESS | PSTRESS must be set to exactly 0.0 (the VASP default). |
| PREC | PREC must be one of: "High", "Accurate". |
| ROPT | ROPT should be set to be less than or equal to the default ROPT value (which is set based on the PREC tag). Hence, it is recommended to not set the ROPT tag in the INCAR file. |
| RWIGS | RWIGS should not be set in the INCAR file. |
| SCALEE | SCALEE should not be set in the INCAR file. |
| SYMPREC | SYMPREC must be less than or equal to 1e-3 (as this is the maximum value that the Custodian package will set SYMPREC as of March 2024). For general use, we recommend leaving SYMPREC as the default generated by your desired MP input set. |
| SIGMA | There are several rules for setting SIGMA:  <ol> <li> SIGMA  must be $\leq 0.05$ for non-metals (bandgap $>  0$). </li> <li> SIGMA must be $\leq 0.2$ for a metal (bandgap = 0). </li> <li> For metals, the SIGMA value must be small enough that the entropy term in the energy is $\leq$ 1 meV/atom (as suggested by the VASP manual). </li> </ol> |
| VCA | MP data does not include Virtual Crystal Approximation (VCA) calculations from VASP. As such, this parameter should not be set. |
| VASP version | The following versions of VASP are allowed: 5.4.4 or $>$ 6.0.0. For example, versions $<=$ 5.4.3 are not allowed, whereas version 6.3.1 is allowed. |

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/materialsproject/pymatgen-io-validation",
    "name": "pymatgen-io-validation",
    "maintainer": "Matthew Kuner",
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "io, validation, dft, vasp",
    "author": "Janosh Riebesell, Jason Munro, Aaron Kaplan",
    "author_email": "Matthew Kuner <matthewkuner@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/df/6c/01ea01d83c7ed8259a25bd8dd5ef81cbbfa115c46b002be671cb2a92b3e4/pymatgen_io_validation-0.0.3.tar.gz",
    "platform": null,
    "description": "pymatgen-io-validation\n=====\n\nThis package is an extension to `pymatgen` for performing I/O validation. Specifically, this package checks for discrepancies between a specific calculation and a provided input set; it also checks for known bugs when certain input parameters are used in combination, alongside several other small checks. The motivation for creating this package was to ensure VASP calculations performed by groups outside of the Materials Project (MP) are compliant with MP data, thus enabling their raw data to be included in the MP Database.\n\n\nInstallation\n=====\n\nYou can install this package by simply running\n\n`pip install pymatgen-io-validation`\n\n\nUsage\n=====\n\nFor validating calculations from the raw files, run:\n```\nfrom pymatgen.io.validation import ValidationDoc\nvalidation_doc = ValidationDoc.from_directory(dir_name = path_to_vasp_calculation_directory)\n```\n\nIn the above case, whether a calculation passes the validator can be accessed via `validation_doc.valid`. Moreover, reasons for an invalidated calculation can be accessed via `validation_doc.reasons` (this will be empty for valid calculations). Last but not least, warnings for potential issues (sometimes minor, sometimes major) can be accessed via `validation_doc.warnings`.\n\\\n\\\nFor validating calculations from `TaskDoc` objects from the [Emmet](https://github.com/materialsproject/emmet) package, run:\n```\nfrom pymatgen.io.validation import ValidationDoc\nvalidation_doc = ValidationDoc.from_task_doc(task_doc = my_task_doc)\n```\n\nContributors\n=====\n\n* [Matthew Kuner](https://github.com/matthewkuner) (lead), email: matthewkuner@gmail.com\n* [Aaron Kaplan](https://github.com/esoteric-ephemera)\n* [Janosh Riebesell](https://github.com/janosh)\n* [Jason Munro](https://github.com/munrojm)\n\n\nRationale\n====\n\n| **Parameter** | **Reason** |\n| ---- | ---- |\n| ADDGRID | ADDGRID must be set to False. MP uses ADDGRID = False, as the VASP manual states \u201cplease do not use this tag [ADDGRID] as default in all your calculations!\u201d. ADDGRID can affect the outputted forces, hence all calculations are thus required to have ADDGRID = False for compatibility. |\n| AEXX / AMGGAX / AMGGAC / AGGAX / ALDAC / ALDAX | These parameters should be the VASP defaults unless otherwise specified in a given MP input set, as changing them is effectively a change to the level of theory. |\n| ALGO / IALGO | ALGO must be one of: \"Normal\", \"Conjugate\", \"All\", \"Fast\", \"Exact\". (This corresponds to an IALGO of 38, 58, 58, 68, 90, respectively). |\n| DEPER / EBREAK / WEIMIN | DEPER, EBREAK, and WEIMIN should not be changed according to the VASP wiki, hence MP requires them to remain as their default values. |\n| EDIFF | EDIFF must be equal to or greater than the value in the relevant MP input set. This will ensure compatibility between results with those in the MP Database. |\n| EDIFFG | Should be the same or better than in the relevant MP input set. For MP input sets with an energy-based cutoff, the calculation must have an energy change between the last two steps be less in magnitude than the specified EDIFFG (so even if your calculation uses force-based convergence, the energy must converge within the MP input set\u2019s specification). The same logic applies to MP input sets with force-based EDIFFG settings. |\n| EFERMI | EFERMI must be one of: \"LEGACY\", \"MIDGAP\" |\n| EFIELD | Current MP input sets used to construct the main MP database do not set EFIELD, and hence we require this to be unset or set to 0. |\n| ENAUG | If ENAUG is present in the relevant MP input set, then a calculation\u2019s ENAUG must be equal to or better than that value. |\n| ENCUT | ENCUT must be equal to or greater than the value in the relevant MP input set, as otherwise results will likely be incompatible with MP. |\n| ENINI | ENINI must not be adjusted for high-throughput calculations, and hence should be left equal to the value used for ENCUT in the relevant MP input set. Values greater than the ENCUT in the relevant MP input set will also be accepted, though we expect this to be uncommon and do not recommend it. |\n| EPSILON | EPSILON must be set to the VASP default of 1. Changing the dielectric constant of the medium will cause results to be incompatible with MP. |\n| GGA / METAGGA | The level of theory used must match the relevant MP input set. Moreover, GGA and METAGGA should never be set simultaneously, as this has been shown to result in seriously erroneous results. See https://github.com/materialsproject/atomate2/issues/453#issuecomment-1699605867 for more details. |\n| GGA_COMPAT | GGA_COMPAT must be set to the VASP default of True. The VASP manual only recommends setting this to False for noncollinear magnetic calculations, which are not currently included in the MP database. |\n| IBRION | IBRION values must be one of: -1, 1, 2. Other IBRION values correspond to non-standard forms of DFT calculations that are not included in the MP database. (Note that, while phonon data is included in the MP database, such values are not calculated using, say, IBRION = 5. Such logic applies to all other IBRION values not allowed). |\n| ICHARG | ICHARG must be set to be compatible with the calculation type. For example, if the relevant MP input set is for a SCF calculation, ICHARG $\\leq 9$ must be used. For NSCF calculations, the value for ICHARG must exactly match the value contained in the relevant MP input set. |\n| ICORELEVEL | ICORELEVEL must be set to 0. MP does not explicitly calculate core energies. |\n| IDIPOL | IDIPOL must be set to 0 (the VASP default). |\n| IMAGES | IMAGES must be set to 0 to match MP calculations. |\n| INIWAV | INIWAV must be set as the VASP default of 1 to be consistent with MP calculations. |\n| ISPIN | All values of ISPIN are allowed, though it should be noted that virtually all MP calculations permit spin symmetry breaking, and have ferromagnetic, antiferrogmanetic, or nonmagnetic ordering. |\n| ISMEAR | The appropriate ISMEAR depends on the bandgap of the material (which cannot be known a priori). As per the VASP manual: for metals (bandgap = 0), any ISMEAR value in [0, 1, 2] is acceptable. For nonmetals (bandgap > 0), any ISMEAR value in [-5, 0] is acceptable. Hence, for those who are performing normal relaxations/static calculations and want to ensure their calculations are MP-compatible, we recommend setting ISMEAR to 0. |\n| ISIF | MP allows any ISIF $\\geq 2$. This value is restricted as such simply because all ISIF values $\\geq 2$ output the complete stress tensor. |\n| ISYM | ISYM must be one of -1, 0, 1, 2, except for when the relevant MP input set uses a hybrid functional, in which case ISYM=3 is also allowed. |\n| ISTART | ISTART must be one of: 0, 1, 2. |\n| IVDW | IVDW must be set to 0. MP currently does not apply any vdW dispersion corrections. |\n| IWAVPR | IWAVPR must be set to 0 (the default). VASP discourages users from setting this tag. |\n| KGAMMA | KGAMMA must be set to True (the VASP default). This is only relevant when no KPOINTS file is used. |\n| KSPACING / KPOINTS | The KSPACING parameter or KPOINTS file must correspond with at least 0.9 times **the number of KPOINTS in the non-symmetry-reduced Brillouin zone specified by the relevant MP input set** (i.e., not the number of points in the irreducible wedge of the first Brillouin zone). Hence, either method of specifying the KPOINTS can be chosen. This ensures that a calculation uses a comparable number of kpoints to MP. |\n| Kpoint mesh type (for KPOINTS) | The type of Kpoint mesh must be valid for the symmetry of the crystal structure in the calculation. For example, for a hexagonal closed packed structure, one must use a $\\Gamma$-centered mesh. All Kpoints generated using Pymatgen *should* be valid. |\n| LASPH | LASPH must be set to True (this is **<u>*not*</u>** the VASP default). |\n| LCALCEPS | LCALCEPS must be set to False (the VASP default). |\n| LBERRY | LBERRY must be set to False (the VASP default). |\n| LCALCPOL | LCALCPOL  must be set to False (the VASP default). |\n| LCHIMAG | LCHIMAG must be set to False (the VASP default). |\n| LCORR | LCORR must be set to True (the VASP default) for calculations with IALGO = 58. |\n| LDAU / LDAUU / LDAUJ / LDAUL / LDAUTYPE | For DFT$`+U`$ calculations, all parameters corresponding to $+U$ or $+J$ corrections must exactly match those specified in the relevant MP input set. Alternatively, LDAU = False (DFT) is always acceptable. |\n| LDIPOL | LDIPOL must be set to False (the VASP default). |\n| LMONO | LMONO must be set to False (the VASP default). |\n| LEFG | LEFG must be set to False (the VASP default), unless explicitly specified to be True by the relevant MP input set. |\n| LEPSILON | LEPSILON must be set to False (the VASP default), unless explicitly specified to be True by the relevant MP input set. |\n| LHFCALC | The value of LHFCALC should match that of the relevant MP input set, as it will otherwise result in a change in the level of theory applied in the calculation. |\n| LHYPERFINE | LHYPERFINE must be set to False (the VASP default). |\n| LKPROJ | LKPROJ must be set to False (the VASP default). |\n| LKPOINTS_OPT | LKPOINTS_OPT must be set to False. |\n| LMAXPAW | LMAXPAW must remain unspecified, as the VASP wiki states that \u201cEnergies should be evaluated with the default setting for LMAXPAW\u201d. |\n| LMAXMIX | LMAXMIX must be set to 6. This is based on tests from Aaron Kaplan (@esoteric-ephemera) \u2014 see the \u201cbench_vasp_pars.docx\u201d document in https://github.com/materialsproject/pymatgen/issues/3322. |\n| LMAXTAU | LMAXTAU must be set to 6 (the VASP default when using LASPH = True). |\n| LMP2LT / LSMP2LT | Both must be set to False (VASP defaults) |\n| LNONCOLLINEAR / LSORBIT | Both must be set to False (VASP defaults) |\n| LOCPROJ | LOCPROJ must be set to None (the VASP default). |\n| LOPTICS | LOPTICS must be set to False (the VASP default), unless explicitly specified by the relevant MP input set. |\n| LORBIT | LORBIT must **<u>*not*</u>** be None if the user also sets ISPIN=2, otherwise all values of LORBIT are acceptable. This is due to magnetization values not being output when ISPIN=2 and LORBIT = None are set together. |\n| LREAL | If the LREAL in the relevant MP input set is \u201cAuto\u201d, then the user must be one of: \"Auto\", False. Otherwise, if the LREAL in the relevant MP input set is False, then the user must use False. |\n| LRPA | LRPA must be set to False (the VASP default). MP does not currently support random phase approximation (RPA) calculations. |\n| LSPECTRAL | LSPECTRAL must be set to False (the VASP default for most calculations). |\n| LSUBROT | LSUBROT must be set to False (the VASP default). |\n| MAGMOM | While any initial magnetic moments are allowed, the final total magnetic moment for any given atom must be less than 5 $\\mu_B$ (Bohr magnetons) (except for elements Gd and Eu, which must be less than 10 $\\mu_B$). This simply serves as a filter for erroneous data. |\n| ML_LMFF | ML_LMFF must be set to False (the VASP default). |\n| NGX / NGY / NGZ | The values for NGX/NGY/NGZ must be at least 0.9 times the default value for the respective parameter generated by VASP. If the user simply does not specify these parameters, the calculation should be compatible with MP data. |\n| NGFX / NGFY / NGFZ | The values for NGFX/NGFY/NGFZ must be at least 0.9 times the default value for the respective parameter generated by VASP. If the user simply does not specify these parameters, the calculation should be compatible with MP data. |\n| NLSPLINE | NLSPLINE should be set to False (the VASP default), unless explicitly specified by the relevant MP input set. |\n| NBANDS | NBANDS must be greater than the value $\\mathrm{ceil}(\\mathrm{NELECT}/2) + 1 $(minimum allowable number of bands to avoid degeneracy) and less than 4 times (minimum allowable number of bands to avoid degeneracy). For high-throughput calculations, it is generally recommended to not set this parameter directly. See https://github.com/materialsproject/custodian/issues/224 for more information. |\n| NELECT | NELECT must not be changed from the default value VASP would use for the particular structure and pseudopotentials calculated. The easiest way to ensure that NELECT is compliant with MP data is to simply not specify NELECT in the INCAR file. |\n| NWRITE | NWRITE must be set to be $\\geq 2$ (the VASP default is 2). |\n| POTIM | POTIM $\\leq 5$. We suggest not setting POTIM in the INCAR file, and rather allowing VASP to set it to the default value of 0.5. |\n| PSTRESS | PSTRESS must be set to exactly 0.0 (the VASP default). |\n| PREC | PREC must be one of: \"High\", \"Accurate\". |\n| ROPT | ROPT should be set to be less than or equal to the default ROPT value (which is set based on the PREC tag). Hence, it is recommended to not set the ROPT tag in the INCAR file. |\n| RWIGS | RWIGS should not be set in the INCAR file. |\n| SCALEE | SCALEE should not be set in the INCAR file. |\n| SYMPREC | SYMPREC must be less than or equal to 1e-3 (as this is the maximum value that the Custodian package will set SYMPREC as of March 2024). For general use, we recommend leaving SYMPREC as the default generated by your desired MP input set. |\n| SIGMA | There are several rules for setting SIGMA:  <ol> <li> SIGMA  must be $\\leq 0.05$ for non-metals (bandgap $>  0$). </li> <li> SIGMA must be $\\leq 0.2$ for a metal (bandgap = 0). </li> <li> For metals, the SIGMA value must be small enough that the entropy term in the energy is $\\leq$ 1 meV/atom (as suggested by the VASP manual). </li> </ol> |\n| VCA | MP data does not include Virtual Crystal Approximation (VCA) calculations from VASP. As such, this parameter should not be set. |\n| VASP version | The following versions of VASP are allowed: 5.4.4 or $>$ 6.0.0. For example, versions $<=$ 5.4.3 are not allowed, whereas version 6.3.1 is allowed. |\n",
    "bugtrack_url": null,
    "license": "modified BSD",
    "summary": "A comprehensive I/O validator for electronic structure calculations",
    "version": "0.0.3",
    "project_urls": {
        "Homepage": "https://github.com/materialsproject/pymatgen-io-validation"
    },
    "split_keywords": [
        "io",
        " validation",
        " dft",
        " vasp"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "946bbd68afa9dd0fbf0a3b6eadcaf8e0442e5f163c63b7ed7ac0eb57e2eb08b4",
                "md5": "b3ad4b9d53dda9d5ac8f581b2a144f83",
                "sha256": "b79316c0526f4bbd9ea28177565630835c5a503f311f8cf3e508faab98492e43"
            },
            "downloads": -1,
            "filename": "pymatgen_io_validation-0.0.3-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "b3ad4b9d53dda9d5ac8f581b2a144f83",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 40714,
            "upload_time": "2024-05-08T23:24:18",
            "upload_time_iso_8601": "2024-05-08T23:24:18.581854Z",
            "url": "https://files.pythonhosted.org/packages/94/6b/bd68afa9dd0fbf0a3b6eadcaf8e0442e5f163c63b7ed7ac0eb57e2eb08b4/pymatgen_io_validation-0.0.3-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "df6c01ea01d83c7ed8259a25bd8dd5ef81cbbfa115c46b002be671cb2a92b3e4",
                "md5": "85e1c26751826aa4274e496a891da959",
                "sha256": "f0a0435a214095d6cac3423ecc6ce2356398cdf6f14d9a1ec6f31b4f8fb6a242"
            },
            "downloads": -1,
            "filename": "pymatgen_io_validation-0.0.3.tar.gz",
            "has_sig": false,
            "md5_digest": "85e1c26751826aa4274e496a891da959",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 46124,
            "upload_time": "2024-05-08T23:24:20",
            "upload_time_iso_8601": "2024-05-08T23:24:20.488937Z",
            "url": "https://files.pythonhosted.org/packages/df/6c/01ea01d83c7ed8259a25bd8dd5ef81cbbfa115c46b002be671cb2a92b3e4/pymatgen_io_validation-0.0.3.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-05-08 23:24:20",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "materialsproject",
    "github_project": "pymatgen-io-validation",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [
        {
            "name": "pymatgen",
            "specs": [
                [
                    "==",
                    "2024.5.1"
                ]
            ]
        },
        {
            "name": "emmet-core",
            "specs": [
                [
                    "==",
                    "0.83.6"
                ]
            ]
        },
        {
            "name": "pydantic",
            "specs": [
                [
                    "==",
                    "2.4.2"
                ]
            ]
        },
        {
            "name": "pydantic-core",
            "specs": [
                [
                    "==",
                    "2.10.1"
                ]
            ]
        },
        {
            "name": "pydantic-settings",
            "specs": [
                [
                    "==",
                    "2.2.1"
                ]
            ]
        },
        {
            "name": "typing-extensions",
            "specs": [
                [
                    "==",
                    "4.11.0"
                ]
            ]
        },
        {
            "name": "monty",
            "specs": [
                [
                    "==",
                    "2024.4.17"
                ]
            ]
        },
        {
            "name": "numpy",
            "specs": [
                [
                    "==",
                    "1.26.1"
                ]
            ]
        },
        {
            "name": "requests",
            "specs": [
                [
                    "==",
                    "2.31.0"
                ]
            ]
        }
    ],
    "lcname": "pymatgen-io-validation"
}
        
Elapsed time: 0.25662s