mat3ra-esse 2024.4.8.post0__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.post0.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.post0.dist-info/RECORD +0 -12
- {mat3ra_esse-2024.4.8.post0.dist-info → mat3ra_esse-2024.4.8.post2.dist-info}/LICENSE.md +0 -0
- {mat3ra_esse-2024.4.8.post0.dist-info → mat3ra_esse-2024.4.8.post2.dist-info}/WHEEL +0 -0
- {mat3ra_esse-2024.4.8.post0.dist-info → mat3ra_esse-2024.4.8.post2.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,213 @@
|
|
|
1
|
+
# generated by datamodel-codegen:
|
|
2
|
+
# filename: models_directory/hybrid.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, ConfigDict, 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 SlugifiedEntryOrSlug(Enum):
|
|
25
|
+
hybrid = "hybrid"
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
class SlugifiedEntryOrSlug109(Enum):
|
|
29
|
+
ksdft = "ksdft"
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
class SlugifiedEntryOrSlug110(Enum):
|
|
33
|
+
dft = "dft"
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
class SlugifiedEntryOrSlug111(Enum):
|
|
37
|
+
qm = "qm"
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
class SlugifiedEntryOrSlug112(Enum):
|
|
41
|
+
pb = "pb"
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
class DFTHybridFunctionalCategorySchema(BaseModel):
|
|
45
|
+
subtype: Optional[Union[SlugifiedEntry, SlugifiedEntryOrSlug]] = Field(None, title="slugified entry or slug")
|
|
46
|
+
"""
|
|
47
|
+
contains either object with slugified entry or slug only as a string
|
|
48
|
+
"""
|
|
49
|
+
type: Optional[Union[SlugifiedEntry, SlugifiedEntryOrSlug109]] = Field(None, title="slugified entry or slug")
|
|
50
|
+
"""
|
|
51
|
+
contains either object with slugified entry or slug only as a string
|
|
52
|
+
"""
|
|
53
|
+
tier3: Optional[Union[SlugifiedEntry, SlugifiedEntryOrSlug110]] = Field(None, title="slugified entry or slug")
|
|
54
|
+
"""
|
|
55
|
+
contains either object with slugified entry or slug only as a string
|
|
56
|
+
"""
|
|
57
|
+
tier2: Optional[Union[SlugifiedEntry, SlugifiedEntryOrSlug111]] = Field(None, title="slugified entry or slug")
|
|
58
|
+
"""
|
|
59
|
+
contains either object with slugified entry or slug only as a string
|
|
60
|
+
"""
|
|
61
|
+
tier1: Optional[Union[SlugifiedEntry, SlugifiedEntryOrSlug112]] = Field(None, title="slugified entry or slug")
|
|
62
|
+
"""
|
|
63
|
+
contains either object with slugified entry or slug only as a string
|
|
64
|
+
"""
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
class Functional(Enum):
|
|
68
|
+
hse06 = "hse06"
|
|
69
|
+
b3lyp = "b3lyp"
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
class SpinOrbitCouplingMixin(BaseModel):
|
|
73
|
+
model_config = ConfigDict(
|
|
74
|
+
extra="allow",
|
|
75
|
+
)
|
|
76
|
+
functional: Optional[Functional] = None
|
|
77
|
+
spinOrbitCoupling: Optional[bool] = None
|
|
78
|
+
|
|
79
|
+
|
|
80
|
+
class DispersionCorrection(Enum):
|
|
81
|
+
dft_d2 = "dft-d2"
|
|
82
|
+
dft_d3 = "dft-d3"
|
|
83
|
+
xdm = "xdm"
|
|
84
|
+
ts = "ts"
|
|
85
|
+
|
|
86
|
+
|
|
87
|
+
class DispersionCorrectionMixin(BaseModel):
|
|
88
|
+
functional: Optional[Functional] = None
|
|
89
|
+
dispersionCorrection: Optional[DispersionCorrection] = None
|
|
90
|
+
|
|
91
|
+
|
|
92
|
+
class SpinPolarization(Enum):
|
|
93
|
+
collinear = "collinear"
|
|
94
|
+
non_collinear = "non-collinear"
|
|
95
|
+
|
|
96
|
+
|
|
97
|
+
class SpinPolarizationMixin(BaseModel):
|
|
98
|
+
model_config = ConfigDict(
|
|
99
|
+
extra="allow",
|
|
100
|
+
)
|
|
101
|
+
functional: Optional[Functional] = None
|
|
102
|
+
spinPolarization: Optional[SpinPolarization] = None
|
|
103
|
+
|
|
104
|
+
|
|
105
|
+
class HubbardType(Enum):
|
|
106
|
+
u = "u"
|
|
107
|
+
|
|
108
|
+
|
|
109
|
+
class HubbardModelMixin(BaseModel):
|
|
110
|
+
functional: Optional[Functional] = None
|
|
111
|
+
hubbardType: Optional[HubbardType] = None
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
class Type(Enum):
|
|
115
|
+
literature = "literature"
|
|
116
|
+
|
|
117
|
+
|
|
118
|
+
class PagesSchema(BaseModel):
|
|
119
|
+
start: str
|
|
120
|
+
end: Optional[str] = None
|
|
121
|
+
|
|
122
|
+
|
|
123
|
+
class ExperimentAuthorSchema(BaseModel):
|
|
124
|
+
first: str
|
|
125
|
+
middle: Optional[str] = None
|
|
126
|
+
last: str
|
|
127
|
+
affiliation: Optional[str] = None
|
|
128
|
+
|
|
129
|
+
|
|
130
|
+
class LiteratureReferenceSchema(BaseModel):
|
|
131
|
+
type: Optional[Type] = None
|
|
132
|
+
doi: Optional[str] = None
|
|
133
|
+
"""
|
|
134
|
+
Digital Object Identifier of the reference.
|
|
135
|
+
"""
|
|
136
|
+
isbn: Optional[str] = None
|
|
137
|
+
"""
|
|
138
|
+
International Standard Book Number of the reference.
|
|
139
|
+
"""
|
|
140
|
+
issn: Optional[str] = None
|
|
141
|
+
"""
|
|
142
|
+
International Standard Serial Number of the reference.
|
|
143
|
+
"""
|
|
144
|
+
url: Optional[str] = None
|
|
145
|
+
"""
|
|
146
|
+
Internet address of the reference.
|
|
147
|
+
"""
|
|
148
|
+
title: Optional[str] = None
|
|
149
|
+
"""
|
|
150
|
+
Title of the work.
|
|
151
|
+
"""
|
|
152
|
+
publisher: Optional[str] = None
|
|
153
|
+
"""
|
|
154
|
+
Publisher of the work.
|
|
155
|
+
"""
|
|
156
|
+
journal: Optional[str] = None
|
|
157
|
+
"""
|
|
158
|
+
Journal in which the work appeared.
|
|
159
|
+
"""
|
|
160
|
+
volume: Optional[str] = None
|
|
161
|
+
"""
|
|
162
|
+
Volume of the series in which the work appeared.
|
|
163
|
+
"""
|
|
164
|
+
year: Optional[str] = None
|
|
165
|
+
"""
|
|
166
|
+
Year in which the reference was published.
|
|
167
|
+
"""
|
|
168
|
+
issue: Optional[str] = None
|
|
169
|
+
"""
|
|
170
|
+
Issue of the collection in which the work appeared.
|
|
171
|
+
"""
|
|
172
|
+
pages: Optional[PagesSchema] = Field(None, title="pages schema")
|
|
173
|
+
"""
|
|
174
|
+
Start and end pages of the work.
|
|
175
|
+
"""
|
|
176
|
+
authors: Optional[List[ExperimentAuthorSchema]] = None
|
|
177
|
+
"""
|
|
178
|
+
List of authors of the work.
|
|
179
|
+
"""
|
|
180
|
+
editors: Optional[List[ExperimentAuthorSchema]] = None
|
|
181
|
+
"""
|
|
182
|
+
List of editors of the work.
|
|
183
|
+
"""
|
|
184
|
+
reference: Optional[List[Dict[str, Any]]] = None
|
|
185
|
+
"""
|
|
186
|
+
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.
|
|
187
|
+
"""
|
|
188
|
+
|
|
189
|
+
|
|
190
|
+
class ModelHybridFunctional(BaseModel):
|
|
191
|
+
categories: DFTHybridFunctionalCategorySchema = Field(..., title="DFT hybrid functional category schema")
|
|
192
|
+
"""
|
|
193
|
+
Used to categorize entities such as models and methods
|
|
194
|
+
"""
|
|
195
|
+
parameters: Union[SpinOrbitCouplingMixin, DispersionCorrectionMixin, SpinPolarizationMixin, HubbardModelMixin] = (
|
|
196
|
+
Field(..., title="Hybrid functional mixin")
|
|
197
|
+
)
|
|
198
|
+
"""
|
|
199
|
+
Model parameters defined in-place or via model mixins
|
|
200
|
+
"""
|
|
201
|
+
reference: Optional[LiteratureReferenceSchema] = Field(None, title="literature reference schema")
|
|
202
|
+
name: Optional[str] = None
|
|
203
|
+
"""
|
|
204
|
+
entity name
|
|
205
|
+
"""
|
|
206
|
+
path: Optional[str] = Field(None, title="category path schema")
|
|
207
|
+
"""
|
|
208
|
+
TODO: Use regex once schema draft version has been updated
|
|
209
|
+
"""
|
|
210
|
+
tags: Optional[List[str]] = None
|
|
211
|
+
"""
|
|
212
|
+
entity tags
|
|
213
|
+
"""
|
|
@@ -0,0 +1,218 @@
|
|
|
1
|
+
# generated by datamodel-codegen:
|
|
2
|
+
# filename: models_directory/lda.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, ConfigDict, 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 SlugifiedEntryOrSlug(Enum):
|
|
25
|
+
lda = "lda"
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
class SlugifiedEntryOrSlug129(Enum):
|
|
29
|
+
ksdft = "ksdft"
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
class SlugifiedEntryOrSlug130(Enum):
|
|
33
|
+
dft = "dft"
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
class SlugifiedEntryOrSlug131(Enum):
|
|
37
|
+
qm = "qm"
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
class SlugifiedEntryOrSlug132(Enum):
|
|
41
|
+
pb = "pb"
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
class DFTLDAFunctionalCategorySchema(BaseModel):
|
|
45
|
+
subtype: Optional[Union[SlugifiedEntry, SlugifiedEntryOrSlug]] = Field(None, title="slugified entry or slug")
|
|
46
|
+
"""
|
|
47
|
+
contains either object with slugified entry or slug only as a string
|
|
48
|
+
"""
|
|
49
|
+
type: Optional[Union[SlugifiedEntry, SlugifiedEntryOrSlug129]] = Field(None, title="slugified entry or slug")
|
|
50
|
+
"""
|
|
51
|
+
contains either object with slugified entry or slug only as a string
|
|
52
|
+
"""
|
|
53
|
+
tier3: Optional[Union[SlugifiedEntry, SlugifiedEntryOrSlug130]] = Field(None, title="slugified entry or slug")
|
|
54
|
+
"""
|
|
55
|
+
contains either object with slugified entry or slug only as a string
|
|
56
|
+
"""
|
|
57
|
+
tier2: Optional[Union[SlugifiedEntry, SlugifiedEntryOrSlug131]] = Field(None, title="slugified entry or slug")
|
|
58
|
+
"""
|
|
59
|
+
contains either object with slugified entry or slug only as a string
|
|
60
|
+
"""
|
|
61
|
+
tier1: Optional[Union[SlugifiedEntry, SlugifiedEntryOrSlug132]] = Field(None, title="slugified entry or slug")
|
|
62
|
+
"""
|
|
63
|
+
contains either object with slugified entry or slug only as a string
|
|
64
|
+
"""
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
class Functional(Enum):
|
|
68
|
+
pz = "pz"
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
class SpinOrbitCouplingMixin(BaseModel):
|
|
72
|
+
model_config = ConfigDict(
|
|
73
|
+
extra="allow",
|
|
74
|
+
)
|
|
75
|
+
functional: Optional[Functional] = None
|
|
76
|
+
spinOrbitCoupling: Optional[bool] = None
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
class DispersionCorrection(Enum):
|
|
80
|
+
dft_d2 = "dft-d2"
|
|
81
|
+
dft_d3 = "dft-d3"
|
|
82
|
+
xdm = "xdm"
|
|
83
|
+
ts = "ts"
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
class DispersionCorrectionMixin(BaseModel):
|
|
87
|
+
model_config = ConfigDict(
|
|
88
|
+
extra="allow",
|
|
89
|
+
)
|
|
90
|
+
functional: Optional[Functional] = None
|
|
91
|
+
dispersionCorrection: Optional[DispersionCorrection] = None
|
|
92
|
+
|
|
93
|
+
|
|
94
|
+
class SpinPolarization(Enum):
|
|
95
|
+
collinear = "collinear"
|
|
96
|
+
non_collinear = "non-collinear"
|
|
97
|
+
|
|
98
|
+
|
|
99
|
+
class SpinPolarizationMixin(BaseModel):
|
|
100
|
+
model_config = ConfigDict(
|
|
101
|
+
extra="allow",
|
|
102
|
+
)
|
|
103
|
+
functional: Optional[Functional] = None
|
|
104
|
+
spinPolarization: Optional[SpinPolarization] = None
|
|
105
|
+
|
|
106
|
+
|
|
107
|
+
class HubbardType(Enum):
|
|
108
|
+
u = "u"
|
|
109
|
+
|
|
110
|
+
|
|
111
|
+
class HubbardModelMixin(BaseModel):
|
|
112
|
+
model_config = ConfigDict(
|
|
113
|
+
extra="allow",
|
|
114
|
+
)
|
|
115
|
+
functional: Optional[Functional] = None
|
|
116
|
+
hubbardType: Optional[HubbardType] = None
|
|
117
|
+
|
|
118
|
+
|
|
119
|
+
class Type(Enum):
|
|
120
|
+
literature = "literature"
|
|
121
|
+
|
|
122
|
+
|
|
123
|
+
class PagesSchema(BaseModel):
|
|
124
|
+
start: str
|
|
125
|
+
end: Optional[str] = None
|
|
126
|
+
|
|
127
|
+
|
|
128
|
+
class ExperimentAuthorSchema(BaseModel):
|
|
129
|
+
first: str
|
|
130
|
+
middle: Optional[str] = None
|
|
131
|
+
last: str
|
|
132
|
+
affiliation: Optional[str] = None
|
|
133
|
+
|
|
134
|
+
|
|
135
|
+
class LiteratureReferenceSchema(BaseModel):
|
|
136
|
+
type: Optional[Type] = None
|
|
137
|
+
doi: Optional[str] = None
|
|
138
|
+
"""
|
|
139
|
+
Digital Object Identifier of the reference.
|
|
140
|
+
"""
|
|
141
|
+
isbn: Optional[str] = None
|
|
142
|
+
"""
|
|
143
|
+
International Standard Book Number of the reference.
|
|
144
|
+
"""
|
|
145
|
+
issn: Optional[str] = None
|
|
146
|
+
"""
|
|
147
|
+
International Standard Serial Number of the reference.
|
|
148
|
+
"""
|
|
149
|
+
url: Optional[str] = None
|
|
150
|
+
"""
|
|
151
|
+
Internet address of the reference.
|
|
152
|
+
"""
|
|
153
|
+
title: Optional[str] = None
|
|
154
|
+
"""
|
|
155
|
+
Title of the work.
|
|
156
|
+
"""
|
|
157
|
+
publisher: Optional[str] = None
|
|
158
|
+
"""
|
|
159
|
+
Publisher of the work.
|
|
160
|
+
"""
|
|
161
|
+
journal: Optional[str] = None
|
|
162
|
+
"""
|
|
163
|
+
Journal in which the work appeared.
|
|
164
|
+
"""
|
|
165
|
+
volume: Optional[str] = None
|
|
166
|
+
"""
|
|
167
|
+
Volume of the series in which the work appeared.
|
|
168
|
+
"""
|
|
169
|
+
year: Optional[str] = None
|
|
170
|
+
"""
|
|
171
|
+
Year in which the reference was published.
|
|
172
|
+
"""
|
|
173
|
+
issue: Optional[str] = None
|
|
174
|
+
"""
|
|
175
|
+
Issue of the collection in which the work appeared.
|
|
176
|
+
"""
|
|
177
|
+
pages: Optional[PagesSchema] = Field(None, title="pages schema")
|
|
178
|
+
"""
|
|
179
|
+
Start and end pages of the work.
|
|
180
|
+
"""
|
|
181
|
+
authors: Optional[List[ExperimentAuthorSchema]] = None
|
|
182
|
+
"""
|
|
183
|
+
List of authors of the work.
|
|
184
|
+
"""
|
|
185
|
+
editors: Optional[List[ExperimentAuthorSchema]] = None
|
|
186
|
+
"""
|
|
187
|
+
List of editors of the work.
|
|
188
|
+
"""
|
|
189
|
+
reference: Optional[List[Dict[str, Any]]] = None
|
|
190
|
+
"""
|
|
191
|
+
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.
|
|
192
|
+
"""
|
|
193
|
+
|
|
194
|
+
|
|
195
|
+
class ModelLocalDensityApproximation(BaseModel):
|
|
196
|
+
categories: DFTLDAFunctionalCategorySchema = Field(..., title="DFT LDA functional category schema")
|
|
197
|
+
"""
|
|
198
|
+
Used to categorize entities such as models and methods
|
|
199
|
+
"""
|
|
200
|
+
parameters: Union[SpinOrbitCouplingMixin, DispersionCorrectionMixin, SpinPolarizationMixin, HubbardModelMixin] = (
|
|
201
|
+
Field(..., title="LDA functional mixin")
|
|
202
|
+
)
|
|
203
|
+
"""
|
|
204
|
+
Model parameters defined in-place or via model mixins
|
|
205
|
+
"""
|
|
206
|
+
reference: Optional[LiteratureReferenceSchema] = Field(None, title="literature reference schema")
|
|
207
|
+
name: Optional[str] = None
|
|
208
|
+
"""
|
|
209
|
+
entity name
|
|
210
|
+
"""
|
|
211
|
+
path: Optional[str] = Field(None, title="category path schema")
|
|
212
|
+
"""
|
|
213
|
+
TODO: Use regex once schema draft version has been updated
|
|
214
|
+
"""
|
|
215
|
+
tags: Optional[List[str]] = None
|
|
216
|
+
"""
|
|
217
|
+
entity tags
|
|
218
|
+
"""
|
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
# generated by datamodel-codegen:
|
|
2
|
+
# filename: models_directory/legacy/dft.json
|
|
3
|
+
# version: 0.25.5
|
|
4
|
+
|
|
5
|
+
from __future__ import annotations
|
|
6
|
+
|
|
7
|
+
from enum import Enum
|
|
8
|
+
from typing import Any, Dict, Optional, Union
|
|
9
|
+
|
|
10
|
+
from pydantic import BaseModel, ConfigDict, Field, RootModel
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class Type(Enum):
|
|
14
|
+
dft = "dft"
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class Subtype(Enum):
|
|
18
|
+
lda = "lda"
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
class BaseMethod(BaseModel):
|
|
22
|
+
type: str
|
|
23
|
+
"""
|
|
24
|
+
general type of this method, eg. `pseudopotential`
|
|
25
|
+
"""
|
|
26
|
+
subtype: str
|
|
27
|
+
"""
|
|
28
|
+
general subtype of this method, eg. `ultra-soft`
|
|
29
|
+
"""
|
|
30
|
+
precision: Optional[Dict[str, Any]] = None
|
|
31
|
+
"""
|
|
32
|
+
Object showing the actual possible precision based on theory and implementation
|
|
33
|
+
"""
|
|
34
|
+
data: Optional[Dict[str, Any]] = None
|
|
35
|
+
"""
|
|
36
|
+
additional data specific to method, eg. array of pseudopotentials
|
|
37
|
+
"""
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
class Functional(Enum):
|
|
41
|
+
pz = "pz"
|
|
42
|
+
pw = "pw"
|
|
43
|
+
vwn = "vwn"
|
|
44
|
+
other = "other"
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
class LegacyModelDensityFunctionalTheory(BaseModel):
|
|
48
|
+
model_config = ConfigDict(
|
|
49
|
+
extra="allow",
|
|
50
|
+
)
|
|
51
|
+
type: Type
|
|
52
|
+
"""
|
|
53
|
+
general type of the model, eg. `dft`
|
|
54
|
+
"""
|
|
55
|
+
subtype: Subtype
|
|
56
|
+
"""
|
|
57
|
+
general subtype of the model, eg. `lda`
|
|
58
|
+
"""
|
|
59
|
+
method: BaseMethod = Field(..., title="base method")
|
|
60
|
+
functional: Optional[Functional] = None
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
class Subtype1(Enum):
|
|
64
|
+
gga = "gga"
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
class Functional1(Enum):
|
|
68
|
+
pbe = "pbe"
|
|
69
|
+
pbesol = "pbesol"
|
|
70
|
+
pw91 = "pw91"
|
|
71
|
+
other = "other"
|
|
72
|
+
|
|
73
|
+
|
|
74
|
+
class LegacyModelDensityFunctionalTheory1(BaseModel):
|
|
75
|
+
model_config = ConfigDict(
|
|
76
|
+
extra="allow",
|
|
77
|
+
)
|
|
78
|
+
type: Type
|
|
79
|
+
"""
|
|
80
|
+
general type of the model, eg. `dft`
|
|
81
|
+
"""
|
|
82
|
+
subtype: Subtype1
|
|
83
|
+
"""
|
|
84
|
+
general subtype of the model, eg. `lda`
|
|
85
|
+
"""
|
|
86
|
+
method: BaseMethod = Field(..., title="base method")
|
|
87
|
+
functional: Optional[Functional1] = None
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
class Subtype2(Enum):
|
|
91
|
+
hybrid = "hybrid"
|
|
92
|
+
|
|
93
|
+
|
|
94
|
+
class Functional2(Enum):
|
|
95
|
+
b3lyp = "b3lyp"
|
|
96
|
+
hse06 = "hse06"
|
|
97
|
+
|
|
98
|
+
|
|
99
|
+
class LegacyModelDensityFunctionalTheory2(BaseModel):
|
|
100
|
+
model_config = ConfigDict(
|
|
101
|
+
extra="allow",
|
|
102
|
+
)
|
|
103
|
+
type: Type
|
|
104
|
+
"""
|
|
105
|
+
general type of the model, eg. `dft`
|
|
106
|
+
"""
|
|
107
|
+
subtype: Subtype2
|
|
108
|
+
"""
|
|
109
|
+
general subtype of the model, eg. `lda`
|
|
110
|
+
"""
|
|
111
|
+
method: BaseMethod = Field(..., title="base method")
|
|
112
|
+
functional: Optional[Functional2] = None
|
|
113
|
+
|
|
114
|
+
|
|
115
|
+
class ESSE(
|
|
116
|
+
RootModel[
|
|
117
|
+
Union[
|
|
118
|
+
LegacyModelDensityFunctionalTheory, LegacyModelDensityFunctionalTheory1, LegacyModelDensityFunctionalTheory2
|
|
119
|
+
]
|
|
120
|
+
]
|
|
121
|
+
):
|
|
122
|
+
root: Union[
|
|
123
|
+
LegacyModelDensityFunctionalTheory, LegacyModelDensityFunctionalTheory1, LegacyModelDensityFunctionalTheory2
|
|
124
|
+
] = Field(..., title="legacy model density functional theory")
|
|
125
|
+
|
|
126
|
+
|
|
127
|
+
class Subtype3(Enum):
|
|
128
|
+
lda = "lda"
|
|
129
|
+
|
|
130
|
+
|
|
131
|
+
class Functional3(Enum):
|
|
132
|
+
pz = "pz"
|
|
133
|
+
pw = "pw"
|
|
134
|
+
vwn = "vwn"
|
|
135
|
+
other = "other"
|
|
136
|
+
|
|
137
|
+
|
|
138
|
+
class Lda(BaseModel):
|
|
139
|
+
subtype: Optional[Subtype3] = None
|
|
140
|
+
functional: Optional[Functional3] = None
|
|
141
|
+
|
|
142
|
+
|
|
143
|
+
class Subtype4(Enum):
|
|
144
|
+
gga = "gga"
|
|
145
|
+
|
|
146
|
+
|
|
147
|
+
class Functional4(Enum):
|
|
148
|
+
pbe = "pbe"
|
|
149
|
+
pbesol = "pbesol"
|
|
150
|
+
pw91 = "pw91"
|
|
151
|
+
other = "other"
|
|
152
|
+
|
|
153
|
+
|
|
154
|
+
class Gga(BaseModel):
|
|
155
|
+
subtype: Optional[Subtype4] = None
|
|
156
|
+
functional: Optional[Functional4] = None
|
|
157
|
+
|
|
158
|
+
|
|
159
|
+
class Subtype5(Enum):
|
|
160
|
+
hybrid = "hybrid"
|
|
161
|
+
|
|
162
|
+
|
|
163
|
+
class Functional5(Enum):
|
|
164
|
+
b3lyp = "b3lyp"
|
|
165
|
+
hse06 = "hse06"
|
|
166
|
+
|
|
167
|
+
|
|
168
|
+
class Hybrid(BaseModel):
|
|
169
|
+
subtype: Optional[Subtype5] = None
|
|
170
|
+
functional: Optional[Functional5] = None
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
# generated by datamodel-codegen:
|
|
2
|
+
# filename: models_directory/legacy/ml.json
|
|
3
|
+
# version: 0.25.5
|
|
4
|
+
|
|
5
|
+
from __future__ import annotations
|
|
6
|
+
|
|
7
|
+
from enum import Enum
|
|
8
|
+
from typing import Any, Dict, Optional
|
|
9
|
+
|
|
10
|
+
from pydantic import BaseModel, ConfigDict, Field
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class Type(Enum):
|
|
14
|
+
ml = "ml"
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class Subtype(Enum):
|
|
18
|
+
re = "re"
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
class BaseMethod(BaseModel):
|
|
22
|
+
type: str
|
|
23
|
+
"""
|
|
24
|
+
general type of this method, eg. `pseudopotential`
|
|
25
|
+
"""
|
|
26
|
+
subtype: str
|
|
27
|
+
"""
|
|
28
|
+
general subtype of this method, eg. `ultra-soft`
|
|
29
|
+
"""
|
|
30
|
+
precision: Optional[Dict[str, Any]] = None
|
|
31
|
+
"""
|
|
32
|
+
Object showing the actual possible precision based on theory and implementation
|
|
33
|
+
"""
|
|
34
|
+
data: Optional[Dict[str, Any]] = None
|
|
35
|
+
"""
|
|
36
|
+
additional data specific to method, eg. array of pseudopotentials
|
|
37
|
+
"""
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
class LegacyModelRegression(BaseModel):
|
|
41
|
+
model_config = ConfigDict(
|
|
42
|
+
extra="allow",
|
|
43
|
+
)
|
|
44
|
+
type: Type
|
|
45
|
+
"""
|
|
46
|
+
general type of the model, eg. `dft`
|
|
47
|
+
"""
|
|
48
|
+
subtype: Subtype
|
|
49
|
+
"""
|
|
50
|
+
general subtype of the model, eg. `lda`
|
|
51
|
+
"""
|
|
52
|
+
method: BaseMethod = Field(..., title="base method")
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
# generated by datamodel-codegen:
|
|
2
|
+
# filename: models_directory/legacy/unknown.json
|
|
3
|
+
# version: 0.25.5
|
|
4
|
+
|
|
5
|
+
from __future__ import annotations
|
|
6
|
+
|
|
7
|
+
from enum import Enum
|
|
8
|
+
from typing import Any, Dict, Optional
|
|
9
|
+
|
|
10
|
+
from pydantic import BaseModel, ConfigDict, Field
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class Type(Enum):
|
|
14
|
+
unknown = "unknown"
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class Subtype(Enum):
|
|
18
|
+
unknown = "unknown"
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
class BaseMethod(BaseModel):
|
|
22
|
+
type: str
|
|
23
|
+
"""
|
|
24
|
+
general type of this method, eg. `pseudopotential`
|
|
25
|
+
"""
|
|
26
|
+
subtype: str
|
|
27
|
+
"""
|
|
28
|
+
general subtype of this method, eg. `ultra-soft`
|
|
29
|
+
"""
|
|
30
|
+
precision: Optional[Dict[str, Any]] = None
|
|
31
|
+
"""
|
|
32
|
+
Object showing the actual possible precision based on theory and implementation
|
|
33
|
+
"""
|
|
34
|
+
data: Optional[Dict[str, Any]] = None
|
|
35
|
+
"""
|
|
36
|
+
additional data specific to method, eg. array of pseudopotentials
|
|
37
|
+
"""
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
class LegacyModelUnknown(BaseModel):
|
|
41
|
+
model_config = ConfigDict(
|
|
42
|
+
extra="allow",
|
|
43
|
+
)
|
|
44
|
+
type: Type
|
|
45
|
+
"""
|
|
46
|
+
general type of the model, eg. `dft`
|
|
47
|
+
"""
|
|
48
|
+
subtype: Subtype
|
|
49
|
+
"""
|
|
50
|
+
general subtype of the model, eg. `lda`
|
|
51
|
+
"""
|
|
52
|
+
method: BaseMethod = Field(..., title="base method")
|