Davout 0.1.1.dev156__tar.gz → 0.1.1.dev158__tar.gz
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.
- {davout-0.1.1.dev156/source/Davout.egg-info → davout-0.1.1.dev158}/PKG-INFO +1 -1
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/pyproject.toml +1 -1
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/aa_tests/tests_tool_box/test_SVD_based_NNs.py +7 -4
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/aa_tests/tests_tool_box/test_quotient_space_NNs.py +58 -3
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/custom_architectures/SVD_quotient_space.py +141 -44
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/tool_box/ANN_tools.py +18 -1
- {davout-0.1.1.dev156 → davout-0.1.1.dev158/source/Davout.egg-info}/PKG-INFO +1 -1
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/LICENSE +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/README.md +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/setup.cfg +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/setup.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/aa_tests/RVEs/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/aa_tests/RVEs/non_transfinite/RVE_artery.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/aa_tests/RVEs/non_transfinite/RVE_matrix_with_fiber.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/aa_tests/RVEs/non_transfinite/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/aa_tests/RVEs/non_transfinite/elastin_fiber_creator.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/aa_tests/RVEs/transfinite/RVE_artery_transfinite.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/aa_tests/RVEs/transfinite/RVE_matrix_with_fiber_transfinite.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/aa_tests/RVEs/transfinite/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/aa_tests/RVEs/transfinite/elastin_fiber_creator.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/aa_tests/RVEs/transfinite/spherical_RVE.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/aa_tests/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/aa_tests/artery/artery_macroscale.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/aa_tests/artery/artery_macroscale_ellipsoid.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/aa_tests/micropolar_meshes/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/aa_tests/micropolar_meshes/beam_micropolar_case_1.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/aa_tests/periodic_meshes/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/aa_tests/periodic_meshes/artery_parameters.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/aa_tests/periodic_meshes/fiber_matrix_parameters.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/aa_tests/periodic_meshes/periodic_structure.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/aa_tests/solids/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/aa_tests/solids/intervertebral_disc.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/aa_tests/solids/whole_ensemble_of_geometries.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/solids/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/solids/cuboid_cylinders.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/solids/cuboid_ellipsoids.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/solids/cuboid_generator.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/solids/cuboid_helicoids.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/solids/cuboid_prisms.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/tool_box/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/tool_box/geometric_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/tool_box/mesh_data_retriever.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/tool_box/meshing_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/tool_box/region_finder.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/tool_box/verification_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/PINNs/Physics/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/PINNs/Physics/elasticity_equation.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/PINNs/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/aa_tests/SVD_framework/box_with_imposed_displacement_gradient.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/aa_tests/SVD_framework/box_with_young_modulus_field.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/aa_tests/SVD_framework/dataset_generator.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/aa_tests/SVD_framework/input_data_filler.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/aa_tests/SVD_framework/kinematics_surrogate_model.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/aa_tests/SVD_framework/young_modulus_field_generator.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/aa_tests/heat_equation.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/aa_tests/mecsol_2026_quotient_space/box_with_imposed_displacement_gradient.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/aa_tests/mecsol_2026_quotient_space/box_with_young_modulus_field.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/aa_tests/mecsol_2026_quotient_space/dataset_generator.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/aa_tests/mecsol_2026_quotient_space/input_data_filler.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/aa_tests/mecsol_2026_quotient_space/neural_network_trainer.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/aa_tests/mecsol_2026_quotient_space/young_modulus_field_generator.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/aa_tests/tests_tool_box/test_ANN_optimization.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/aa_tests/tests_tool_box/test_ANN_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/aa_tests/tests_tool_box/test_SVD_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/aa_tests/tests_tool_box/test_convex_and_partially_convex_input_NNs.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/aa_tests/tests_tool_box/test_math_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/aa_tests/tests_tool_box/test_tensor_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/custom_architectures/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/custom_architectures/convexity_concerned_NNs.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/custom_architectures/gated_quotient_space.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/custom_architectures/generic_feed_forward.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/tool_box/SVD_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/tool_box/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/tool_box/activation_function_utilities.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/tool_box/custom_activation_functions.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/tool_box/differentiation_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/tool_box/loss_assembler_classes.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/tool_box/loss_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/tool_box/math_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/tool_box/numerical_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/tool_box/parameters_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/tool_box/tensor_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/tool_box/training_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/aa_tests/REPL_experiments.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/aa_tests/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/aa_tests/optimization/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/aa_tests/optimization/tests_optimization_methods.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/aa_tests/tests_batching.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/aa_tests/tests_finite_elements.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/aa_tests/tests_loss_function.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/aa_tests/tests_physics.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/aa_tests/unidimensional/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/aa_tests/unidimensional/bar_fea.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/aa_tests/unidimensional/hyperelastic_1D_energies.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/aa_tests/unidimensional/variational_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/assembly/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/assembly/body_forces_work.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/assembly/dirichlet_boundary_conditions_enforcer.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/assembly/hyperelastic_internal_work.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/assembly/surface_forces_work.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/constitutive_models/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/constitutive_models/hyperelastic_isotropic_models.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/finite_elements/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/finite_elements/elements_manager.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/finite_elements/finite_element_dispatcher.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/finite_elements/surface_elements/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/finite_elements/surface_elements/triangles.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/finite_elements/volume_elements/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/finite_elements/volume_elements/tetrahedrons.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/optimization/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/optimization/conditioning_matrices.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/optimization/loss_functions.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/optimization/neural_network_assembler.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/optimization/objective_function.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/physics/compressible_cauchy_hyperelasticy.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/tool_box/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/tool_box/constitutive_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/tool_box/dirichlet_loading_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/tool_box/math_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/tool_box/mesh_info_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/tool_box/mesh_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/tool_box/neumann_loading_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/tool_box/node_ordering.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/tool_box/optimization_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/tool_box/parametric_curves_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/tool_box/sensitivity_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/tool_box/tensorflow_utilities.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/GraphUtilities/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/GraphUtilities/aa_tests/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/GraphUtilities/aa_tests/cauchy_tetrahedron.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/GraphUtilities/aa_tests/continuum_mechanics_potato_collage.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/GraphUtilities/aa_tests/fake_book_spines.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/GraphUtilities/aa_tests/null_space_architecture.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/GraphUtilities/aa_tests/strain_tensors.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/GraphUtilities/aa_tests/tests_collage_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/GraphUtilities/aa_tests/tests_delaunay.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/GraphUtilities/aa_tests/tests_paraview_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/GraphUtilities/aa_tests/tests_plotting_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/GraphUtilities/collage_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/GraphUtilities/paraview_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/GraphUtilities/plotting_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/GraphUtilities/tool_box/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/GraphUtilities/tool_box/arrows_lines_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/GraphUtilities/tool_box/box_and_markers_classes.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/GraphUtilities/tool_box/box_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/GraphUtilities/tool_box/collage_classes.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/GraphUtilities/tool_box/curves_setter.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/GraphUtilities/tool_box/image_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/GraphUtilities/tool_box/interactivity_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/GraphUtilities/tool_box/paraview_scripts.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/GraphUtilities/tool_box/perspective_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/GraphUtilities/tool_box/text_excerpt_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/LaTeXUtilities/LaTeXUtilities.sty +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/LaTeXUtilities/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/LaTeXUtilities/aa_tests/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/LaTeXUtilities/aa_tests/latex_parser_tests.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/LaTeXUtilities/latex_parser.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/LaTeXUtilities/tool_box/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/LaTeXUtilities/tool_box/command_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/LaTeXUtilities/tool_box/parsing_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/LaTeXUtilities/tool_box/sty_file_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/heat_transfer/heat_box.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/hyperelasticity/beam_with_fibers.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/hyperelasticity/box_with_young_modulus_field.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/hyperelasticity/disc_HGO.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/hyperelasticity/disc_neo_hookean.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/hyperelasticity/disc_neo_hookean_incompressible.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/hyperelasticity/hyperelastic_box.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/hyperelasticity/incompressible_hyperelastic_box.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/hyperelasticity/intervertebral_disc/cylindrical_coordinates_material_property.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/hyperelasticity/intervertebral_disc/disc_HGO.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/hyperelasticity/intervertebral_disc/local_coordinate_system_generation.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/hyperelasticity/parallel_hyperelastic_box.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/hyperelasticity/parallel_incompressible_box.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/hyperelasticity/read_dofs_in_volume.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/hyperelasticity/young_modulus_field.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/micropolar/bending_case/beam_with_fibers_macroscale.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/micropolar/bending_case/beam_with_fibers_microscale.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/micropolar/deformation_laboratory/microscale_deformation_lab.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/micropolar/disc_micropolar_neo_hookean.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/micropolar/old_tests/Bauer_et_al/beam.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/micropolar/old_tests/Bauer_et_al/beam_neo_hookean.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/micropolar/old_tests/Bauer_et_al/beam_neo_hookean_pure_dolfin.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/micropolar/old_tests/Bauer_et_al/beam_neo_hookean_pure_dolfin_old.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/micropolar/old_tests/Suh_et_al/suh_implementation.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/micropolar/old_tests/micropolar_with_homogenization.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/micropolar/old_tests/micropolar_with_homogenization_original.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/micropolar/old_tests/tools_homogenization.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/micropolar/old_tests/tools_io.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/micropolar/stress_plots.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/micropolar/tangent_operators/numerical_differentiation.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/micropolar/tangent_operators/numerical_differentiation_second_elasticity_tensor.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/micropolar/tangent_operators/tangent_operator_plotter.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/micropolar/torsion_case/beam_with_fibers_macroscale.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/micropolar/torsion_case/beam_with_fibers_microscale.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/micropolar/traction_case/beam_with_fibers_macroscale.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/micropolar/traction_case/beam_with_fibers_microscale.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/minimal_working_examples_forum/curve_fitting.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/minimal_working_examples_forum/cylindrical_coordinates_field.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/minimal_working_examples_forum/cylindrical_coordinates_material_property.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/minimal_working_examples_forum/elasticity_tensor.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/minimal_working_examples_forum/incompressible.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/minimal_working_examples_forum/linear_expression_test.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/minimal_working_examples_forum/petsc_2D.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/minimal_working_examples_forum/test_periodic.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/minimal_working_examples_forum/test_periodic_class.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/minimal_working_examples_forum/test_shifted_field.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/minimal_working_examples_forum/teste_afim.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/minimal_working_examples_forum/working_example_dictionaries.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/multiscale/hyperelasticity/beam_with_fibers_microscale.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/physics_prototypes/compressible_hyperelasticity.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/physics_prototypes/incompressible_hyperelasticity.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/test_meshes/beam_gmsh.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/test_meshes_paths.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/aa_tests_and_examples/various_physics_tests.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/constitutive_models/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/constitutive_models/heat_transfer/isotropic_heat_conduction.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/constitutive_models/hyperelasticity/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/constitutive_models/hyperelasticity/anisotropic_hyperelasticity.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/constitutive_models/hyperelasticity/isotropic_hyperelasticity.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/constitutive_models/hyperelasticity/micropolar_hyperelasticity.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/multiscale/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/multiscale/multiscale_boundary_conditions/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/multiscale/multiscale_boundary_conditions/multiscale_classes.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/multiscale/multiscale_boundary_conditions/multiscale_expressions.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/multiscale/multiscale_hyperelasticity.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/multiscale/multiscale_micropolar.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/physics/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/physics/hyperelastic_cauchy_continuum.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/physics/hyperelastic_incompressible_cauchy_continuum.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/physics/hyperelastic_micropolar_continuum.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/physics/steady_state_heat_transfer.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/post_processes/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/post_processes/post_processes_classes.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/post_processes/post_processes_functions.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/tool_box/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/tool_box/binary_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/tool_box/body_forces_loading_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/tool_box/boundary_conditions_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/tool_box/constitutive_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/tool_box/dirichlet_load_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/tool_box/expressions_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/tool_box/functional_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/tool_box/homogenization_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/tool_box/mesh_handling_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/tool_box/multiscale_boundary_conditions_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/tool_box/numerical_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/tool_box/parallelization_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/tool_box/post_processing_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/tool_box/pseudotime_stepping_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/tool_box/read_write_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/tool_box/surface_loading_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/tool_box/tensor_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/tool_box/variational_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/MultiMech/tool_box/weak_boundary_conditions_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/PythonicUtilities/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/PythonicUtilities/aa_tests/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/PythonicUtilities/aa_tests/tests_template.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/PythonicUtilities/aa_tests/txt_tests.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/PythonicUtilities/coordinate_systems_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/PythonicUtilities/dictionary_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/PythonicUtilities/file_handling_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/PythonicUtilities/fonts/CMU_Serif_Roman.ttf +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/PythonicUtilities/function_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/PythonicUtilities/interpolation_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/PythonicUtilities/math_experiments.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/PythonicUtilities/numpy_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/PythonicUtilities/package_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/PythonicUtilities/path_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/PythonicUtilities/programming_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/PythonicUtilities/recursion_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/PythonicUtilities/string_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/PythonicUtilities/tensor_and_math_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/PythonicUtilities/testing_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/PythonicUtilities/user_interaction_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/StochasticUtilities/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/StochasticUtilities/aa_tests/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/StochasticUtilities/aa_tests/test_delaunay_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/StochasticUtilities/domain_decomposition/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/StochasticUtilities/tool_box/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/StochasticUtilities/tool_box/delaunay_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/StochasticUtilities/tool_box/sampling_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/StochasticUtilities/tool_box/statistics_tools.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/__init__.py +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout.egg-info/SOURCES.txt +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout.egg-info/dependency_links.txt +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout.egg-info/requires.txt +0 -0
- {davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout.egg-info/top_level.txt +0 -0
|
@@ -352,10 +352,12 @@ class TestSVDArchitecture:
|
|
|
352
352
|
n_evaluation_runs = 100
|
|
353
353
|
|
|
354
354
|
# Selects the method for building each Householder vector from
|
|
355
|
-
# the flat tensor of DOFs of each Householder chain
|
|
355
|
+
# the flat tensor of DOFs of each Householder chain. The default
|
|
356
|
+
# value is 'hardware-based suggestion' which chooses the imple-
|
|
357
|
+
# mentation based on the hardware: CPU or GPU. The default is
|
|
358
|
+
# CPU-oriented
|
|
356
359
|
|
|
357
|
-
householder_vector_builder_method =
|
|
358
|
-
"rom_parameters")
|
|
360
|
+
householder_vector_builder_method = "hardware-based suggestion"
|
|
359
361
|
|
|
360
362
|
# Sets sets of architectures
|
|
361
363
|
|
|
@@ -524,7 +526,8 @@ class TestSVDArchitecture:
|
|
|
524
526
|
modulating_function_performance, "Householder epsilon": 1.0,
|
|
525
527
|
"activations accessory layer list":
|
|
526
528
|
accessory_activation_list_performance, "householder vector"+
|
|
527
|
-
" builder method": householder_vector_builder_method
|
|
529
|
+
" builder method": householder_vector_builder_method,
|
|
530
|
+
"hardware device": "CPU"}
|
|
528
531
|
|
|
529
532
|
# Assembles the model
|
|
530
533
|
|
|
@@ -11,9 +11,11 @@ import os
|
|
|
11
11
|
|
|
12
12
|
import tensorflow as tf
|
|
13
13
|
|
|
14
|
-
from
|
|
14
|
+
from .....Davout.DeepMech.tool_box import ANN_tools
|
|
15
15
|
|
|
16
|
-
from
|
|
16
|
+
from .....Davout.DeepMech.tool_box import training_tools
|
|
17
|
+
|
|
18
|
+
from .....Davout.PythonicUtilities.path_tools import get_parent_path_of_file
|
|
17
19
|
|
|
18
20
|
# Defines a function to test the ANN tools methods
|
|
19
21
|
|
|
@@ -104,7 +106,60 @@ class TestANNTools(unittest.TestCase):
|
|
|
104
106
|
|
|
105
107
|
self.save_model_file = "saved_model.keras"
|
|
106
108
|
|
|
107
|
-
|
|
109
|
+
self.parameters_dtype = "float64"
|
|
110
|
+
|
|
111
|
+
# Defines a function to test saving and reloading the model
|
|
112
|
+
|
|
113
|
+
def test_saving_and_loading(self):
|
|
114
|
+
|
|
115
|
+
print("\n#####################################################"+
|
|
116
|
+
"###################\n# Tests saving and"+
|
|
117
|
+
" loading #\n###########################"+
|
|
118
|
+
"#############################################\n")
|
|
119
|
+
|
|
120
|
+
# Sets the path to save the model
|
|
121
|
+
|
|
122
|
+
model_path = os.path.join(get_parent_path_of_file(), "gated_mo"+
|
|
123
|
+
"del.keras")
|
|
124
|
+
|
|
125
|
+
print("\nSaves the model at: "+str(model_path)+"\n")
|
|
126
|
+
|
|
127
|
+
# Saves the model
|
|
128
|
+
|
|
129
|
+
# Tests now with custom layers
|
|
130
|
+
|
|
131
|
+
ANN_class = ANN_tools.MultiLayerModel(
|
|
132
|
+
self.input_dimension_gradient_tests,
|
|
133
|
+
self.activation_list_gradient_tests, enforce_customLayers=True,
|
|
134
|
+
verbose=True, parameters_dtype=self.parameters_dtype,
|
|
135
|
+
custom_architecture={"name": "GatedQuotientSpace",
|
|
136
|
+
"quotient space dimension": self.quotient_space_dimension})
|
|
137
|
+
|
|
138
|
+
custom_model = ANN_class()
|
|
139
|
+
|
|
140
|
+
custom_model.save(model_path)
|
|
141
|
+
|
|
142
|
+
# Loads it back
|
|
143
|
+
|
|
144
|
+
loaded_model = tf.keras.models.load_model(model_path)
|
|
145
|
+
|
|
146
|
+
# Gets the training data as a tensorflow array
|
|
147
|
+
|
|
148
|
+
self.training_input_constant = tf.constant(self.training_data,
|
|
149
|
+
dtype=tf.as_dtype(self.parameters_dtype))
|
|
150
|
+
|
|
151
|
+
# Tests the loaded model
|
|
152
|
+
|
|
153
|
+
output_original = custom_model(self.training_input_constant)
|
|
154
|
+
|
|
155
|
+
output_loaded = loaded_model(self.training_input_constant)
|
|
156
|
+
|
|
157
|
+
print("Output from saved model:\n"+str(output_original))
|
|
158
|
+
|
|
159
|
+
print("\nOutput from loaded model:\n"+str(output_loaded)+"\n\n"+
|
|
160
|
+
"The maximum absolute difference between components of the ori"+
|
|
161
|
+
"ginal and loaded models is: "+str(tf.reduce_max(tf.abs(
|
|
162
|
+
output_original-output_loaded)).numpy())+"\n")
|
|
108
163
|
|
|
109
164
|
def test_gated_nn(self):
|
|
110
165
|
|
|
@@ -38,15 +38,63 @@ class SVDQuotientSpace:
|
|
|
38
38
|
"thod": {"type": str, "description": "String with the name of "+
|
|
39
39
|
"the function that constructs each Householder vector from the"+
|
|
40
40
|
" flat tensor of DOFs of the Householder chain for each orthog"+
|
|
41
|
-
"onal matrix", "default": "
|
|
42
|
-
"
|
|
41
|
+
"onal matrix", "default": "hardware-based suggestion"}, "hardw"+
|
|
42
|
+
"are device": {"type": str, "description": "String with the na"+
|
|
43
|
+
"me of the device that runs the code. It can be either 'CPU' o"+
|
|
44
|
+
"r 'GPU'", "default": "CPU"}},
|
|
45
|
+
"custom_architecture", "SVDQuotientSpace")
|
|
43
46
|
|
|
44
|
-
#
|
|
45
|
-
# the flat tensor of parameters
|
|
47
|
+
# Checks whether the code is run in CPU or GPU
|
|
46
48
|
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
49
|
+
if architecture_info_dict["hardware device"]=="CPU":
|
|
50
|
+
|
|
51
|
+
# Uses the method that stores the Householder DOFs in a Ten-
|
|
52
|
+
# sorArray. This method was benchmarked to be the fastest
|
|
53
|
+
# option in CPU
|
|
54
|
+
|
|
55
|
+
self.multiply_input_vector_by_householder_chain = (
|
|
56
|
+
self.multiply_input_vector_by_householder_chain_tensor_array)
|
|
57
|
+
|
|
58
|
+
# Selects, thus, the method that extracts and assembles the
|
|
59
|
+
# Householder vector
|
|
60
|
+
|
|
61
|
+
self.method_for_householder_vector_from_parameters = (
|
|
62
|
+
self.get_householder_vector_from_parameters_tensor_array)
|
|
63
|
+
|
|
64
|
+
elif architecture_info_dict["hardware device"]=="GPU":
|
|
65
|
+
|
|
66
|
+
# Uses the method that stores the Householder DOFs in a flat
|
|
67
|
+
# tensor, then each Householder vector is sliced from the
|
|
68
|
+
# flat tensor. This method was benchmarked to be the fastest
|
|
69
|
+
# option in GPU
|
|
70
|
+
|
|
71
|
+
self.multiply_input_vector_by_householder_chain = (
|
|
72
|
+
self.multiply_input_vector_by_householder_chain_slice)
|
|
73
|
+
|
|
74
|
+
# Selects, thus, the method that extracts and assembles the
|
|
75
|
+
# Householder vector
|
|
76
|
+
|
|
77
|
+
self.method_for_householder_vector_from_parameters = (
|
|
78
|
+
self.get_householder_vector_from_parameters_slice)
|
|
79
|
+
|
|
80
|
+
else:
|
|
81
|
+
|
|
82
|
+
raise ValueError("The value for the key 'hardware device' "+
|
|
83
|
+
"in 'SVDQuotientSpace' is '"+str(architecture_info_dict["h"+
|
|
84
|
+
"ardware device"])+"'. But it must be 'CPU' or 'GPU'")
|
|
85
|
+
|
|
86
|
+
# Checks if a specific method to get the Householder vector was
|
|
87
|
+
# prescribed by the used
|
|
88
|
+
|
|
89
|
+
if architecture_info_dict["householder vector builder method"
|
|
90
|
+
]!="hardware-based suggestion":
|
|
91
|
+
|
|
92
|
+
# Selects the method for computing the Householder vectors
|
|
93
|
+
# from the flat tensor of parameters
|
|
94
|
+
|
|
95
|
+
self.method_for_householder_vector_from_parameters = getattr(
|
|
96
|
+
self, architecture_info_dict["householder vector builder m"+
|
|
97
|
+
"ethod"])
|
|
50
98
|
|
|
51
99
|
# Stores variables that will be used in the get_config for seri-
|
|
52
100
|
# alization and class rebuilding
|
|
@@ -1328,14 +1376,13 @@ class SVDQuotientSpace:
|
|
|
1328
1376
|
# m_rank-1))], where m_rank is the number of columns of the final
|
|
1329
1377
|
# orthogonal matrix, and n_rows is the number of rows. Receives the
|
|
1330
1378
|
# index of the Householder reflector in the Householder chain to
|
|
1331
|
-
# collect the corresponding Householder vector
|
|
1379
|
+
# collect the corresponding Householder vector. This function slices
|
|
1380
|
+
# the flat tensor of Householder parameters to recover the DOFs of
|
|
1381
|
+
# the current Householder vector
|
|
1332
1382
|
|
|
1333
|
-
def
|
|
1383
|
+
def get_householder_vector_from_parameters_slice(self,
|
|
1334
1384
|
householder_first_index, householder_length,
|
|
1335
|
-
householder_number_of_leading_zeros,
|
|
1336
|
-
#split_householder_DOFs,
|
|
1337
|
-
householder_parameters,
|
|
1338
|
-
#householder_dofs_tensor_array,
|
|
1385
|
+
householder_number_of_leading_zeros, householder_parameters,
|
|
1339
1386
|
householder_reflector_index, input_dimensionality):
|
|
1340
1387
|
|
|
1341
1388
|
# Gets the first and last indices of the Householder vector,
|
|
@@ -1349,16 +1396,52 @@ class SVDQuotientSpace:
|
|
|
1349
1396
|
number_of_leading_zeros = householder_number_of_leading_zeros[
|
|
1350
1397
|
householder_reflector_index]
|
|
1351
1398
|
|
|
1352
|
-
#
|
|
1399
|
+
# Slices the DOFs of this Householder vector from the flat ten-
|
|
1400
|
+
# sor of DOFs of the Householder chain
|
|
1401
|
+
|
|
1353
1402
|
raw_vector = tf.slice(householder_parameters, [initial_index], [
|
|
1354
|
-
length])
|
|
1403
|
+
length])
|
|
1404
|
+
|
|
1405
|
+
# Computes the average of the raw vector
|
|
1406
|
+
|
|
1407
|
+
average_raw_vector = tf.reduce_mean(raw_vector)
|
|
1408
|
+
|
|
1409
|
+
# Concatenates the non-free component of the Householder vector
|
|
1410
|
+
# to the first position
|
|
1411
|
+
|
|
1412
|
+
raw_vector = tf.math.l2_normalize(tf.concat([tf.sqrt(
|
|
1413
|
+
tf.math.square(average_raw_vector)+
|
|
1414
|
+
self.householder_epsilon_squared)[None], raw_vector], axis=0))
|
|
1415
|
+
|
|
1416
|
+
# Rescales the raw vector to have unit norm, then adds the trai-
|
|
1417
|
+
# ling zeros and returns it
|
|
1418
|
+
|
|
1419
|
+
return raw_vector, number_of_leading_zeros
|
|
1420
|
+
|
|
1421
|
+
# Defines a function to parse a single Householder vector from a
|
|
1422
|
+
# vector of all Householder vectors to construct an orthogonal ma-
|
|
1423
|
+
# trix. The incoming vector is a tensor [0.5*(m_rank*((2*n_rows)-
|
|
1424
|
+
# m_rank-1))], where m_rank is the number of columns of the final
|
|
1425
|
+
# orthogonal matrix, and n_rows is the number of rows. Receives the
|
|
1426
|
+
# index of the Householder reflector in the Householder chain to
|
|
1427
|
+
# collect the corresponding Householder vector. This function reco-
|
|
1428
|
+
# vers the DOFs of the Householder parameters from a TensorArray
|
|
1429
|
+
|
|
1430
|
+
def get_householder_vector_from_parameters_tensor_array(self,
|
|
1431
|
+
householder_first_index, householder_length,
|
|
1432
|
+
householder_number_of_leading_zeros, householder_dofs_tensor_array,
|
|
1433
|
+
householder_reflector_index, input_dimensionality):
|
|
1434
|
+
|
|
1435
|
+
# Gets the number of leading zeros of this Householder vector
|
|
1436
|
+
|
|
1437
|
+
number_of_leading_zeros = householder_number_of_leading_zeros[
|
|
1438
|
+
householder_reflector_index]
|
|
1355
1439
|
|
|
1356
|
-
#
|
|
1440
|
+
# Recovers the DOFs of this Householder vector from the Tensor-
|
|
1441
|
+
# Array
|
|
1357
1442
|
|
|
1358
|
-
# TensorArray
|
|
1359
|
-
"""
|
|
1360
1443
|
raw_vector = householder_dofs_tensor_array.read(
|
|
1361
|
-
householder_reflector_index)
|
|
1444
|
+
householder_reflector_index)
|
|
1362
1445
|
|
|
1363
1446
|
# Computes the average of the raw vector
|
|
1364
1447
|
|
|
@@ -1386,10 +1469,7 @@ class SVDQuotientSpace:
|
|
|
1386
1469
|
def multiply_input_vector_by_householder_reflector(self,
|
|
1387
1470
|
input_vector, householder_reflector_index, householder_first_index,
|
|
1388
1471
|
householder_length, householder_number_of_leading_zeros,
|
|
1389
|
-
|
|
1390
|
-
householder_parameters_orthogonal_matrix,
|
|
1391
|
-
#householder_dofs_tensor_array,
|
|
1392
|
-
input_dimensionality):
|
|
1472
|
+
tensor_with_householder_parameters, input_dimensionality):
|
|
1393
1473
|
|
|
1394
1474
|
# Gets the Householder vector from the Householder parameters of
|
|
1395
1475
|
# the B matrix. Keep in mind that the order of the Householder
|
|
@@ -1400,10 +1480,8 @@ class SVDQuotientSpace:
|
|
|
1400
1480
|
) = self.method_for_householder_vector_from_parameters(
|
|
1401
1481
|
householder_first_index, householder_length,
|
|
1402
1482
|
householder_number_of_leading_zeros,
|
|
1403
|
-
|
|
1404
|
-
|
|
1405
|
-
#householder_dofs_tensor_array,
|
|
1406
|
-
householder_reflector_index, input_dimensionality)
|
|
1483
|
+
tensor_with_householder_parameters, householder_reflector_index,
|
|
1484
|
+
input_dimensionality)
|
|
1407
1485
|
|
|
1408
1486
|
# Multiplies the input vector by the Householder reflector (the
|
|
1409
1487
|
# operation is already broken down into the rank-1 calculation).
|
|
@@ -1419,27 +1497,49 @@ class SVDQuotientSpace:
|
|
|
1419
1497
|
# Defines a function to create a wrapper for the method that multi-
|
|
1420
1498
|
# plies the input vector by an orthogonal matrix and, then, calls
|
|
1421
1499
|
# foldl to evaluate the chain of Householder reflectors operating on
|
|
1422
|
-
# the input vector
|
|
1500
|
+
# the input vector. This function passes the flat tensor of Househol-
|
|
1501
|
+
# der parameters and it is sliced to create the Householder vector
|
|
1423
1502
|
|
|
1424
|
-
def
|
|
1425
|
-
householder_reflector_indices, householder_first_index,
|
|
1503
|
+
def multiply_input_vector_by_householder_chain_slice(self,
|
|
1504
|
+
input_vector, householder_reflector_indices, householder_first_index,
|
|
1426
1505
|
householder_length, householder_number_of_leading_zeros,
|
|
1427
1506
|
householder_parameters_orthogonal_matrix, input_dimensionality):
|
|
1428
1507
|
|
|
1429
|
-
#
|
|
1430
|
-
#
|
|
1508
|
+
# Defines the step function that will perform each update of the
|
|
1509
|
+
# input tensor by means of the Householder reflector
|
|
1431
1510
|
|
|
1432
|
-
|
|
1433
|
-
#householder_parameters_orthogonal_matrix, householder_length)
|
|
1511
|
+
def update_step(accumulator_vector, householder_reflector_index):
|
|
1434
1512
|
|
|
1435
|
-
|
|
1436
|
-
|
|
1437
|
-
|
|
1438
|
-
|
|
1513
|
+
return self.multiply_input_vector_by_householder_reflector(
|
|
1514
|
+
accumulator_vector, householder_reflector_index,
|
|
1515
|
+
householder_first_index, householder_length,
|
|
1516
|
+
householder_number_of_leading_zeros,
|
|
1517
|
+
householder_parameters_orthogonal_matrix,
|
|
1518
|
+
input_dimensionality)
|
|
1519
|
+
|
|
1520
|
+
# Uses foldl to perform the chain multiplication
|
|
1521
|
+
|
|
1522
|
+
return tf.foldl(update_step, householder_reflector_indices,
|
|
1523
|
+
initializer=input_vector)
|
|
1524
|
+
|
|
1525
|
+
# Defines a function to create a wrapper for the method that multi-
|
|
1526
|
+
# plies the input vector by an orthogonal matrix and, then, calls
|
|
1527
|
+
# foldl to evaluate the chain of Householder reflectors operating on
|
|
1528
|
+
# the input vector. This function splits the flat tensor of Househol-
|
|
1529
|
+
# der parameters first and passes a TensorArray object to create the
|
|
1530
|
+
# Householder vector
|
|
1531
|
+
|
|
1532
|
+
def multiply_input_vector_by_householder_chain_tensor_array(
|
|
1533
|
+
self, input_vector, householder_reflector_indices,
|
|
1534
|
+
householder_first_index, householder_length,
|
|
1535
|
+
householder_number_of_leading_zeros,
|
|
1536
|
+
householder_parameters_orthogonal_matrix, input_dimensionality):
|
|
1537
|
+
|
|
1538
|
+
# Splits the Householder DOFs of each Householder vector from
|
|
1539
|
+
# the flat tensor of DOFs of the chain
|
|
1439
1540
|
|
|
1440
|
-
"""
|
|
1441
1541
|
householder_dofs_tensor_array = self.split_flat_tensor_into_householder_dofs(
|
|
1442
|
-
householder_parameters_orthogonal_matrix, householder_length)
|
|
1542
|
+
householder_parameters_orthogonal_matrix, householder_length)
|
|
1443
1543
|
|
|
1444
1544
|
# Defines the step function that will perform each update of the
|
|
1445
1545
|
# input tensor by means of the Householder reflector
|
|
@@ -1450,10 +1550,7 @@ class SVDQuotientSpace:
|
|
|
1450
1550
|
accumulator_vector, householder_reflector_index,
|
|
1451
1551
|
householder_first_index, householder_length,
|
|
1452
1552
|
householder_number_of_leading_zeros,
|
|
1453
|
-
|
|
1454
|
-
householder_parameters_orthogonal_matrix,
|
|
1455
|
-
#householder_dofs_tensor_array,
|
|
1456
|
-
input_dimensionality)
|
|
1553
|
+
householder_dofs_tensor_array, input_dimensionality)
|
|
1457
1554
|
|
|
1458
1555
|
# Uses foldl to perform the chain multiplication
|
|
1459
1556
|
|
|
@@ -4,6 +4,8 @@ import tensorflow as tf
|
|
|
4
4
|
|
|
5
5
|
import numpy as np
|
|
6
6
|
|
|
7
|
+
import inspect
|
|
8
|
+
|
|
7
9
|
from ...DeepMech import custom_architectures
|
|
8
10
|
|
|
9
11
|
from ..tool_box import differentiation_tools as diff_tools
|
|
@@ -679,8 +681,23 @@ class MixedActivationLayer(tf.keras.layers.Layer):
|
|
|
679
681
|
|
|
680
682
|
code_info_dictionary = config.pop("code_given_info_class")
|
|
681
683
|
|
|
684
|
+
# Gets all the necessary arguments of CodeGivenLayerInfo
|
|
685
|
+
|
|
686
|
+
arguments_of_layer_info = inspect.signature(CodeGivenLayerInfo
|
|
687
|
+
).parameters.keys()
|
|
688
|
+
|
|
689
|
+
# Completes the dictionary of code-given information to allow
|
|
690
|
+
# for the inclusion of keys that were not incorporated in older
|
|
691
|
+
# models. Notice that, for missing keys, the default value will
|
|
692
|
+
# be None
|
|
693
|
+
|
|
694
|
+
complete_dictionary = {argument_name: code_info_dictionary.get(
|
|
695
|
+
argument_name, None) for argument_name in arguments_of_layer_info}
|
|
696
|
+
|
|
697
|
+
# Instantiates the class of code-given information
|
|
698
|
+
|
|
682
699
|
config["code_given_info_class"] = CodeGivenLayerInfo(
|
|
683
|
-
**
|
|
700
|
+
**complete_dictionary)
|
|
684
701
|
|
|
685
702
|
return cls(**config)
|
|
686
703
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/aa_tests/RVEs/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/aa_tests/solids/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/solids/cuboid_cylinders.py
RENAMED
|
File without changes
|
{davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/solids/cuboid_ellipsoids.py
RENAMED
|
File without changes
|
{davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/solids/cuboid_generator.py
RENAMED
|
File without changes
|
{davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/solids/cuboid_helicoids.py
RENAMED
|
File without changes
|
{davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/solids/cuboid_prisms.py
RENAMED
|
File without changes
|
|
File without changes
|
{davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/tool_box/geometric_tools.py
RENAMED
|
File without changes
|
{davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/tool_box/mesh_data_retriever.py
RENAMED
|
File without changes
|
{davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/tool_box/meshing_tools.py
RENAMED
|
File without changes
|
{davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/tool_box/region_finder.py
RENAMED
|
File without changes
|
{davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/CuboidGmsh/tool_box/verification_tools.py
RENAMED
|
File without changes
|
{davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/PINNs/Physics/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/aa_tests/heat_equation.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/custom_architectures/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/tool_box/differentiation_tools.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/tool_box/numerical_tools.py
RENAMED
|
File without changes
|
{davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/tool_box/parameters_tools.py
RENAMED
|
File without changes
|
|
File without changes
|
{davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/DeepMech/tool_box/training_tools.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{davout-0.1.1.dev156 → davout-0.1.1.dev158}/source/Davout/FENN/aa_tests/optimization/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|