mat3ra-esse 2024.4.8.post1__py3-none-any.whl → 2024.4.8.post3__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.
- 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.post3.dist-info}/METADATA +3 -1
- mat3ra_esse-2024.4.8.post3.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.post3.dist-info}/LICENSE.md +0 -0
- {mat3ra_esse-2024.4.8.post1.dist-info → mat3ra_esse-2024.4.8.post3.dist-info}/WHEEL +0 -0
- {mat3ra_esse-2024.4.8.post1.dist-info → mat3ra_esse-2024.4.8.post3.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,254 @@
|
|
|
1
|
+
# generated by datamodel-codegen:
|
|
2
|
+
# filename: workflow/unit/io.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 Type(Enum):
|
|
14
|
+
io = "io"
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class Subtype(Enum):
|
|
18
|
+
input = "input"
|
|
19
|
+
output = "output"
|
|
20
|
+
dataFrame = "dataFrame"
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
class Source(Enum):
|
|
24
|
+
api = "api"
|
|
25
|
+
db = "db"
|
|
26
|
+
object_storage = "object_storage"
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
class DataIORestAPIInputSchema(BaseModel):
|
|
30
|
+
model_config = ConfigDict(
|
|
31
|
+
extra="allow",
|
|
32
|
+
)
|
|
33
|
+
endpoint: str
|
|
34
|
+
"""
|
|
35
|
+
rest API endpoint
|
|
36
|
+
"""
|
|
37
|
+
endpoint_options: Dict[str, Any]
|
|
38
|
+
"""
|
|
39
|
+
rest API endpoint options
|
|
40
|
+
"""
|
|
41
|
+
name: Optional[str] = None
|
|
42
|
+
"""
|
|
43
|
+
the name of the variable in local scope to save the data under
|
|
44
|
+
"""
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
class DataIODatabaseInputOutputSchema(BaseModel):
|
|
48
|
+
model_config = ConfigDict(
|
|
49
|
+
extra="allow",
|
|
50
|
+
)
|
|
51
|
+
ids: List[str]
|
|
52
|
+
"""
|
|
53
|
+
IDs of item to retrieve from db
|
|
54
|
+
"""
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
class DataIODatabaseInputOutputSchema3(BaseModel):
|
|
58
|
+
model_config = ConfigDict(
|
|
59
|
+
extra="allow",
|
|
60
|
+
)
|
|
61
|
+
collection: str
|
|
62
|
+
"""
|
|
63
|
+
db collection name
|
|
64
|
+
"""
|
|
65
|
+
draft: bool
|
|
66
|
+
"""
|
|
67
|
+
whether the result should be saved as draft
|
|
68
|
+
"""
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
class ObjectStorageContainerData(BaseModel):
|
|
72
|
+
CONTAINER: Optional[str] = None
|
|
73
|
+
"""
|
|
74
|
+
Object storage container for the file
|
|
75
|
+
"""
|
|
76
|
+
NAME: Optional[str] = None
|
|
77
|
+
"""
|
|
78
|
+
Name of the file inside the object storage bucket
|
|
79
|
+
"""
|
|
80
|
+
PROVIDER: Optional[str] = None
|
|
81
|
+
"""
|
|
82
|
+
Object storage provider
|
|
83
|
+
"""
|
|
84
|
+
REGION: Optional[str] = None
|
|
85
|
+
"""
|
|
86
|
+
Region for the object container specified in Container
|
|
87
|
+
"""
|
|
88
|
+
SIZE: Optional[int] = None
|
|
89
|
+
"""
|
|
90
|
+
Size of the file in bytes
|
|
91
|
+
"""
|
|
92
|
+
TIMESTAMP: Optional[str] = None
|
|
93
|
+
"""
|
|
94
|
+
Unix timestamp showing when the file was last modified
|
|
95
|
+
"""
|
|
96
|
+
|
|
97
|
+
|
|
98
|
+
class ObjectStorageIoSchema(BaseModel):
|
|
99
|
+
model_config = ConfigDict(
|
|
100
|
+
extra="allow",
|
|
101
|
+
)
|
|
102
|
+
objectData: ObjectStorageContainerData = Field(..., title="Object Storage Container Data")
|
|
103
|
+
overwrite: Optional[bool] = False
|
|
104
|
+
"""
|
|
105
|
+
if a file with the same filename already exists, whether to overwrite the old file
|
|
106
|
+
"""
|
|
107
|
+
pathname: Optional[str] = None
|
|
108
|
+
"""
|
|
109
|
+
Relative path to the directory that contains the file.
|
|
110
|
+
"""
|
|
111
|
+
basename: Optional[str] = None
|
|
112
|
+
"""
|
|
113
|
+
Basename of the file
|
|
114
|
+
"""
|
|
115
|
+
filetype: Optional[str] = None
|
|
116
|
+
"""
|
|
117
|
+
What kind of file this is, e.g. image / text
|
|
118
|
+
"""
|
|
119
|
+
|
|
120
|
+
|
|
121
|
+
class Status(Enum):
|
|
122
|
+
idle = "idle"
|
|
123
|
+
active = "active"
|
|
124
|
+
warning = "warning"
|
|
125
|
+
error = "error"
|
|
126
|
+
finished = "finished"
|
|
127
|
+
|
|
128
|
+
|
|
129
|
+
class Name(Enum):
|
|
130
|
+
default = "default"
|
|
131
|
+
atomsTooClose = "atomsTooClose"
|
|
132
|
+
atomsOverlap = "atomsOverlap"
|
|
133
|
+
|
|
134
|
+
|
|
135
|
+
class Severity(Enum):
|
|
136
|
+
info = "info"
|
|
137
|
+
warning = "warning"
|
|
138
|
+
error = "error"
|
|
139
|
+
|
|
140
|
+
|
|
141
|
+
class ConsistencyCheck(BaseModel):
|
|
142
|
+
key: str
|
|
143
|
+
"""
|
|
144
|
+
Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'
|
|
145
|
+
"""
|
|
146
|
+
name: Name
|
|
147
|
+
"""
|
|
148
|
+
Name of the consistency check that is performed, which is listed in an enum.
|
|
149
|
+
"""
|
|
150
|
+
severity: Severity
|
|
151
|
+
"""
|
|
152
|
+
Severity level of the problem, which is used in UI to differentiate.
|
|
153
|
+
"""
|
|
154
|
+
message: str
|
|
155
|
+
"""
|
|
156
|
+
Message generated by the consistency check describing the problem.
|
|
157
|
+
"""
|
|
158
|
+
|
|
159
|
+
|
|
160
|
+
class NameResultSchema(BaseModel):
|
|
161
|
+
name: str
|
|
162
|
+
"""
|
|
163
|
+
The name of this item. e.g. scf_accuracy
|
|
164
|
+
"""
|
|
165
|
+
|
|
166
|
+
|
|
167
|
+
class StatusTrackItem(BaseModel):
|
|
168
|
+
trackedAt: float
|
|
169
|
+
status: str
|
|
170
|
+
repetition: Optional[float] = None
|
|
171
|
+
|
|
172
|
+
|
|
173
|
+
class DataIOUnitSchema(BaseModel):
|
|
174
|
+
model_config = ConfigDict(
|
|
175
|
+
extra="allow",
|
|
176
|
+
)
|
|
177
|
+
type: Type
|
|
178
|
+
"""
|
|
179
|
+
type of the unit
|
|
180
|
+
"""
|
|
181
|
+
subtype: Subtype
|
|
182
|
+
source: Source
|
|
183
|
+
input: List[
|
|
184
|
+
Union[
|
|
185
|
+
DataIORestAPIInputSchema,
|
|
186
|
+
Union[DataIODatabaseInputOutputSchema, DataIODatabaseInputOutputSchema3],
|
|
187
|
+
ObjectStorageIoSchema,
|
|
188
|
+
]
|
|
189
|
+
]
|
|
190
|
+
field_id: Optional[str] = Field(None, alias="_id")
|
|
191
|
+
"""
|
|
192
|
+
entity identity
|
|
193
|
+
"""
|
|
194
|
+
isDraft: Optional[bool] = None
|
|
195
|
+
name: Optional[str] = None
|
|
196
|
+
"""
|
|
197
|
+
name of the unit. e.g. pw_scf
|
|
198
|
+
"""
|
|
199
|
+
status: Optional[Status] = None
|
|
200
|
+
"""
|
|
201
|
+
Status of the unit.
|
|
202
|
+
"""
|
|
203
|
+
head: Optional[bool] = None
|
|
204
|
+
"""
|
|
205
|
+
Whether this unit is the first one to be executed.
|
|
206
|
+
"""
|
|
207
|
+
flowchartId: str
|
|
208
|
+
"""
|
|
209
|
+
Identity of the unit in the workflow. Used to trace the execution flow of the workflow.
|
|
210
|
+
"""
|
|
211
|
+
next: Optional[str] = None
|
|
212
|
+
"""
|
|
213
|
+
Next unit's flowchartId. If empty, the current unit is the last.
|
|
214
|
+
"""
|
|
215
|
+
enableRender: Optional[bool] = None
|
|
216
|
+
"""
|
|
217
|
+
Whether Rupy should attempt to use Jinja templating to add context variables into the unit
|
|
218
|
+
"""
|
|
219
|
+
context: Optional[Dict[str, Any]] = None
|
|
220
|
+
slug: Optional[str] = None
|
|
221
|
+
"""
|
|
222
|
+
entity slug
|
|
223
|
+
"""
|
|
224
|
+
systemName: Optional[str] = None
|
|
225
|
+
consistencyChecks: Optional[List[ConsistencyCheck]] = None
|
|
226
|
+
schemaVersion: Optional[str] = "2022.8.16"
|
|
227
|
+
"""
|
|
228
|
+
entity's schema version. Used to distinct between different schemas.
|
|
229
|
+
"""
|
|
230
|
+
isDefault: Optional[bool] = False
|
|
231
|
+
"""
|
|
232
|
+
Identifies that entity is defaultable
|
|
233
|
+
"""
|
|
234
|
+
preProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
235
|
+
"""
|
|
236
|
+
names of the pre-processors for this calculation
|
|
237
|
+
"""
|
|
238
|
+
postProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
239
|
+
"""
|
|
240
|
+
names of the post-processors for this calculation
|
|
241
|
+
"""
|
|
242
|
+
monitors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
243
|
+
"""
|
|
244
|
+
names of the monitors for this calculation
|
|
245
|
+
"""
|
|
246
|
+
results: Optional[List[Union[NameResultSchema, str]]] = None
|
|
247
|
+
"""
|
|
248
|
+
names of the results for this calculation
|
|
249
|
+
"""
|
|
250
|
+
tags: Optional[List[str]] = None
|
|
251
|
+
"""
|
|
252
|
+
entity tags
|
|
253
|
+
"""
|
|
254
|
+
statusTrack: Optional[List[StatusTrackItem]] = None
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# generated by datamodel-codegen:
|
|
2
|
+
# filename: workflow/unit/io/api.json
|
|
3
|
+
# version: 0.25.5
|
|
4
|
+
|
|
5
|
+
from __future__ import annotations
|
|
6
|
+
|
|
7
|
+
from typing import Any, Dict, Optional
|
|
8
|
+
|
|
9
|
+
from pydantic import BaseModel, ConfigDict
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class DataIORestAPIInputSchema(BaseModel):
|
|
13
|
+
model_config = ConfigDict(
|
|
14
|
+
extra="allow",
|
|
15
|
+
)
|
|
16
|
+
endpoint: str
|
|
17
|
+
"""
|
|
18
|
+
rest API endpoint
|
|
19
|
+
"""
|
|
20
|
+
endpoint_options: Dict[str, Any]
|
|
21
|
+
"""
|
|
22
|
+
rest API endpoint options
|
|
23
|
+
"""
|
|
24
|
+
name: Optional[str] = None
|
|
25
|
+
"""
|
|
26
|
+
the name of the variable in local scope to save the data under
|
|
27
|
+
"""
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# generated by datamodel-codegen:
|
|
2
|
+
# filename: workflow/unit/io/db.json
|
|
3
|
+
# version: 0.25.5
|
|
4
|
+
|
|
5
|
+
from __future__ import annotations
|
|
6
|
+
|
|
7
|
+
from typing import List, Union
|
|
8
|
+
|
|
9
|
+
from pydantic import BaseModel, ConfigDict, Field, RootModel
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class DataIODatabaseInputOutputSchema(BaseModel):
|
|
13
|
+
model_config = ConfigDict(
|
|
14
|
+
extra="allow",
|
|
15
|
+
)
|
|
16
|
+
ids: List[str]
|
|
17
|
+
"""
|
|
18
|
+
IDs of item to retrieve from db
|
|
19
|
+
"""
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
class DataIODatabaseInputOutputSchema1(BaseModel):
|
|
23
|
+
model_config = ConfigDict(
|
|
24
|
+
extra="allow",
|
|
25
|
+
)
|
|
26
|
+
collection: str
|
|
27
|
+
"""
|
|
28
|
+
db collection name
|
|
29
|
+
"""
|
|
30
|
+
draft: bool
|
|
31
|
+
"""
|
|
32
|
+
whether the result should be saved as draft
|
|
33
|
+
"""
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
class ESSE(RootModel[Union[DataIODatabaseInputOutputSchema, DataIODatabaseInputOutputSchema1]]):
|
|
37
|
+
root: Union[DataIODatabaseInputOutputSchema, DataIODatabaseInputOutputSchema1] = Field(
|
|
38
|
+
..., title="data IO database input/output schema"
|
|
39
|
+
)
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
# generated by datamodel-codegen:
|
|
2
|
+
# filename: workflow/unit/io/object_storage.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, Field
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class ObjectStorageContainerData(BaseModel):
|
|
13
|
+
CONTAINER: Optional[str] = None
|
|
14
|
+
"""
|
|
15
|
+
Object storage container for the file
|
|
16
|
+
"""
|
|
17
|
+
NAME: Optional[str] = None
|
|
18
|
+
"""
|
|
19
|
+
Name of the file inside the object storage bucket
|
|
20
|
+
"""
|
|
21
|
+
PROVIDER: Optional[str] = None
|
|
22
|
+
"""
|
|
23
|
+
Object storage provider
|
|
24
|
+
"""
|
|
25
|
+
REGION: Optional[str] = None
|
|
26
|
+
"""
|
|
27
|
+
Region for the object container specified in Container
|
|
28
|
+
"""
|
|
29
|
+
SIZE: Optional[int] = None
|
|
30
|
+
"""
|
|
31
|
+
Size of the file in bytes
|
|
32
|
+
"""
|
|
33
|
+
TIMESTAMP: Optional[str] = None
|
|
34
|
+
"""
|
|
35
|
+
Unix timestamp showing when the file was last modified
|
|
36
|
+
"""
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
class ObjectStorageIoSchema(BaseModel):
|
|
40
|
+
model_config = ConfigDict(
|
|
41
|
+
extra="allow",
|
|
42
|
+
)
|
|
43
|
+
objectData: ObjectStorageContainerData = Field(..., title="Object Storage Container Data")
|
|
44
|
+
overwrite: Optional[bool] = False
|
|
45
|
+
"""
|
|
46
|
+
if a file with the same filename already exists, whether to overwrite the old file
|
|
47
|
+
"""
|
|
48
|
+
pathname: Optional[str] = None
|
|
49
|
+
"""
|
|
50
|
+
Relative path to the directory that contains the file.
|
|
51
|
+
"""
|
|
52
|
+
basename: Optional[str] = None
|
|
53
|
+
"""
|
|
54
|
+
Basename of the file
|
|
55
|
+
"""
|
|
56
|
+
filetype: Optional[str] = None
|
|
57
|
+
"""
|
|
58
|
+
What kind of file this is, e.g. image / text
|
|
59
|
+
"""
|
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
# generated by datamodel-codegen:
|
|
2
|
+
# filename: workflow/unit/map.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 Type(Enum):
|
|
14
|
+
map = "map"
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class Input(BaseModel):
|
|
18
|
+
target: str
|
|
19
|
+
"""
|
|
20
|
+
Name of the target variable to substitute using the values below. e.g. K_POINTS
|
|
21
|
+
"""
|
|
22
|
+
scope: Optional[str] = None
|
|
23
|
+
"""
|
|
24
|
+
Scope to retrieve `values` from, global or flowchartId. Optional if `values` is given.
|
|
25
|
+
"""
|
|
26
|
+
name: Optional[str] = None
|
|
27
|
+
"""
|
|
28
|
+
Name of the variable inside the scope to retrieve `values` from. Optional if `values` is given.
|
|
29
|
+
"""
|
|
30
|
+
values: Optional[List[Union[str, float, Dict[str, Any]]]] = None
|
|
31
|
+
"""
|
|
32
|
+
Sequence of values for the target Jinja variable. Optional if `scope` and `name` are given. This can be used for map-reduce type parallel execution
|
|
33
|
+
"""
|
|
34
|
+
useValues: Optional[bool] = None
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
class Status(Enum):
|
|
38
|
+
idle = "idle"
|
|
39
|
+
active = "active"
|
|
40
|
+
warning = "warning"
|
|
41
|
+
error = "error"
|
|
42
|
+
finished = "finished"
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
class Name(Enum):
|
|
46
|
+
default = "default"
|
|
47
|
+
atomsTooClose = "atomsTooClose"
|
|
48
|
+
atomsOverlap = "atomsOverlap"
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
class Severity(Enum):
|
|
52
|
+
info = "info"
|
|
53
|
+
warning = "warning"
|
|
54
|
+
error = "error"
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
class ConsistencyCheck(BaseModel):
|
|
58
|
+
key: str
|
|
59
|
+
"""
|
|
60
|
+
Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'
|
|
61
|
+
"""
|
|
62
|
+
name: Name
|
|
63
|
+
"""
|
|
64
|
+
Name of the consistency check that is performed, which is listed in an enum.
|
|
65
|
+
"""
|
|
66
|
+
severity: Severity
|
|
67
|
+
"""
|
|
68
|
+
Severity level of the problem, which is used in UI to differentiate.
|
|
69
|
+
"""
|
|
70
|
+
message: str
|
|
71
|
+
"""
|
|
72
|
+
Message generated by the consistency check describing the problem.
|
|
73
|
+
"""
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
class NameResultSchema(BaseModel):
|
|
77
|
+
name: str
|
|
78
|
+
"""
|
|
79
|
+
The name of this item. e.g. scf_accuracy
|
|
80
|
+
"""
|
|
81
|
+
|
|
82
|
+
|
|
83
|
+
class StatusTrackItem(BaseModel):
|
|
84
|
+
trackedAt: float
|
|
85
|
+
status: str
|
|
86
|
+
repetition: Optional[float] = None
|
|
87
|
+
|
|
88
|
+
|
|
89
|
+
class MapUnitSchema(BaseModel):
|
|
90
|
+
model_config = ConfigDict(
|
|
91
|
+
extra="allow",
|
|
92
|
+
)
|
|
93
|
+
type: Type
|
|
94
|
+
"""
|
|
95
|
+
type of the unit
|
|
96
|
+
"""
|
|
97
|
+
workflowId: str
|
|
98
|
+
"""
|
|
99
|
+
Id of workflow to run inside map
|
|
100
|
+
"""
|
|
101
|
+
input: Input
|
|
102
|
+
"""
|
|
103
|
+
Input information for map.
|
|
104
|
+
"""
|
|
105
|
+
field_id: Optional[str] = Field(None, alias="_id")
|
|
106
|
+
"""
|
|
107
|
+
entity identity
|
|
108
|
+
"""
|
|
109
|
+
isDraft: Optional[bool] = None
|
|
110
|
+
name: Optional[str] = None
|
|
111
|
+
"""
|
|
112
|
+
name of the unit. e.g. pw_scf
|
|
113
|
+
"""
|
|
114
|
+
status: Optional[Status] = None
|
|
115
|
+
"""
|
|
116
|
+
Status of the unit.
|
|
117
|
+
"""
|
|
118
|
+
head: Optional[bool] = None
|
|
119
|
+
"""
|
|
120
|
+
Whether this unit is the first one to be executed.
|
|
121
|
+
"""
|
|
122
|
+
flowchartId: str
|
|
123
|
+
"""
|
|
124
|
+
Identity of the unit in the workflow. Used to trace the execution flow of the workflow.
|
|
125
|
+
"""
|
|
126
|
+
next: Optional[str] = None
|
|
127
|
+
"""
|
|
128
|
+
Next unit's flowchartId. If empty, the current unit is the last.
|
|
129
|
+
"""
|
|
130
|
+
enableRender: Optional[bool] = None
|
|
131
|
+
"""
|
|
132
|
+
Whether Rupy should attempt to use Jinja templating to add context variables into the unit
|
|
133
|
+
"""
|
|
134
|
+
context: Optional[Dict[str, Any]] = None
|
|
135
|
+
slug: Optional[str] = None
|
|
136
|
+
"""
|
|
137
|
+
entity slug
|
|
138
|
+
"""
|
|
139
|
+
systemName: Optional[str] = None
|
|
140
|
+
consistencyChecks: Optional[List[ConsistencyCheck]] = None
|
|
141
|
+
schemaVersion: Optional[str] = "2022.8.16"
|
|
142
|
+
"""
|
|
143
|
+
entity's schema version. Used to distinct between different schemas.
|
|
144
|
+
"""
|
|
145
|
+
isDefault: Optional[bool] = False
|
|
146
|
+
"""
|
|
147
|
+
Identifies that entity is defaultable
|
|
148
|
+
"""
|
|
149
|
+
preProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
150
|
+
"""
|
|
151
|
+
names of the pre-processors for this calculation
|
|
152
|
+
"""
|
|
153
|
+
postProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
154
|
+
"""
|
|
155
|
+
names of the post-processors for this calculation
|
|
156
|
+
"""
|
|
157
|
+
monitors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
158
|
+
"""
|
|
159
|
+
names of the monitors for this calculation
|
|
160
|
+
"""
|
|
161
|
+
results: Optional[List[Union[NameResultSchema, str]]] = None
|
|
162
|
+
"""
|
|
163
|
+
names of the results for this calculation
|
|
164
|
+
"""
|
|
165
|
+
tags: Optional[List[str]] = None
|
|
166
|
+
"""
|
|
167
|
+
entity tags
|
|
168
|
+
"""
|
|
169
|
+
statusTrack: Optional[List[StatusTrackItem]] = None
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
# generated by datamodel-codegen:
|
|
2
|
+
# filename: workflow/unit/processing.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 Type(Enum):
|
|
14
|
+
processing = "processing"
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class Status(Enum):
|
|
18
|
+
idle = "idle"
|
|
19
|
+
active = "active"
|
|
20
|
+
warning = "warning"
|
|
21
|
+
error = "error"
|
|
22
|
+
finished = "finished"
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
class Name(Enum):
|
|
26
|
+
default = "default"
|
|
27
|
+
atomsTooClose = "atomsTooClose"
|
|
28
|
+
atomsOverlap = "atomsOverlap"
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
class Severity(Enum):
|
|
32
|
+
info = "info"
|
|
33
|
+
warning = "warning"
|
|
34
|
+
error = "error"
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
class ConsistencyCheck(BaseModel):
|
|
38
|
+
key: str
|
|
39
|
+
"""
|
|
40
|
+
Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'
|
|
41
|
+
"""
|
|
42
|
+
name: Name
|
|
43
|
+
"""
|
|
44
|
+
Name of the consistency check that is performed, which is listed in an enum.
|
|
45
|
+
"""
|
|
46
|
+
severity: Severity
|
|
47
|
+
"""
|
|
48
|
+
Severity level of the problem, which is used in UI to differentiate.
|
|
49
|
+
"""
|
|
50
|
+
message: str
|
|
51
|
+
"""
|
|
52
|
+
Message generated by the consistency check describing the problem.
|
|
53
|
+
"""
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
class NameResultSchema(BaseModel):
|
|
57
|
+
name: str
|
|
58
|
+
"""
|
|
59
|
+
The name of this item. e.g. scf_accuracy
|
|
60
|
+
"""
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
class StatusTrackItem(BaseModel):
|
|
64
|
+
trackedAt: float
|
|
65
|
+
status: str
|
|
66
|
+
repetition: Optional[float] = None
|
|
67
|
+
|
|
68
|
+
|
|
69
|
+
class ProcessingUnitSchema(BaseModel):
|
|
70
|
+
model_config = ConfigDict(
|
|
71
|
+
extra="allow",
|
|
72
|
+
)
|
|
73
|
+
type: Type
|
|
74
|
+
"""
|
|
75
|
+
type of the unit
|
|
76
|
+
"""
|
|
77
|
+
operation: str
|
|
78
|
+
"""
|
|
79
|
+
Contains information about the operation used.
|
|
80
|
+
"""
|
|
81
|
+
operationType: str
|
|
82
|
+
"""
|
|
83
|
+
Contains information about the specific type of the operation used.
|
|
84
|
+
"""
|
|
85
|
+
inputData: Any
|
|
86
|
+
"""
|
|
87
|
+
unit input (type to be specified by the child units)
|
|
88
|
+
"""
|
|
89
|
+
field_id: Optional[str] = Field(None, alias="_id")
|
|
90
|
+
"""
|
|
91
|
+
entity identity
|
|
92
|
+
"""
|
|
93
|
+
isDraft: Optional[bool] = None
|
|
94
|
+
name: Optional[str] = None
|
|
95
|
+
"""
|
|
96
|
+
name of the unit. e.g. pw_scf
|
|
97
|
+
"""
|
|
98
|
+
status: Optional[Status] = None
|
|
99
|
+
"""
|
|
100
|
+
Status of the unit.
|
|
101
|
+
"""
|
|
102
|
+
head: Optional[bool] = None
|
|
103
|
+
"""
|
|
104
|
+
Whether this unit is the first one to be executed.
|
|
105
|
+
"""
|
|
106
|
+
flowchartId: str
|
|
107
|
+
"""
|
|
108
|
+
Identity of the unit in the workflow. Used to trace the execution flow of the workflow.
|
|
109
|
+
"""
|
|
110
|
+
next: Optional[str] = None
|
|
111
|
+
"""
|
|
112
|
+
Next unit's flowchartId. If empty, the current unit is the last.
|
|
113
|
+
"""
|
|
114
|
+
enableRender: Optional[bool] = None
|
|
115
|
+
"""
|
|
116
|
+
Whether Rupy should attempt to use Jinja templating to add context variables into the unit
|
|
117
|
+
"""
|
|
118
|
+
context: Optional[Dict[str, Any]] = None
|
|
119
|
+
slug: Optional[str] = None
|
|
120
|
+
"""
|
|
121
|
+
entity slug
|
|
122
|
+
"""
|
|
123
|
+
systemName: Optional[str] = None
|
|
124
|
+
consistencyChecks: Optional[List[ConsistencyCheck]] = None
|
|
125
|
+
schemaVersion: Optional[str] = "2022.8.16"
|
|
126
|
+
"""
|
|
127
|
+
entity's schema version. Used to distinct between different schemas.
|
|
128
|
+
"""
|
|
129
|
+
isDefault: Optional[bool] = False
|
|
130
|
+
"""
|
|
131
|
+
Identifies that entity is defaultable
|
|
132
|
+
"""
|
|
133
|
+
preProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
134
|
+
"""
|
|
135
|
+
names of the pre-processors for this calculation
|
|
136
|
+
"""
|
|
137
|
+
postProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
138
|
+
"""
|
|
139
|
+
names of the post-processors for this calculation
|
|
140
|
+
"""
|
|
141
|
+
monitors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
142
|
+
"""
|
|
143
|
+
names of the monitors for this calculation
|
|
144
|
+
"""
|
|
145
|
+
results: Optional[List[Union[NameResultSchema, str]]] = None
|
|
146
|
+
"""
|
|
147
|
+
names of the results for this calculation
|
|
148
|
+
"""
|
|
149
|
+
tags: Optional[List[str]] = None
|
|
150
|
+
"""
|
|
151
|
+
entity tags
|
|
152
|
+
"""
|
|
153
|
+
statusTrack: Optional[List[StatusTrackItem]] = None
|