mat3ra-esse 2024.4.8.post1__py3-none-any.whl → 2024.4.8.post2__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of mat3ra-esse might be problematic. Click here for more details.
- mat3ra/esse/models/__init__.py +3 -0
- mat3ra/esse/models/core/__init__.py +3 -0
- mat3ra/esse/models/core/abstract/2d_data.py +17 -0
- mat3ra/esse/models/core/abstract/2d_plot.py +34 -0
- mat3ra/esse/models/core/abstract/3d_grid.py +14 -0
- mat3ra/esse/models/core/abstract/3d_tensor.py +19 -0
- mat3ra/esse/models/core/abstract/3d_vector_basis.py +15 -0
- mat3ra/esse/models/core/abstract/__init__.py +3 -0
- mat3ra/esse/models/core/abstract/point.py +13 -0
- mat3ra/esse/models/core/abstract/vector.py +13 -0
- mat3ra/esse/models/core/primitive/1d_data_series.py +13 -0
- mat3ra/esse/models/core/primitive/3d_lattice.py +34 -0
- mat3ra/esse/models/core/primitive/__init__.py +3 -0
- mat3ra/esse/models/core/primitive/array_of_3_booleans.py +13 -0
- mat3ra/esse/models/core/primitive/array_of_3_numbers.py +13 -0
- mat3ra/esse/models/core/primitive/array_of_ids.py +23 -0
- mat3ra/esse/models/core/primitive/array_of_strings.py +16 -0
- mat3ra/esse/models/core/primitive/axis.py +20 -0
- mat3ra/esse/models/core/primitive/group_info.py +20 -0
- mat3ra/esse/models/core/primitive/integer_one_or_zero.py +11 -0
- mat3ra/esse/models/core/primitive/linked_list/__init__.py +33 -0
- mat3ra/esse/models/core/primitive/linked_list/base_node.py +31 -0
- mat3ra/esse/models/core/primitive/linked_list/named_node.py +35 -0
- mat3ra/esse/models/core/primitive/linked_list/named_node_in_group.py +43 -0
- mat3ra/esse/models/core/primitive/linked_list/node_with_type.py +32 -0
- mat3ra/esse/models/core/primitive/scalar.py +11 -0
- mat3ra/esse/models/core/primitive/slugified_entry.py +18 -0
- mat3ra/esse/models/core/primitive/slugified_entry_or_slug.py +27 -0
- mat3ra/esse/models/core/primitive/string.py +11 -0
- mat3ra/esse/models/core/reference/__init__.py +260 -0
- mat3ra/esse/models/core/reference/exabyte.py +24 -0
- mat3ra/esse/models/core/reference/experiment/__init__.py +150 -0
- mat3ra/esse/models/core/reference/experiment/condition.py +28 -0
- mat3ra/esse/models/core/reference/experiment/location.py +18 -0
- mat3ra/esse/models/core/reference/literature/__init__.py +86 -0
- mat3ra/esse/models/core/reference/literature/name.py +16 -0
- mat3ra/esse/models/core/reference/literature/pages.py +14 -0
- mat3ra/esse/models/core/reference/modeling/__init__.py +49 -0
- mat3ra/esse/models/core/reference/modeling/exabyte.py +42 -0
- mat3ra/esse/models/core/reusable/__init__.py +3 -0
- mat3ra/esse/models/core/reusable/atomic_data/__init__.py +3 -0
- mat3ra/esse/models/core/reusable/atomic_data/per_orbital.py +21 -0
- mat3ra/esse/models/core/reusable/atomic_data/per_orbital_pair.py +34 -0
- mat3ra/esse/models/core/reusable/atomic_data/value_number.py +16 -0
- mat3ra/esse/models/core/reusable/atomic_data/value_string.py +16 -0
- mat3ra/esse/models/core/reusable/atomic_data_per_orbital_numeric.py +25 -0
- mat3ra/esse/models/core/reusable/atomic_data_per_orbital_pair_numeric.py +38 -0
- mat3ra/esse/models/core/reusable/atomic_orbital.py +20 -0
- mat3ra/esse/models/core/reusable/atomic_scalars.py +28 -0
- mat3ra/esse/models/core/reusable/atomic_strings.py +24 -0
- mat3ra/esse/models/core/reusable/atomic_vectors.py +24 -0
- mat3ra/esse/models/core/reusable/band_gap.py +42 -0
- mat3ra/esse/models/core/reusable/categories.py +43 -0
- mat3ra/esse/models/core/reusable/category_path.py +14 -0
- mat3ra/esse/models/core/reusable/dielectric_tensor_component.py +31 -0
- mat3ra/esse/models/core/reusable/energy.py +30 -0
- mat3ra/esse/models/core/reusable/file_metadata.py +24 -0
- mat3ra/esse/models/core/reusable/frequency_function_matrix.py +20 -0
- mat3ra/esse/models/core/reusable/object_storage_container_data.py +36 -0
- mat3ra/esse/models/definitions/__init__.py +3 -0
- mat3ra/esse/models/definitions/units.py +13 -0
- mat3ra/esse/models/element.py +74 -0
- mat3ra/esse/models/in_memory_entity/__init__.py +3 -0
- mat3ra/esse/models/in_memory_entity/base.py +58 -0
- mat3ra/esse/models/in_memory_entity/defaultable.py +62 -0
- mat3ra/esse/models/in_memory_entity/named.py +62 -0
- mat3ra/esse/models/in_memory_entity/named_defaultable.py +66 -0
- mat3ra/esse/models/in_memory_entity/named_defaultable_has_metadata.py +67 -0
- mat3ra/esse/models/in_memory_entity/named_defaultable_runtime_items.py +89 -0
- mat3ra/esse/models/job/__init__.py +3006 -0
- mat3ra/esse/models/job/base.py +287 -0
- mat3ra/esse/models/job/compute.py +161 -0
- mat3ra/esse/models/material/__init__.py +420 -0
- mat3ra/esse/models/material/conventional.py +13 -0
- mat3ra/esse/models/method/__init__.py +28 -0
- mat3ra/esse/models/method/categorized_method.py +86 -0
- mat3ra/esse/models/method/method_parameters.py +48 -0
- mat3ra/esse/models/method/unit_method.py +70 -0
- mat3ra/esse/models/methods_category/mathematical/__init__.py +3 -0
- mat3ra/esse/models/methods_category/mathematical/diff/__init__.py +48 -0
- mat3ra/esse/models/methods_category/mathematical/diff/enum_options.py +13 -0
- mat3ra/esse/models/methods_category/mathematical/diff/fd.py +52 -0
- mat3ra/esse/models/methods_category/mathematical/discr/__init__.py +48 -0
- mat3ra/esse/models/methods_category/mathematical/discr/enum_options.py +13 -0
- mat3ra/esse/models/methods_category/mathematical/discr/mesh/__init__.py +52 -0
- mat3ra/esse/models/methods_category/mathematical/discr/mesh/enum_options.py +13 -0
- mat3ra/esse/models/methods_category/mathematical/discr/mesh/hybrid.py +56 -0
- mat3ra/esse/models/methods_category/mathematical/discr/mesh/nstruct.py +56 -0
- mat3ra/esse/models/methods_category/mathematical/discr/mesh/struct/__init__.py +56 -0
- mat3ra/esse/models/methods_category/mathematical/discr/mesh/struct/cartesian.py +60 -0
- mat3ra/esse/models/methods_category/mathematical/discr/mesh/struct/enum_options.py +13 -0
- mat3ra/esse/models/methods_category/mathematical/enum_options.py +13 -0
- mat3ra/esse/models/methods_category/mathematical/fapprx/__init__.py +48 -0
- mat3ra/esse/models/methods_category/mathematical/fapprx/basisexp.py +52 -0
- mat3ra/esse/models/methods_category/mathematical/fapprx/enum_options.py +13 -0
- mat3ra/esse/models/methods_category/mathematical/fapprx/ipol/__init__.py +52 -0
- mat3ra/esse/models/methods_category/mathematical/fapprx/ipol/enum_options.py +13 -0
- mat3ra/esse/models/methods_category/mathematical/fapprx/ipol/lin.py +56 -0
- mat3ra/esse/models/methods_category/mathematical/fapprx/ipol/poly.py +56 -0
- mat3ra/esse/models/methods_category/mathematical/fapprx/ipol/spline.py +56 -0
- mat3ra/esse/models/methods_category/mathematical/intgr/__init__.py +48 -0
- mat3ra/esse/models/methods_category/mathematical/intgr/analytic/__init__.py +52 -0
- mat3ra/esse/models/methods_category/mathematical/intgr/analytic/enum_options.py +13 -0
- mat3ra/esse/models/methods_category/mathematical/intgr/analytic/volume.py +67 -0
- mat3ra/esse/models/methods_category/mathematical/intgr/diffeq/__init__.py +52 -0
- mat3ra/esse/models/methods_category/mathematical/intgr/diffeq/enum_options.py +13 -0
- mat3ra/esse/models/methods_category/mathematical/intgr/diffeq/order1.py +56 -0
- mat3ra/esse/models/methods_category/mathematical/intgr/diffeq/order2.py +56 -0
- mat3ra/esse/models/methods_category/mathematical/intgr/enum_options.py +13 -0
- mat3ra/esse/models/methods_category/mathematical/intgr/numquad/__init__.py +52 -0
- mat3ra/esse/models/methods_category/mathematical/intgr/numquad/enum_options.py +13 -0
- mat3ra/esse/models/methods_category/mathematical/intgr/numquad/gauss.py +56 -0
- mat3ra/esse/models/methods_category/mathematical/intgr/numquad/newcot.py +56 -0
- mat3ra/esse/models/methods_category/mathematical/intgr/transf/__init__.py +52 -0
- mat3ra/esse/models/methods_category/mathematical/intgr/transf/enum_options.py +13 -0
- mat3ra/esse/models/methods_category/mathematical/intgr/transf/fourier.py +56 -0
- mat3ra/esse/models/methods_category/mathematical/linalg/__init__.py +48 -0
- mat3ra/esse/models/methods_category/mathematical/linalg/dcomp.py +52 -0
- mat3ra/esse/models/methods_category/mathematical/linalg/diag/__init__.py +52 -0
- mat3ra/esse/models/methods_category/mathematical/linalg/diag/davidson.py +56 -0
- mat3ra/esse/models/methods_category/mathematical/linalg/diag/enum_options.py +13 -0
- mat3ra/esse/models/methods_category/mathematical/linalg/enum_options.py +13 -0
- mat3ra/esse/models/methods_category/mathematical/linalg/lintra.py +52 -0
- mat3ra/esse/models/methods_category/mathematical/linalg/matf.py +52 -0
- mat3ra/esse/models/methods_category/mathematical/opt/__init__.py +48 -0
- mat3ra/esse/models/methods_category/mathematical/opt/diff/__init__.py +52 -0
- mat3ra/esse/models/methods_category/mathematical/opt/diff/bracket.py +56 -0
- mat3ra/esse/models/methods_category/mathematical/opt/diff/enum_options.py +13 -0
- mat3ra/esse/models/methods_category/mathematical/opt/diff/local.py +56 -0
- mat3ra/esse/models/methods_category/mathematical/opt/diff/order1.py +56 -0
- mat3ra/esse/models/methods_category/mathematical/opt/diff/order2.py +56 -0
- mat3ra/esse/models/methods_category/mathematical/opt/diff/ordern/__init__.py +56 -0
- mat3ra/esse/models/methods_category/mathematical/opt/diff/ordern/cg.py +60 -0
- mat3ra/esse/models/methods_category/mathematical/opt/diff/ordern/enum_options.py +13 -0
- mat3ra/esse/models/methods_category/mathematical/opt/enum_options.py +13 -0
- mat3ra/esse/models/methods_category/mathematical/opt/ndiff/__init__.py +52 -0
- mat3ra/esse/models/methods_category/mathematical/opt/ndiff/direct.py +56 -0
- mat3ra/esse/models/methods_category/mathematical/opt/ndiff/enum_options.py +13 -0
- mat3ra/esse/models/methods_category/mathematical/opt/ndiff/pop.py +56 -0
- mat3ra/esse/models/methods_category/mathematical/opt/ndiff/stoch.py +56 -0
- mat3ra/esse/models/methods_category/mathematical/opt/root/__init__.py +52 -0
- mat3ra/esse/models/methods_category/mathematical/opt/root/bracket.py +56 -0
- mat3ra/esse/models/methods_category/mathematical/opt/root/enum_options.py +13 -0
- mat3ra/esse/models/methods_category/mathematical/opt/root/iter.py +56 -0
- mat3ra/esse/models/methods_category/mathematical/regression.py +54 -0
- mat3ra/esse/models/methods_category/physical/__init__.py +3 -0
- mat3ra/esse/models/methods_category/physical/enum_options.py +13 -0
- mat3ra/esse/models/methods_category/physical/qm/__init__.py +48 -0
- mat3ra/esse/models/methods_category/physical/qm/enum_options.py +13 -0
- mat3ra/esse/models/methods_category/physical/qm/wf/__init__.py +52 -0
- mat3ra/esse/models/methods_category/physical/qm/wf/ao/__init__.py +62 -0
- mat3ra/esse/models/methods_category/physical/qm/wf/ao/dunning.py +60 -0
- mat3ra/esse/models/methods_category/physical/qm/wf/ao/other.py +60 -0
- mat3ra/esse/models/methods_category/physical/qm/wf/ao/pople.py +60 -0
- mat3ra/esse/models/methods_category/physical/qm/wf/enum_options.py +13 -0
- mat3ra/esse/models/methods_category/physical/qm/wf/psp.py +63 -0
- mat3ra/esse/models/methods_category/physical/qm/wf/pw.py +56 -0
- mat3ra/esse/models/methods_category/physical/qm/wf/smearing.py +63 -0
- mat3ra/esse/models/methods_category/physical/qm/wf/tetrahedron.py +62 -0
- mat3ra/esse/models/methods_directory/legacy/__init__.py +3 -0
- mat3ra/esse/models/methods_directory/legacy/localorbital.py +37 -0
- mat3ra/esse/models/methods_directory/legacy/pseudopotential.py +40 -0
- mat3ra/esse/models/methods_directory/legacy/regression.py +118 -0
- mat3ra/esse/models/methods_directory/legacy/unknown.py +37 -0
- mat3ra/esse/models/methods_directory/mathematical/__init__.py +3 -0
- mat3ra/esse/models/methods_directory/mathematical/cg.py +87 -0
- mat3ra/esse/models/methods_directory/mathematical/davidson.py +83 -0
- mat3ra/esse/models/methods_directory/mathematical/regression/__init__.py +161 -0
- mat3ra/esse/models/methods_directory/mathematical/regression/data.py +69 -0
- mat3ra/esse/models/methods_directory/mathematical/regression/dataset.py +20 -0
- mat3ra/esse/models/methods_directory/mathematical/regression/kernel_ridge/__init__.py +3 -0
- mat3ra/esse/models/methods_directory/mathematical/regression/kernel_ridge/data_per_property.py +39 -0
- mat3ra/esse/models/methods_directory/mathematical/regression/linear/__init__.py +3 -0
- mat3ra/esse/models/methods_directory/mathematical/regression/linear/data_per_property.py +35 -0
- mat3ra/esse/models/methods_directory/mathematical/regression/per_feature_item.py +24 -0
- mat3ra/esse/models/methods_directory/mathematical/regression/precision.py +28 -0
- mat3ra/esse/models/methods_directory/mathematical/regression/precision_per_property.py +24 -0
- mat3ra/esse/models/methods_directory/physical/__init__.py +3 -0
- mat3ra/esse/models/methods_directory/physical/ao/__init__.py +3 -0
- mat3ra/esse/models/methods_directory/physical/ao/dunning.py +103 -0
- mat3ra/esse/models/methods_directory/physical/ao/enum_options.py +13 -0
- mat3ra/esse/models/methods_directory/physical/ao/other.py +107 -0
- mat3ra/esse/models/methods_directory/physical/ao/pople.py +101 -0
- mat3ra/esse/models/methods_directory/physical/psp/__init__.py +187 -0
- mat3ra/esse/models/methods_directory/physical/psp/file.py +106 -0
- mat3ra/esse/models/methods_directory/physical/psp/file_data_item.py +88 -0
- mat3ra/esse/models/methods_directory/physical/pw.py +83 -0
- mat3ra/esse/models/methods_directory/physical/smearing.py +90 -0
- mat3ra/esse/models/methods_directory/physical/tetrahedron.py +91 -0
- mat3ra/esse/models/model/__init__.py +43 -0
- mat3ra/esse/models/model/categorized_model.py +211 -0
- mat3ra/esse/models/model/mixins/__init__.py +3 -0
- mat3ra/esse/models/model/mixins/dft/__init__.py +5 -0
- mat3ra/esse/models/model/mixins/dft/double_hybrid_functional.py +18 -0
- mat3ra/esse/models/model/mixins/dft/enum_options.py +13 -0
- mat3ra/esse/models/model/mixins/dft/gga_functional.py +22 -0
- mat3ra/esse/models/model/mixins/dft/hybrid_functional.py +19 -0
- mat3ra/esse/models/model/mixins/dft/lda_functional.py +21 -0
- mat3ra/esse/models/model/mixins/dft/mgga_functional.py +21 -0
- mat3ra/esse/models/model/mixins/dispersion_correction.py +21 -0
- mat3ra/esse/models/model/mixins/enum_options.py +13 -0
- mat3ra/esse/models/model/mixins/hubbard.py +18 -0
- mat3ra/esse/models/model/mixins/spin_orbit_coupling.py +16 -0
- mat3ra/esse/models/model/mixins/spin_polarization.py +22 -0
- mat3ra/esse/models/model/model_parameters.py +123 -0
- mat3ra/esse/models/model/model_without_method.py +144 -0
- mat3ra/esse/models/models_category/__init__.py +3 -0
- mat3ra/esse/models/models_category/enum_options.py +13 -0
- mat3ra/esse/models/models_category/pb/__init__.py +48 -0
- mat3ra/esse/models/models_category/pb/enum_options.py +13 -0
- mat3ra/esse/models/models_category/pb/qm/__init__.py +52 -0
- mat3ra/esse/models/models_category/pb/qm/abin/__init__.py +56 -0
- mat3ra/esse/models/models_category/pb/qm/abin/enum_options.py +13 -0
- mat3ra/esse/models/models_category/pb/qm/abin/gw.py +66 -0
- mat3ra/esse/models/models_category/pb/qm/dft/__init__.py +56 -0
- mat3ra/esse/models/models_category/pb/qm/dft/enum_options.py +13 -0
- mat3ra/esse/models/models_category/pb/qm/dft/ksdft/__init__.py +60 -0
- mat3ra/esse/models/models_category/pb/qm/dft/ksdft/double_hybrid.py +64 -0
- mat3ra/esse/models/models_category/pb/qm/dft/ksdft/enum_options.py +13 -0
- mat3ra/esse/models/models_category/pb/qm/dft/ksdft/gga.py +64 -0
- mat3ra/esse/models/models_category/pb/qm/dft/ksdft/hybrid.py +64 -0
- mat3ra/esse/models/models_category/pb/qm/dft/ksdft/lda.py +64 -0
- mat3ra/esse/models/models_category/pb/qm/dft/ksdft/mgga.py +64 -0
- mat3ra/esse/models/models_category/pb/qm/enum_options.py +13 -0
- mat3ra/esse/models/models_category/pb/qm/semp.py +56 -0
- mat3ra/esse/models/models_category/st/__init__.py +48 -0
- mat3ra/esse/models/models_category/st/det/__init__.py +52 -0
- mat3ra/esse/models/models_category/st/det/enum_options.py +13 -0
- mat3ra/esse/models/models_category/st/det/ml/__init__.py +56 -0
- mat3ra/esse/models/models_category/st/det/ml/enum_options.py +13 -0
- mat3ra/esse/models/models_category/st/det/ml/re.py +60 -0
- mat3ra/esse/models/models_category/st/enum_options.py +13 -0
- mat3ra/esse/models/models_directory/__init__.py +3 -0
- mat3ra/esse/models/models_directory/double_hybrid.py +205 -0
- mat3ra/esse/models/models_directory/gga.py +219 -0
- mat3ra/esse/models/models_directory/gw.py +272 -0
- mat3ra/esse/models/models_directory/hybrid.py +213 -0
- mat3ra/esse/models/models_directory/lda.py +218 -0
- mat3ra/esse/models/models_directory/legacy/__init__.py +3 -0
- mat3ra/esse/models/models_directory/legacy/dft.py +170 -0
- mat3ra/esse/models/models_directory/legacy/ml.py +52 -0
- mat3ra/esse/models/models_directory/legacy/unknown.py +52 -0
- mat3ra/esse/models/models_directory/mgga.py +218 -0
- mat3ra/esse/models/models_directory/re.py +160 -0
- mat3ra/esse/models/project.py +82 -0
- mat3ra/esse/models/properties_directory/__init__.py +3 -0
- mat3ra/esse/models/properties_directory/derived_properties.py +140 -0
- mat3ra/esse/models/properties_directory/electronic_configuration.py +20 -0
- mat3ra/esse/models/properties_directory/elemental/__init__.py +3 -0
- mat3ra/esse/models/properties_directory/elemental/atomic_radius.py +34 -0
- mat3ra/esse/models/properties_directory/elemental/electronegativity.py +19 -0
- mat3ra/esse/models/properties_directory/elemental/ionization_potential.py +30 -0
- mat3ra/esse/models/properties_directory/non_scalar/__init__.py +3 -0
- mat3ra/esse/models/properties_directory/non_scalar/average_potential_profile.py +83 -0
- mat3ra/esse/models/properties_directory/non_scalar/band_gaps.py +64 -0
- mat3ra/esse/models/properties_directory/non_scalar/band_structure.py +92 -0
- mat3ra/esse/models/properties_directory/non_scalar/charge_density_profile.py +63 -0
- mat3ra/esse/models/properties_directory/non_scalar/density_of_states.py +97 -0
- mat3ra/esse/models/properties_directory/non_scalar/dielectric_tensor.py +40 -0
- mat3ra/esse/models/properties_directory/non_scalar/file_content.py +64 -0
- mat3ra/esse/models/properties_directory/non_scalar/hubbard_u.py +40 -0
- mat3ra/esse/models/properties_directory/non_scalar/hubbard_v.py +54 -0
- mat3ra/esse/models/properties_directory/non_scalar/hubbard_v_nn.py +54 -0
- mat3ra/esse/models/properties_directory/non_scalar/phonon_dispersions.py +79 -0
- mat3ra/esse/models/properties_directory/non_scalar/phonon_dos.py +71 -0
- mat3ra/esse/models/properties_directory/non_scalar/potential_profile.py +69 -0
- mat3ra/esse/models/properties_directory/non_scalar/reaction_energy_profile.py +69 -0
- mat3ra/esse/models/properties_directory/non_scalar/stress_tensor.py +31 -0
- mat3ra/esse/models/properties_directory/non_scalar/total_energy_contributions.py +198 -0
- mat3ra/esse/models/properties_directory/non_scalar/vibrational_spectrum.py +75 -0
- mat3ra/esse/models/properties_directory/scalar/__init__.py +3 -0
- mat3ra/esse/models/properties_directory/scalar/electron_affinity.py +34 -0
- mat3ra/esse/models/properties_directory/scalar/fermi_energy.py +34 -0
- mat3ra/esse/models/properties_directory/scalar/formation_energy.py +34 -0
- mat3ra/esse/models/properties_directory/scalar/ionization_potential.py +34 -0
- mat3ra/esse/models/properties_directory/scalar/pressure.py +25 -0
- mat3ra/esse/models/properties_directory/scalar/reaction_energy_barrier.py +34 -0
- mat3ra/esse/models/properties_directory/scalar/surface_energy.py +34 -0
- mat3ra/esse/models/properties_directory/scalar/total_energy.py +34 -0
- mat3ra/esse/models/properties_directory/scalar/total_force.py +29 -0
- mat3ra/esse/models/properties_directory/scalar/valence_band_offset.py +34 -0
- mat3ra/esse/models/properties_directory/scalar/zero_point_energy.py +34 -0
- mat3ra/esse/models/properties_directory/structural/__init__.py +3 -0
- mat3ra/esse/models/properties_directory/structural/atomic_forces.py +40 -0
- mat3ra/esse/models/properties_directory/structural/basis/__init__.py +68 -0
- mat3ra/esse/models/properties_directory/structural/basis/atomic_constraints.py +30 -0
- mat3ra/esse/models/properties_directory/structural/basis/atomic_coordinate.py +14 -0
- mat3ra/esse/models/properties_directory/structural/basis/atomic_coordinates.py +39 -0
- mat3ra/esse/models/properties_directory/structural/basis/atomic_element.py +19 -0
- mat3ra/esse/models/properties_directory/structural/basis/bonds.py +40 -0
- mat3ra/esse/models/properties_directory/structural/density.py +24 -0
- mat3ra/esse/models/properties_directory/structural/elemental_ratio.py +23 -0
- mat3ra/esse/models/properties_directory/structural/inchi.py +19 -0
- mat3ra/esse/models/properties_directory/structural/inchi_key.py +19 -0
- mat3ra/esse/models/properties_directory/structural/lattice/__init__.py +102 -0
- mat3ra/esse/models/properties_directory/structural/lattice/lattice_bravais.py +71 -0
- mat3ra/esse/models/properties_directory/structural/lattice/lattice_vectors.py +35 -0
- mat3ra/esse/models/properties_directory/structural/lattice/type_enum.py +24 -0
- mat3ra/esse/models/properties_directory/structural/lattice/type_extended_enum.py +34 -0
- mat3ra/esse/models/properties_directory/structural/magnetic_moments.py +35 -0
- mat3ra/esse/models/properties_directory/structural/molecular_pattern.py +70 -0
- mat3ra/esse/models/properties_directory/structural/p_norm.py +23 -0
- mat3ra/esse/models/properties_directory/structural/patterns/__init__.py +3 -0
- mat3ra/esse/models/properties_directory/structural/patterns/functional_group.py +37 -0
- mat3ra/esse/models/properties_directory/structural/patterns/ring.py +34 -0
- mat3ra/esse/models/properties_directory/structural/patterns/special_bond.py +33 -0
- mat3ra/esse/models/properties_directory/structural/symmetry.py +39 -0
- mat3ra/esse/models/properties_directory/structural/volume.py +24 -0
- mat3ra/esse/models/properties_directory/workflow/convergence/__init__.py +3 -0
- mat3ra/esse/models/properties_directory/workflow/convergence/electronic.py +26 -0
- mat3ra/esse/models/properties_directory/workflow/convergence/ionic.py +63 -0
- mat3ra/esse/models/properties_directory/workflow/convergence/kpoint.py +43 -0
- mat3ra/esse/models/property/__init__.py +3 -0
- mat3ra/esse/models/property/base/The_source_of_a_property/__init__.py +5 -0
- mat3ra/esse/models/property/base/The_source_of_a_property/field_This_could_be_an_article__a_simulation_on_Exabyte__an_external_simulation__etc.py +38 -0
- mat3ra/esse/models/property/base/__init__.py +232 -0
- mat3ra/esse/models/property/meta/The_source_of_a_property/__init__.py +5 -0
- mat3ra/esse/models/property/meta/The_source_of_a_property/field_This_could_be_an_article__a_simulation_on_Exabyte__an_external_simulation__etc.py +38 -0
- mat3ra/esse/models/property/meta/__init__.py +232 -0
- mat3ra/esse/models/property/raw/The_source_of_a_property/__init__.py +5 -0
- mat3ra/esse/models/property/raw/The_source_of_a_property/field_This_could_be_an_article__a_simulation_on_Exabyte__an_external_simulation__etc.py +38 -0
- mat3ra/esse/models/property/raw/__init__.py +232 -0
- mat3ra/esse/models/property/source/The_source_of_a_property/__init__.py +5 -0
- mat3ra/esse/models/property/source/The_source_of_a_property/field_This_could_be_an_article__a_simulation_on_Exabyte__an_external_simulation__etc.py +38 -0
- mat3ra/esse/models/property/source/__init__.py +150 -0
- mat3ra/esse/models/software/__init__.py +3 -0
- mat3ra/esse/models/software/application.py +93 -0
- mat3ra/esse/models/software/executable.py +97 -0
- mat3ra/esse/models/software/flavor.py +116 -0
- mat3ra/esse/models/software/template.py +77 -0
- mat3ra/esse/models/software_directory/ml/__init__.py +3 -0
- mat3ra/esse/models/software_directory/ml/exabyteml.py +28 -0
- mat3ra/esse/models/software_directory/ml/unit/__init__.py +3 -0
- mat3ra/esse/models/software_directory/ml/unit/execution/__init__.py +1348 -0
- mat3ra/esse/models/software_directory/ml/unit/execution/evaluate/__init__.py +5 -0
- mat3ra/esse/models/software_directory/ml/unit/execution/evaluate/cross_validate.py +381 -0
- mat3ra/esse/models/software_directory/ml/unit/execution/initialize.py +381 -0
- mat3ra/esse/models/software_directory/ml/unit/execution/score.py +374 -0
- mat3ra/esse/models/software_directory/ml/unit/execution/train.py +385 -0
- mat3ra/esse/models/software_directory/ml/unit/processing/__init__.py +328 -0
- mat3ra/esse/models/software_directory/ml/unit/processing/data_transformation/__init__.py +199 -0
- mat3ra/esse/models/software_directory/ml/unit/processing/data_transformation/manipulation.py +176 -0
- mat3ra/esse/models/software_directory/ml/unit/processing/data_transformation/scale_and_reduce.py +195 -0
- mat3ra/esse/models/software_directory/ml/unit/processing/feature_selection/__init__.py +180 -0
- mat3ra/esse/models/software_directory/ml/unit/processing/feature_selection/filter_based.py +176 -0
- mat3ra/esse/models/software_directory/modeling/__init__.py +3 -0
- mat3ra/esse/models/software_directory/modeling/deepmd.py +112 -0
- mat3ra/esse/models/software_directory/modeling/espresso/__init__.py +39 -0
- mat3ra/esse/models/software_directory/modeling/espresso/arguments.py +35 -0
- mat3ra/esse/models/software_directory/modeling/nwchem.py +113 -0
- mat3ra/esse/models/software_directory/modeling/unit/__init__.py +3 -0
- mat3ra/esse/models/software_directory/modeling/unit/execution.py +390 -0
- mat3ra/esse/models/software_directory/modeling/vasp.py +117 -0
- mat3ra/esse/models/software_directory/scripting/__init__.py +3 -0
- mat3ra/esse/models/software_directory/scripting/jupyter_lab.py +115 -0
- mat3ra/esse/models/software_directory/scripting/python.py +129 -0
- mat3ra/esse/models/software_directory/scripting/shell.py +129 -0
- mat3ra/esse/models/software_directory/scripting/unit/__init__.py +3 -0
- mat3ra/esse/models/software_directory/scripting/unit/execution.py +390 -0
- mat3ra/esse/models/system/__init__.py +3 -0
- mat3ra/esse/models/system/_material.py +29 -0
- mat3ra/esse/models/system/_parent_job.py +29 -0
- mat3ra/esse/models/system/_project.py +29 -0
- mat3ra/esse/models/system/bankable.py +20 -0
- mat3ra/esse/models/system/consistency_check.py +40 -0
- mat3ra/esse/models/system/creator.py +29 -0
- mat3ra/esse/models/system/creator_account.py +28 -0
- mat3ra/esse/models/system/database_source.py +36 -0
- mat3ra/esse/models/system/defaultable.py +16 -0
- mat3ra/esse/models/system/description.py +17 -0
- mat3ra/esse/models/system/entity_reference.py +24 -0
- mat3ra/esse/models/system/file_source.py +28 -0
- mat3ra/esse/models/system/history.py +18 -0
- mat3ra/esse/models/system/iframe_message.py +36 -0
- mat3ra/esse/models/system/in_set.py +30 -0
- mat3ra/esse/models/system/is_multi_material.py +13 -0
- mat3ra/esse/models/system/is_outdated.py +13 -0
- mat3ra/esse/models/system/job_extended.py +36 -0
- mat3ra/esse/models/system/message.py +59 -0
- mat3ra/esse/models/system/metadata.py +13 -0
- mat3ra/esse/models/system/name.py +16 -0
- mat3ra/esse/models/system/owner.py +29 -0
- mat3ra/esse/models/system/path.py +16 -0
- mat3ra/esse/models/system/path_entity.py +20 -0
- mat3ra/esse/models/system/schema_version.py +16 -0
- mat3ra/esse/models/system/scope.py +13 -0
- mat3ra/esse/models/system/set.py +15 -0
- mat3ra/esse/models/system/sharing.py +13 -0
- mat3ra/esse/models/system/soft_removable.py +20 -0
- mat3ra/esse/models/system/status.py +20 -0
- mat3ra/esse/models/system/tags.py +16 -0
- mat3ra/esse/models/system/timestampable.py +22 -0
- mat3ra/esse/models/system/use_values.py +13 -0
- mat3ra/esse/models/third_party/db/nist_jarvis/2024.3.13/__init__.py +3 -0
- mat3ra/esse/models/third_party/db/nist_jarvis/2024.3.13/atoms.py +41 -0
- mat3ra/esse/models/third_party/db/nist_jarvis/2024.3.13/db_entry.py +55 -0
- mat3ra/esse/models/third_party/file/applications/espresso/7.2/__init__.py +3 -0
- mat3ra/esse/models/third_party/file/applications/espresso/7.2/pw.x/__init__.py +1990 -0
- mat3ra/esse/models/third_party/file/applications/espresso/7.2/pw.x/atomic_positions.py +51 -0
- mat3ra/esse/models/third_party/file/applications/espresso/7.2/pw.x/atomic_species.py +34 -0
- mat3ra/esse/models/third_party/file/applications/espresso/7.2/pw.x/cell.py +111 -0
- mat3ra/esse/models/third_party/file/applications/espresso/7.2/pw.x/cell_parameters.py +36 -0
- mat3ra/esse/models/third_party/file/applications/espresso/7.2/pw.x/control.py +169 -0
- mat3ra/esse/models/third_party/file/applications/espresso/7.2/pw.x/electrons.py +139 -0
- mat3ra/esse/models/third_party/file/applications/espresso/7.2/pw.x/hubbard.py +194 -0
- mat3ra/esse/models/third_party/file/applications/espresso/7.2/pw.x/ions.py +422 -0
- mat3ra/esse/models/third_party/file/applications/espresso/7.2/pw.x/k_points.py +73 -0
- mat3ra/esse/models/third_party/file/applications/espresso/7.2/pw.x/system.py +841 -0
- mat3ra/esse/models/workflow/__init__.py +2817 -0
- mat3ra/esse/models/workflow/base.py +79 -0
- mat3ra/esse/models/workflow/base_flow.py +180 -0
- mat3ra/esse/models/workflow/scope.py +14 -0
- mat3ra/esse/models/workflow/subworkflow/__init__.py +1472 -0
- mat3ra/esse/models/workflow/subworkflow/unit.py +1187 -0
- mat3ra/esse/models/workflow/unit/__init__.py +1415 -0
- mat3ra/esse/models/workflow/unit/assertion.py +149 -0
- mat3ra/esse/models/workflow/unit/assignment.py +165 -0
- mat3ra/esse/models/workflow/unit/base.py +137 -0
- mat3ra/esse/models/workflow/unit/condition.py +176 -0
- mat3ra/esse/models/workflow/unit/execution.py +374 -0
- mat3ra/esse/models/workflow/unit/input/__init__.py +3 -0
- mat3ra/esse/models/workflow/unit/input/_input.py +43 -0
- mat3ra/esse/models/workflow/unit/input/_inputItem.py +18 -0
- mat3ra/esse/models/workflow/unit/input/_inputItemId.py +21 -0
- mat3ra/esse/models/workflow/unit/input/_inputItemScope.py +18 -0
- mat3ra/esse/models/workflow/unit/input/_map_input/__init__.py +17 -0
- mat3ra/esse/models/workflow/unit/input/_map_input/values.py +13 -0
- mat3ra/esse/models/workflow/unit/io/__init__.py +254 -0
- mat3ra/esse/models/workflow/unit/io/api.py +27 -0
- mat3ra/esse/models/workflow/unit/io/db.py +39 -0
- mat3ra/esse/models/workflow/unit/io/object_storage.py +59 -0
- mat3ra/esse/models/workflow/unit/map.py +169 -0
- mat3ra/esse/models/workflow/unit/processing.py +153 -0
- mat3ra/esse/models/workflow/unit/reduce.py +160 -0
- mat3ra/esse/models/workflow/unit/runtime/__init__.py +3 -0
- mat3ra/esse/models/workflow/unit/runtime/_runtime_item_full_object.py +14 -0
- mat3ra/esse/models/workflow/unit/runtime/_runtime_item_name_object.py +14 -0
- mat3ra/esse/models/workflow/unit/runtime/_runtime_item_string.py +14 -0
- mat3ra/esse/models/workflow/unit/runtime/runtime_item.py +20 -0
- mat3ra/esse/models/workflow/unit/runtime/runtime_items.py +35 -0
- mat3ra/esse/models/workflow/unit/subworkflow.py +141 -0
- {mat3ra_esse-2024.4.8.post1.dist-info → mat3ra_esse-2024.4.8.post2.dist-info}/METADATA +1 -1
- mat3ra_esse-2024.4.8.post2.dist-info/RECORD +453 -0
- mat3ra_esse-2024.4.8.post1.dist-info/RECORD +0 -12
- {mat3ra_esse-2024.4.8.post1.dist-info → mat3ra_esse-2024.4.8.post2.dist-info}/LICENSE.md +0 -0
- {mat3ra_esse-2024.4.8.post1.dist-info → mat3ra_esse-2024.4.8.post2.dist-info}/WHEEL +0 -0
- {mat3ra_esse-2024.4.8.post1.dist-info → mat3ra_esse-2024.4.8.post2.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,211 @@
|
|
|
1
|
+
# generated by datamodel-codegen:
|
|
2
|
+
# filename: model/categorized_model.json
|
|
3
|
+
# version: 0.25.5
|
|
4
|
+
|
|
5
|
+
from __future__ import annotations
|
|
6
|
+
|
|
7
|
+
from enum import Enum
|
|
8
|
+
from typing import Any, Dict, List, Optional, Union
|
|
9
|
+
|
|
10
|
+
from pydantic import BaseModel, Field
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class SlugifiedEntry(BaseModel):
|
|
14
|
+
name: str
|
|
15
|
+
"""
|
|
16
|
+
descriptive human-readable name of entry
|
|
17
|
+
"""
|
|
18
|
+
slug: str
|
|
19
|
+
"""
|
|
20
|
+
machine-readable identifier
|
|
21
|
+
"""
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
class ReusableCategoriesSchema(BaseModel):
|
|
25
|
+
tier1: Optional[Union[SlugifiedEntry, str]] = Field(None, title="slugified entry or slug")
|
|
26
|
+
"""
|
|
27
|
+
contains either object with slugified entry or slug only as a string
|
|
28
|
+
"""
|
|
29
|
+
tier2: Optional[Union[SlugifiedEntry, str]] = Field(None, title="slugified entry or slug")
|
|
30
|
+
"""
|
|
31
|
+
contains either object with slugified entry or slug only as a string
|
|
32
|
+
"""
|
|
33
|
+
tier3: Optional[Union[SlugifiedEntry, str]] = Field(None, title="slugified entry or slug")
|
|
34
|
+
"""
|
|
35
|
+
contains either object with slugified entry or slug only as a string
|
|
36
|
+
"""
|
|
37
|
+
type: Optional[Union[SlugifiedEntry, str]] = Field(None, title="slugified entry or slug")
|
|
38
|
+
"""
|
|
39
|
+
contains either object with slugified entry or slug only as a string
|
|
40
|
+
"""
|
|
41
|
+
subtype: Optional[Union[SlugifiedEntry, str]] = Field(None, title="slugified entry or slug")
|
|
42
|
+
"""
|
|
43
|
+
contains either object with slugified entry or slug only as a string
|
|
44
|
+
"""
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
class CategorizedUnitMethod(BaseModel):
|
|
48
|
+
categories: Optional[ReusableCategoriesSchema] = Field(None, title="Reusable categories schema")
|
|
49
|
+
"""
|
|
50
|
+
Used to categorize entities such as models and methods
|
|
51
|
+
"""
|
|
52
|
+
parameters: Optional[Dict[str, Any]] = None
|
|
53
|
+
"""
|
|
54
|
+
Instructive parameters defining the method
|
|
55
|
+
"""
|
|
56
|
+
precision: Optional[Dict[str, Any]] = None
|
|
57
|
+
"""
|
|
58
|
+
Object showing the actual possible precision based on theory and implementation
|
|
59
|
+
"""
|
|
60
|
+
name: Optional[str] = None
|
|
61
|
+
"""
|
|
62
|
+
entity name
|
|
63
|
+
"""
|
|
64
|
+
path: Optional[str] = Field(None, title="category path schema")
|
|
65
|
+
"""
|
|
66
|
+
TODO: Use regex once schema draft version has been updated
|
|
67
|
+
"""
|
|
68
|
+
tags: Optional[List[str]] = None
|
|
69
|
+
"""
|
|
70
|
+
entity tags
|
|
71
|
+
"""
|
|
72
|
+
|
|
73
|
+
|
|
74
|
+
class CategorizedMethod(BaseModel):
|
|
75
|
+
units: List[CategorizedUnitMethod]
|
|
76
|
+
name: Optional[str] = None
|
|
77
|
+
"""
|
|
78
|
+
entity name
|
|
79
|
+
"""
|
|
80
|
+
path: Optional[str] = Field(None, title="category path schema")
|
|
81
|
+
"""
|
|
82
|
+
TODO: Use regex once schema draft version has been updated
|
|
83
|
+
"""
|
|
84
|
+
tags: Optional[List[str]] = None
|
|
85
|
+
"""
|
|
86
|
+
entity tags
|
|
87
|
+
"""
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
class ReusableCategoriesSchema3(BaseModel):
|
|
91
|
+
tier1: Optional[Union[SlugifiedEntry, str]] = Field(None, title="slugified entry or slug")
|
|
92
|
+
"""
|
|
93
|
+
contains either object with slugified entry or slug only as a string
|
|
94
|
+
"""
|
|
95
|
+
tier2: Optional[Union[SlugifiedEntry, str]] = Field(None, title="slugified entry or slug")
|
|
96
|
+
"""
|
|
97
|
+
contains either object with slugified entry or slug only as a string
|
|
98
|
+
"""
|
|
99
|
+
tier3: Optional[Union[SlugifiedEntry, str]] = Field(None, title="slugified entry or slug")
|
|
100
|
+
"""
|
|
101
|
+
contains either object with slugified entry or slug only as a string
|
|
102
|
+
"""
|
|
103
|
+
type: Optional[Union[SlugifiedEntry, str]] = Field(None, title="slugified entry or slug")
|
|
104
|
+
"""
|
|
105
|
+
contains either object with slugified entry or slug only as a string
|
|
106
|
+
"""
|
|
107
|
+
subtype: Optional[Union[SlugifiedEntry, str]] = Field(None, title="slugified entry or slug")
|
|
108
|
+
"""
|
|
109
|
+
contains either object with slugified entry or slug only as a string
|
|
110
|
+
"""
|
|
111
|
+
|
|
112
|
+
|
|
113
|
+
class Type(Enum):
|
|
114
|
+
literature = "literature"
|
|
115
|
+
|
|
116
|
+
|
|
117
|
+
class PagesSchema(BaseModel):
|
|
118
|
+
start: str
|
|
119
|
+
end: Optional[str] = None
|
|
120
|
+
|
|
121
|
+
|
|
122
|
+
class ExperimentAuthorSchema(BaseModel):
|
|
123
|
+
first: str
|
|
124
|
+
middle: Optional[str] = None
|
|
125
|
+
last: str
|
|
126
|
+
affiliation: Optional[str] = None
|
|
127
|
+
|
|
128
|
+
|
|
129
|
+
class LiteratureReferenceSchema(BaseModel):
|
|
130
|
+
type: Optional[Type] = None
|
|
131
|
+
doi: Optional[str] = None
|
|
132
|
+
"""
|
|
133
|
+
Digital Object Identifier of the reference.
|
|
134
|
+
"""
|
|
135
|
+
isbn: Optional[str] = None
|
|
136
|
+
"""
|
|
137
|
+
International Standard Book Number of the reference.
|
|
138
|
+
"""
|
|
139
|
+
issn: Optional[str] = None
|
|
140
|
+
"""
|
|
141
|
+
International Standard Serial Number of the reference.
|
|
142
|
+
"""
|
|
143
|
+
url: Optional[str] = None
|
|
144
|
+
"""
|
|
145
|
+
Internet address of the reference.
|
|
146
|
+
"""
|
|
147
|
+
title: Optional[str] = None
|
|
148
|
+
"""
|
|
149
|
+
Title of the work.
|
|
150
|
+
"""
|
|
151
|
+
publisher: Optional[str] = None
|
|
152
|
+
"""
|
|
153
|
+
Publisher of the work.
|
|
154
|
+
"""
|
|
155
|
+
journal: Optional[str] = None
|
|
156
|
+
"""
|
|
157
|
+
Journal in which the work appeared.
|
|
158
|
+
"""
|
|
159
|
+
volume: Optional[str] = None
|
|
160
|
+
"""
|
|
161
|
+
Volume of the series in which the work appeared.
|
|
162
|
+
"""
|
|
163
|
+
year: Optional[str] = None
|
|
164
|
+
"""
|
|
165
|
+
Year in which the reference was published.
|
|
166
|
+
"""
|
|
167
|
+
issue: Optional[str] = None
|
|
168
|
+
"""
|
|
169
|
+
Issue of the collection in which the work appeared.
|
|
170
|
+
"""
|
|
171
|
+
pages: Optional[PagesSchema] = Field(None, title="pages schema")
|
|
172
|
+
"""
|
|
173
|
+
Start and end pages of the work.
|
|
174
|
+
"""
|
|
175
|
+
authors: Optional[List[ExperimentAuthorSchema]] = None
|
|
176
|
+
"""
|
|
177
|
+
List of authors of the work.
|
|
178
|
+
"""
|
|
179
|
+
editors: Optional[List[ExperimentAuthorSchema]] = None
|
|
180
|
+
"""
|
|
181
|
+
List of editors of the work.
|
|
182
|
+
"""
|
|
183
|
+
reference: Optional[List[Dict[str, Any]]] = None
|
|
184
|
+
"""
|
|
185
|
+
References cited by the work. Reference objects can nest as deeply as needed. This is useful, for example, when tracking the history of a value referenced in a scholarly article; the top level reference would contain information about where the data was accessed while the nested reference would contain information about where it was originally published.
|
|
186
|
+
"""
|
|
187
|
+
|
|
188
|
+
|
|
189
|
+
class CategorizedModel(BaseModel):
|
|
190
|
+
method: CategorizedMethod = Field(..., title="categorized method")
|
|
191
|
+
categories: ReusableCategoriesSchema3 = Field(..., title="Reusable categories schema")
|
|
192
|
+
"""
|
|
193
|
+
Used to categorize entities such as models and methods
|
|
194
|
+
"""
|
|
195
|
+
parameters: Dict[str, Any]
|
|
196
|
+
"""
|
|
197
|
+
Model parameters defined in-place or via model mixins
|
|
198
|
+
"""
|
|
199
|
+
reference: Optional[LiteratureReferenceSchema] = Field(None, title="literature reference schema")
|
|
200
|
+
name: Optional[str] = None
|
|
201
|
+
"""
|
|
202
|
+
entity name
|
|
203
|
+
"""
|
|
204
|
+
path: Optional[str] = Field(None, title="category path schema")
|
|
205
|
+
"""
|
|
206
|
+
TODO: Use regex once schema draft version has been updated
|
|
207
|
+
"""
|
|
208
|
+
tags: Optional[List[str]] = None
|
|
209
|
+
"""
|
|
210
|
+
entity tags
|
|
211
|
+
"""
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# generated by datamodel-codegen:
|
|
2
|
+
# filename: model/mixins/dft/double_hybrid_functional.json
|
|
3
|
+
# version: 0.25.5
|
|
4
|
+
|
|
5
|
+
from __future__ import annotations
|
|
6
|
+
|
|
7
|
+
from enum import Enum
|
|
8
|
+
from typing import Optional
|
|
9
|
+
|
|
10
|
+
from pydantic import BaseModel
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class Functional(Enum):
|
|
14
|
+
b2plyp = "b2plyp"
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class DoubleHybridFunctionalMixin(BaseModel):
|
|
18
|
+
functional: Optional[Functional] = None
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# generated by datamodel-codegen:
|
|
2
|
+
# filename: model/mixins/dft/gga_functional.json
|
|
3
|
+
# version: 0.25.5
|
|
4
|
+
|
|
5
|
+
from __future__ import annotations
|
|
6
|
+
|
|
7
|
+
from enum import Enum
|
|
8
|
+
from typing import Optional
|
|
9
|
+
|
|
10
|
+
from pydantic import BaseModel, ConfigDict
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class Functional(Enum):
|
|
14
|
+
pbe = "pbe"
|
|
15
|
+
pbesol = "pbesol"
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
class GGAFunctionalMixin(BaseModel):
|
|
19
|
+
model_config = ConfigDict(
|
|
20
|
+
extra="allow",
|
|
21
|
+
)
|
|
22
|
+
functional: Optional[Functional] = None
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# generated by datamodel-codegen:
|
|
2
|
+
# filename: model/mixins/dft/hybrid_functional.json
|
|
3
|
+
# version: 0.25.5
|
|
4
|
+
|
|
5
|
+
from __future__ import annotations
|
|
6
|
+
|
|
7
|
+
from enum import Enum
|
|
8
|
+
from typing import Optional
|
|
9
|
+
|
|
10
|
+
from pydantic import BaseModel
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class Functional(Enum):
|
|
14
|
+
hse06 = "hse06"
|
|
15
|
+
b3lyp = "b3lyp"
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
class HybridFunctionalMixin(BaseModel):
|
|
19
|
+
functional: Optional[Functional] = None
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# generated by datamodel-codegen:
|
|
2
|
+
# filename: model/mixins/dft/lda_functional.json
|
|
3
|
+
# version: 0.25.5
|
|
4
|
+
|
|
5
|
+
from __future__ import annotations
|
|
6
|
+
|
|
7
|
+
from enum import Enum
|
|
8
|
+
from typing import Optional
|
|
9
|
+
|
|
10
|
+
from pydantic import BaseModel, ConfigDict
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class Functional(Enum):
|
|
14
|
+
pz = "pz"
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class LDAFunctionalMixin(BaseModel):
|
|
18
|
+
model_config = ConfigDict(
|
|
19
|
+
extra="allow",
|
|
20
|
+
)
|
|
21
|
+
functional: Optional[Functional] = None
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# generated by datamodel-codegen:
|
|
2
|
+
# filename: model/mixins/dft/mgga_functional.json
|
|
3
|
+
# version: 0.25.5
|
|
4
|
+
|
|
5
|
+
from __future__ import annotations
|
|
6
|
+
|
|
7
|
+
from enum import Enum
|
|
8
|
+
from typing import Optional
|
|
9
|
+
|
|
10
|
+
from pydantic import BaseModel, ConfigDict
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class Functional(Enum):
|
|
14
|
+
scan = "scan"
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class MetaGGAFunctionalMixin(BaseModel):
|
|
18
|
+
model_config = ConfigDict(
|
|
19
|
+
extra="allow",
|
|
20
|
+
)
|
|
21
|
+
functional: Optional[Functional] = None
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# generated by datamodel-codegen:
|
|
2
|
+
# filename: model/mixins/dispersion_correction.json
|
|
3
|
+
# version: 0.25.5
|
|
4
|
+
|
|
5
|
+
from __future__ import annotations
|
|
6
|
+
|
|
7
|
+
from enum import Enum
|
|
8
|
+
from typing import Optional
|
|
9
|
+
|
|
10
|
+
from pydantic import BaseModel
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class DispersionCorrection(Enum):
|
|
14
|
+
dft_d2 = "dft-d2"
|
|
15
|
+
dft_d3 = "dft-d3"
|
|
16
|
+
xdm = "xdm"
|
|
17
|
+
ts = "ts"
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
class DispersionCorrectionMixin(BaseModel):
|
|
21
|
+
dispersionCorrection: Optional[DispersionCorrection] = None
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# generated by datamodel-codegen:
|
|
2
|
+
# filename: model/mixins/hubbard.json
|
|
3
|
+
# version: 0.25.5
|
|
4
|
+
|
|
5
|
+
from __future__ import annotations
|
|
6
|
+
|
|
7
|
+
from enum import Enum
|
|
8
|
+
from typing import Optional
|
|
9
|
+
|
|
10
|
+
from pydantic import BaseModel
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class HubbardType(Enum):
|
|
14
|
+
u = "u"
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class HubbardModelMixin(BaseModel):
|
|
18
|
+
hubbardType: Optional[HubbardType] = None
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# generated by datamodel-codegen:
|
|
2
|
+
# filename: model/mixins/spin_orbit_coupling.json
|
|
3
|
+
# version: 0.25.5
|
|
4
|
+
|
|
5
|
+
from __future__ import annotations
|
|
6
|
+
|
|
7
|
+
from typing import Optional
|
|
8
|
+
|
|
9
|
+
from pydantic import BaseModel, ConfigDict
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class SpinOrbitCouplingMixin(BaseModel):
|
|
13
|
+
model_config = ConfigDict(
|
|
14
|
+
extra="allow",
|
|
15
|
+
)
|
|
16
|
+
spinOrbitCoupling: Optional[bool] = None
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# generated by datamodel-codegen:
|
|
2
|
+
# filename: model/mixins/spin_polarization.json
|
|
3
|
+
# version: 0.25.5
|
|
4
|
+
|
|
5
|
+
from __future__ import annotations
|
|
6
|
+
|
|
7
|
+
from enum import Enum
|
|
8
|
+
from typing import Optional
|
|
9
|
+
|
|
10
|
+
from pydantic import BaseModel, ConfigDict
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class SpinPolarization(Enum):
|
|
14
|
+
collinear = "collinear"
|
|
15
|
+
non_collinear = "non-collinear"
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
class SpinPolarizationMixin(BaseModel):
|
|
19
|
+
model_config = ConfigDict(
|
|
20
|
+
extra="allow",
|
|
21
|
+
)
|
|
22
|
+
spinPolarization: Optional[SpinPolarization] = None
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
# generated by datamodel-codegen:
|
|
2
|
+
# filename: model/model_parameters.json
|
|
3
|
+
# version: 0.25.5
|
|
4
|
+
|
|
5
|
+
from __future__ import annotations
|
|
6
|
+
|
|
7
|
+
from enum import Enum
|
|
8
|
+
from typing import Optional, Union
|
|
9
|
+
|
|
10
|
+
from pydantic import BaseModel, ConfigDict, Field, RootModel
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class HubbardType(Enum):
|
|
14
|
+
u = "u"
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class SpinPolarization(Enum):
|
|
18
|
+
collinear = "collinear"
|
|
19
|
+
non_collinear = "non-collinear"
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
class DispersionCorrection(Enum):
|
|
23
|
+
dft_d2 = "dft-d2"
|
|
24
|
+
dft_d3 = "dft-d3"
|
|
25
|
+
xdm = "xdm"
|
|
26
|
+
ts = "ts"
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
class Functional(Enum):
|
|
30
|
+
pz = "pz"
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
class LDAFunctionalMixin(BaseModel):
|
|
34
|
+
model_config = ConfigDict(
|
|
35
|
+
extra="allow",
|
|
36
|
+
)
|
|
37
|
+
hubbardType: Optional[HubbardType] = None
|
|
38
|
+
spinPolarization: Optional[SpinPolarization] = None
|
|
39
|
+
spinOrbitCoupling: Optional[bool] = None
|
|
40
|
+
dispersionCorrection: Optional[DispersionCorrection] = None
|
|
41
|
+
functional: Optional[Functional] = None
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
class Functional37(Enum):
|
|
45
|
+
pbe = "pbe"
|
|
46
|
+
pbesol = "pbesol"
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
class GGAFunctionalMixin(BaseModel):
|
|
50
|
+
model_config = ConfigDict(
|
|
51
|
+
extra="allow",
|
|
52
|
+
)
|
|
53
|
+
hubbardType: Optional[HubbardType] = None
|
|
54
|
+
spinPolarization: Optional[SpinPolarization] = None
|
|
55
|
+
spinOrbitCoupling: Optional[bool] = None
|
|
56
|
+
dispersionCorrection: Optional[DispersionCorrection] = None
|
|
57
|
+
functional: Optional[Functional37] = None
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
class Functional38(Enum):
|
|
61
|
+
scan = "scan"
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
class MetaGGAFunctionalMixin(BaseModel):
|
|
65
|
+
model_config = ConfigDict(
|
|
66
|
+
extra="allow",
|
|
67
|
+
)
|
|
68
|
+
hubbardType: Optional[HubbardType] = None
|
|
69
|
+
spinPolarization: Optional[SpinPolarization] = None
|
|
70
|
+
spinOrbitCoupling: Optional[bool] = None
|
|
71
|
+
dispersionCorrection: Optional[DispersionCorrection] = None
|
|
72
|
+
functional: Optional[Functional38] = None
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
class Functional39(Enum):
|
|
76
|
+
hse06 = "hse06"
|
|
77
|
+
b3lyp = "b3lyp"
|
|
78
|
+
|
|
79
|
+
|
|
80
|
+
class HybridFunctionalMixin(BaseModel):
|
|
81
|
+
model_config = ConfigDict(
|
|
82
|
+
extra="allow",
|
|
83
|
+
)
|
|
84
|
+
hubbardType: Optional[HubbardType] = None
|
|
85
|
+
spinPolarization: Optional[SpinPolarization] = None
|
|
86
|
+
spinOrbitCoupling: Optional[bool] = None
|
|
87
|
+
dispersionCorrection: Optional[DispersionCorrection] = None
|
|
88
|
+
functional: Optional[Functional39] = None
|
|
89
|
+
|
|
90
|
+
|
|
91
|
+
class Functional40(Enum):
|
|
92
|
+
b2plyp = "b2plyp"
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
class DoubleHybridFunctionalMixin(BaseModel):
|
|
96
|
+
model_config = ConfigDict(
|
|
97
|
+
extra="allow",
|
|
98
|
+
)
|
|
99
|
+
hubbardType: Optional[HubbardType] = None
|
|
100
|
+
spinPolarization: Optional[SpinPolarization] = None
|
|
101
|
+
spinOrbitCoupling: Optional[bool] = None
|
|
102
|
+
dispersionCorrection: Optional[DispersionCorrection] = None
|
|
103
|
+
functional: Optional[Functional40] = None
|
|
104
|
+
|
|
105
|
+
|
|
106
|
+
class ESSE(
|
|
107
|
+
RootModel[
|
|
108
|
+
Union[
|
|
109
|
+
LDAFunctionalMixin,
|
|
110
|
+
GGAFunctionalMixin,
|
|
111
|
+
MetaGGAFunctionalMixin,
|
|
112
|
+
HybridFunctionalMixin,
|
|
113
|
+
DoubleHybridFunctionalMixin,
|
|
114
|
+
]
|
|
115
|
+
]
|
|
116
|
+
):
|
|
117
|
+
root: Union[
|
|
118
|
+
LDAFunctionalMixin,
|
|
119
|
+
GGAFunctionalMixin,
|
|
120
|
+
MetaGGAFunctionalMixin,
|
|
121
|
+
HybridFunctionalMixin,
|
|
122
|
+
DoubleHybridFunctionalMixin,
|
|
123
|
+
] = Field(..., title="ModelParameters")
|