CodeEntropy 2.6.1__tar.gz → 2.7.0__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.
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/__init__.py +1 -1
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/levels/axes.py +11 -72
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/levels/nodes/covariance.py +1 -8
- {codeentropy-2.6.1 → codeentropy-2.7.0}/PKG-INFO +1 -1
- codeentropy-2.6.1/.github/CONTRIBUTING.md +0 -65
- codeentropy-2.6.1/.github/ISSUE_TEMPLATE/bug_report.md +0 -70
- codeentropy-2.6.1/.github/ISSUE_TEMPLATE/config.yml +0 -22
- codeentropy-2.6.1/.github/ISSUE_TEMPLATE/documentation.md +0 -19
- codeentropy-2.6.1/.github/ISSUE_TEMPLATE/feature_request.md +0 -28
- codeentropy-2.6.1/.github/ISSUE_TEMPLATE/general_report.md +0 -13
- codeentropy-2.6.1/.github/PULL_REQUEST_TEMPLATE.md +0 -20
- codeentropy-2.6.1/.github/renovate.json +0 -33
- codeentropy-2.6.1/.github/workflows/coveralls-main.yaml +0 -54
- codeentropy-2.6.1/.github/workflows/daily.yaml +0 -39
- codeentropy-2.6.1/.github/workflows/dependency-floors.yaml +0 -50
- codeentropy-2.6.1/.github/workflows/pr.yaml +0 -222
- codeentropy-2.6.1/.github/workflows/release.yaml +0 -237
- codeentropy-2.6.1/.github/workflows/update-copyright-years-in-license-file.yaml +0 -17
- codeentropy-2.6.1/.github/workflows/update_regression_baselines.yaml +0 -43
- codeentropy-2.6.1/.github/workflows/weekly-docs.yaml +0 -48
- codeentropy-2.6.1/.github/workflows/weekly-regression.yaml +0 -80
- codeentropy-2.6.1/.gitignore +0 -132
- codeentropy-2.6.1/.pre-commit-config.yaml +0 -37
- codeentropy-2.6.1/CITATION.cff +0 -80
- codeentropy-2.6.1/CODE_OF_CONDUCT.md +0 -128
- codeentropy-2.6.1/conda-recipe/meta.yaml +0 -57
- codeentropy-2.6.1/docs/Makefile +0 -20
- codeentropy-2.6.1/docs/README.md +0 -23
- codeentropy-2.6.1/docs/_static/README.md +0 -16
- codeentropy-2.6.1/docs/_static/custom.css +0 -3
- codeentropy-2.6.1/docs/_static/logos/biosim-codeentropy_logo_dark.png +0 -0
- codeentropy-2.6.1/docs/_static/logos/biosim-codeentropy_logo_light.png +0 -0
- codeentropy-2.6.1/docs/_templates/README.md +0 -14
- codeentropy-2.6.1/docs/api/CodeEntropy.cli.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.config.argparse.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.config.rst +0 -19
- codeentropy-2.6.1/docs/api/CodeEntropy.config.runtime.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.core.dask_clusters.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.core.logging.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.core.rst +0 -19
- codeentropy-2.6.1/docs/api/CodeEntropy.entropy.configurational.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.entropy.graph.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.entropy.nodes.aggregate.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.entropy.nodes.configurational.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.entropy.nodes.orientational.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.entropy.nodes.rst +0 -21
- codeentropy-2.6.1/docs/api/CodeEntropy.entropy.nodes.vibrational.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.entropy.orientational.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.entropy.rst +0 -31
- codeentropy-2.6.1/docs/api/CodeEntropy.entropy.vibrational.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.entropy.water.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.entropy.workflow.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.levels.axes.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.levels.dihedrals.angle_observations.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.levels.dihedrals.conformational_state_builder.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.levels.dihedrals.kernels.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.levels.dihedrals.peak_detection.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.levels.dihedrals.rst +0 -23
- codeentropy-2.6.1/docs/api/CodeEntropy.levels.dihedrals.state_assignment.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.levels.dihedrals.topology.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.levels.execution.chunks.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.levels.execution.policy.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.levels.execution.reducers.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.levels.execution.rst +0 -22
- codeentropy-2.6.1/docs/api/CodeEntropy.levels.execution.scheduler.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.levels.execution.tasks.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.levels.forces.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.levels.graph.conformation_dag.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.levels.graph.frame_dag.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.levels.graph.level_dag.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.levels.graph.rst +0 -20
- codeentropy-2.6.1/docs/api/CodeEntropy.levels.hierarchy.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.levels.linalg.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.levels.neighbors.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.levels.nodes.accumulators.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.levels.nodes.axes_topology.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.levels.nodes.beads.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.levels.nodes.covariance.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.levels.nodes.detect_levels.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.levels.nodes.detect_molecules.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.levels.nodes.rst +0 -23
- codeentropy-2.6.1/docs/api/CodeEntropy.levels.rst +0 -34
- codeentropy-2.6.1/docs/api/CodeEntropy.levels.search.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.molecules.grouping.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.molecules.rst +0 -18
- codeentropy-2.6.1/docs/api/CodeEntropy.results.reporter.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.results.rst +0 -18
- codeentropy-2.6.1/docs/api/CodeEntropy.rst +0 -32
- codeentropy-2.6.1/docs/api/CodeEntropy.trajectory.frames.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.trajectory.mda.rst +0 -7
- codeentropy-2.6.1/docs/api/CodeEntropy.trajectory.rst +0 -20
- codeentropy-2.6.1/docs/api/CodeEntropy.trajectory.source.rst +0 -7
- codeentropy-2.6.1/docs/api/modules.rst +0 -7
- codeentropy-2.6.1/docs/conf.py +0 -119
- codeentropy-2.6.1/docs/config.yaml +0 -19
- codeentropy-2.6.1/docs/developer_guide.rst +0 -251
- codeentropy-2.6.1/docs/faq.rst +0 -18
- codeentropy-2.6.1/docs/getting_started.rst +0 -610
- codeentropy-2.6.1/docs/index.rst +0 -28
- codeentropy-2.6.1/docs/science.rst +0 -132
- codeentropy-2.6.1/readthedocs.yml +0 -19
- codeentropy-2.6.1/tests/__init__.py +0 -1
- codeentropy-2.6.1/tests/regression/baselines/benzaldehyde/axes_off.json +0 -16
- codeentropy-2.6.1/tests/regression/baselines/benzaldehyde/combined_forcetorque_false.json +0 -16
- codeentropy-2.6.1/tests/regression/baselines/benzaldehyde/default.json +0 -16
- codeentropy-2.6.1/tests/regression/baselines/benzaldehyde/frame_window.json +0 -16
- codeentropy-2.6.1/tests/regression/baselines/benzaldehyde/grouping_each.json +0 -124
- codeentropy-2.6.1/tests/regression/baselines/benzaldehyde/rad.json +0 -16
- codeentropy-2.6.1/tests/regression/baselines/benzaldehyde/selection_subset.json +0 -16
- codeentropy-2.6.1/tests/regression/baselines/benzene/axes_off.json +0 -16
- codeentropy-2.6.1/tests/regression/baselines/benzene/combined_forcetorque_off.json +0 -16
- codeentropy-2.6.1/tests/regression/baselines/benzene/default.json +0 -16
- codeentropy-2.6.1/tests/regression/baselines/benzene/frame_window.json +0 -16
- codeentropy-2.6.1/tests/regression/baselines/benzene/grouping_each.json +0 -124
- codeentropy-2.6.1/tests/regression/baselines/benzene/rad.json +0 -16
- codeentropy-2.6.1/tests/regression/baselines/benzene/selection_subset.json +0 -16
- codeentropy-2.6.1/tests/regression/baselines/cyclohexane/axes_off.json +0 -16
- codeentropy-2.6.1/tests/regression/baselines/cyclohexane/combined_forcetorque_off.json +0 -16
- codeentropy-2.6.1/tests/regression/baselines/cyclohexane/default.json +0 -16
- codeentropy-2.6.1/tests/regression/baselines/cyclohexane/frame_window.json +0 -16
- codeentropy-2.6.1/tests/regression/baselines/cyclohexane/grouping_each.json +0 -124
- codeentropy-2.6.1/tests/regression/baselines/cyclohexane/rad.json +0 -16
- codeentropy-2.6.1/tests/regression/baselines/cyclohexane/selection_subset.json +0 -16
- codeentropy-2.6.1/tests/regression/baselines/dna/axes_off.json +0 -32
- codeentropy-2.6.1/tests/regression/baselines/dna/combined_forcetorque_off.json +0 -32
- codeentropy-2.6.1/tests/regression/baselines/dna/default.json +0 -32
- codeentropy-2.6.1/tests/regression/baselines/dna/frame_window.json +0 -32
- codeentropy-2.6.1/tests/regression/baselines/dna/grouping_each.json +0 -32
- codeentropy-2.6.1/tests/regression/baselines/dna/selection_subset.json +0 -32
- codeentropy-2.6.1/tests/regression/baselines/ethyl-acetate/axes_off.json +0 -16
- codeentropy-2.6.1/tests/regression/baselines/ethyl-acetate/combined_forcetorque_off.json +0 -16
- codeentropy-2.6.1/tests/regression/baselines/ethyl-acetate/default.json +0 -16
- codeentropy-2.6.1/tests/regression/baselines/ethyl-acetate/frame_window.json +0 -16
- codeentropy-2.6.1/tests/regression/baselines/ethyl-acetate/grouping_each.json +0 -124
- codeentropy-2.6.1/tests/regression/baselines/ethyl-acetate/rad.json +0 -16
- codeentropy-2.6.1/tests/regression/baselines/ethyl-acetate/selection_subset.json +0 -16
- codeentropy-2.6.1/tests/regression/baselines/methane/axes_off.json +0 -13
- codeentropy-2.6.1/tests/regression/baselines/methane/combined_forcetorque_off.json +0 -13
- codeentropy-2.6.1/tests/regression/baselines/methane/default.json +0 -13
- codeentropy-2.6.1/tests/regression/baselines/methane/frame_window.json +0 -13
- codeentropy-2.6.1/tests/regression/baselines/methane/grouping_each.json +0 -94
- codeentropy-2.6.1/tests/regression/baselines/methane/rad.json +0 -13
- codeentropy-2.6.1/tests/regression/baselines/methane/selection_subset.json +0 -13
- codeentropy-2.6.1/tests/regression/baselines/methanol/axes_off.json +0 -16
- codeentropy-2.6.1/tests/regression/baselines/methanol/combined_forcetorque_off.json +0 -16
- codeentropy-2.6.1/tests/regression/baselines/methanol/default.json +0 -16
- codeentropy-2.6.1/tests/regression/baselines/methanol/frame_window.json +0 -16
- codeentropy-2.6.1/tests/regression/baselines/methanol/grouping_each.json +0 -124
- codeentropy-2.6.1/tests/regression/baselines/methanol/rad.json +0 -16
- codeentropy-2.6.1/tests/regression/baselines/methanol/selection_subset.json +0 -16
- codeentropy-2.6.1/tests/regression/baselines/octonol/axes_off.json +0 -16
- codeentropy-2.6.1/tests/regression/baselines/octonol/combined_forcetorque_off.json +0 -16
- codeentropy-2.6.1/tests/regression/baselines/octonol/default.json +0 -16
- codeentropy-2.6.1/tests/regression/baselines/octonol/frame_window.json +0 -16
- codeentropy-2.6.1/tests/regression/baselines/octonol/grouping_each.json +0 -124
- codeentropy-2.6.1/tests/regression/baselines/octonol/rad.json +0 -16
- codeentropy-2.6.1/tests/regression/baselines/octonol/selection_subset.json +0 -16
- codeentropy-2.6.1/tests/regression/baselines/water/axes_off.json +0 -13
- codeentropy-2.6.1/tests/regression/baselines/water/combined_forcetorque_off.json +0 -13
- codeentropy-2.6.1/tests/regression/baselines/water/default.json +0 -13
- codeentropy-2.6.1/tests/regression/baselines/water/frame_window.json +0 -13
- codeentropy-2.6.1/tests/regression/baselines/water/grouping_each.json +0 -94
- codeentropy-2.6.1/tests/regression/baselines/water/rad.json +0 -13
- codeentropy-2.6.1/tests/regression/baselines/water/selection_subset.json +0 -13
- codeentropy-2.6.1/tests/regression/baselines/water/water_off.json +0 -13
- codeentropy-2.6.1/tests/regression/cases.py +0 -103
- codeentropy-2.6.1/tests/regression/configs/benzaldehyde/axes_off.yaml +0 -15
- codeentropy-2.6.1/tests/regression/configs/benzaldehyde/combined_forcetorque_false.yaml +0 -15
- codeentropy-2.6.1/tests/regression/configs/benzaldehyde/default.yaml +0 -14
- codeentropy-2.6.1/tests/regression/configs/benzaldehyde/frame_window.yaml +0 -14
- codeentropy-2.6.1/tests/regression/configs/benzaldehyde/grouping_each.yaml +0 -15
- codeentropy-2.6.1/tests/regression/configs/benzaldehyde/rad.yaml +0 -14
- codeentropy-2.6.1/tests/regression/configs/benzaldehyde/selection_subset.yaml +0 -14
- codeentropy-2.6.1/tests/regression/configs/benzene/axes_off.yaml +0 -15
- codeentropy-2.6.1/tests/regression/configs/benzene/combined_forcetorque_off.yaml +0 -15
- codeentropy-2.6.1/tests/regression/configs/benzene/default.yaml +0 -14
- codeentropy-2.6.1/tests/regression/configs/benzene/frame_window.yaml +0 -14
- codeentropy-2.6.1/tests/regression/configs/benzene/grouping_each.yaml +0 -15
- codeentropy-2.6.1/tests/regression/configs/benzene/rad.yaml +0 -14
- codeentropy-2.6.1/tests/regression/configs/benzene/selection_subset.yaml +0 -14
- codeentropy-2.6.1/tests/regression/configs/cyclohexane/axes_off.yaml +0 -15
- codeentropy-2.6.1/tests/regression/configs/cyclohexane/combined_forcetorque_off.yaml +0 -15
- codeentropy-2.6.1/tests/regression/configs/cyclohexane/default.yaml +0 -14
- codeentropy-2.6.1/tests/regression/configs/cyclohexane/frame_window.yaml +0 -14
- codeentropy-2.6.1/tests/regression/configs/cyclohexane/grouping_each.yaml +0 -15
- codeentropy-2.6.1/tests/regression/configs/cyclohexane/rad.yaml +0 -14
- codeentropy-2.6.1/tests/regression/configs/cyclohexane/selection_subset.yaml +0 -14
- codeentropy-2.6.1/tests/regression/configs/dna/axes_off.yaml +0 -11
- codeentropy-2.6.1/tests/regression/configs/dna/combined_forcetorque_off.yaml +0 -11
- codeentropy-2.6.1/tests/regression/configs/dna/default.yaml +0 -10
- codeentropy-2.6.1/tests/regression/configs/dna/frame_window.yaml +0 -10
- codeentropy-2.6.1/tests/regression/configs/dna/grouping_each.yaml +0 -11
- codeentropy-2.6.1/tests/regression/configs/dna/selection_subset.yaml +0 -10
- codeentropy-2.6.1/tests/regression/configs/ethyl-acetate/axes_off.yaml +0 -15
- codeentropy-2.6.1/tests/regression/configs/ethyl-acetate/combined_forcetorque_off.yaml +0 -15
- codeentropy-2.6.1/tests/regression/configs/ethyl-acetate/default.yaml +0 -14
- codeentropy-2.6.1/tests/regression/configs/ethyl-acetate/frame_window.yaml +0 -14
- codeentropy-2.6.1/tests/regression/configs/ethyl-acetate/grouping_each.yaml +0 -15
- codeentropy-2.6.1/tests/regression/configs/ethyl-acetate/rad.yaml +0 -14
- codeentropy-2.6.1/tests/regression/configs/ethyl-acetate/selection_subset.yaml +0 -14
- codeentropy-2.6.1/tests/regression/configs/methane/axes_off.yaml +0 -16
- codeentropy-2.6.1/tests/regression/configs/methane/combined_forcetorque_off.yaml +0 -16
- codeentropy-2.6.1/tests/regression/configs/methane/default.yaml +0 -15
- codeentropy-2.6.1/tests/regression/configs/methane/frame_window.yaml +0 -15
- codeentropy-2.6.1/tests/regression/configs/methane/grouping_each.yaml +0 -16
- codeentropy-2.6.1/tests/regression/configs/methane/rad.yaml +0 -15
- codeentropy-2.6.1/tests/regression/configs/methane/selection_subset.yaml +0 -15
- codeentropy-2.6.1/tests/regression/configs/methanol/axes_off.yaml +0 -15
- codeentropy-2.6.1/tests/regression/configs/methanol/combined_forcetorque_off.yaml +0 -15
- codeentropy-2.6.1/tests/regression/configs/methanol/default.yaml +0 -14
- codeentropy-2.6.1/tests/regression/configs/methanol/frame_window.yaml +0 -14
- codeentropy-2.6.1/tests/regression/configs/methanol/grouping_each.yaml +0 -15
- codeentropy-2.6.1/tests/regression/configs/methanol/rad.yaml +0 -14
- codeentropy-2.6.1/tests/regression/configs/methanol/selection_subset.yaml +0 -14
- codeentropy-2.6.1/tests/regression/configs/octonol/axes_off.yaml +0 -15
- codeentropy-2.6.1/tests/regression/configs/octonol/combined_forcetorque_off.yaml +0 -15
- codeentropy-2.6.1/tests/regression/configs/octonol/default.yaml +0 -14
- codeentropy-2.6.1/tests/regression/configs/octonol/frame_window.yaml +0 -14
- codeentropy-2.6.1/tests/regression/configs/octonol/grouping_each.yaml +0 -15
- codeentropy-2.6.1/tests/regression/configs/octonol/rad.yaml +0 -14
- codeentropy-2.6.1/tests/regression/configs/octonol/selection_subset.yaml +0 -14
- codeentropy-2.6.1/tests/regression/configs/water/axes_off.yaml +0 -15
- codeentropy-2.6.1/tests/regression/configs/water/combined_forcetorque_off.yaml +0 -15
- codeentropy-2.6.1/tests/regression/configs/water/default.yaml +0 -14
- codeentropy-2.6.1/tests/regression/configs/water/frame_window.yaml +0 -14
- codeentropy-2.6.1/tests/regression/configs/water/grouping_each.yaml +0 -15
- codeentropy-2.6.1/tests/regression/configs/water/rad.yaml +0 -14
- codeentropy-2.6.1/tests/regression/configs/water/selection_subset.yaml +0 -14
- codeentropy-2.6.1/tests/regression/configs/water/water_off.yaml +0 -15
- codeentropy-2.6.1/tests/regression/conftest.py +0 -80
- codeentropy-2.6.1/tests/regression/helpers.py +0 -420
- codeentropy-2.6.1/tests/regression/list_systems.py +0 -12
- codeentropy-2.6.1/tests/regression/test_regression.py +0 -182
- codeentropy-2.6.1/tests/unit/CodeEntropy/cli/test___main__.py +0 -13
- codeentropy-2.6.1/tests/unit/CodeEntropy/cli/test_cli.py +0 -52
- codeentropy-2.6.1/tests/unit/CodeEntropy/config/argparse/conftest.py +0 -76
- codeentropy-2.6.1/tests/unit/CodeEntropy/config/argparse/test_argparse_build_parser.py +0 -52
- codeentropy-2.6.1/tests/unit/CodeEntropy/config/argparse/test_argparse_load_config.py +0 -50
- codeentropy-2.6.1/tests/unit/CodeEntropy/config/argparse/test_argparse_resolve.py +0 -122
- codeentropy-2.6.1/tests/unit/CodeEntropy/config/argparse/test_argparse_str2bool.py +0 -30
- codeentropy-2.6.1/tests/unit/CodeEntropy/config/argparse/test_argparse_validate_inputs.py +0 -275
- codeentropy-2.6.1/tests/unit/CodeEntropy/config/runtime/conftest.py +0 -10
- codeentropy-2.6.1/tests/unit/CodeEntropy/config/runtime/test_build_universe_branches.py +0 -33
- codeentropy-2.6.1/tests/unit/CodeEntropy/config/runtime/test_citation_data.py +0 -23
- codeentropy-2.6.1/tests/unit/CodeEntropy/config/runtime/test_create_job_folder.py +0 -51
- codeentropy-2.6.1/tests/unit/CodeEntropy/config/runtime/test_print_args_table.py +0 -22
- codeentropy-2.6.1/tests/unit/CodeEntropy/config/runtime/test_required_args.py +0 -28
- codeentropy-2.6.1/tests/unit/CodeEntropy/config/runtime/test_run_entropy_workflow_branches.py +0 -200
- codeentropy-2.6.1/tests/unit/CodeEntropy/config/runtime/test_runtime_properties.py +0 -7
- codeentropy-2.6.1/tests/unit/CodeEntropy/config/runtime/test_show_splash.py +0 -51
- codeentropy-2.6.1/tests/unit/CodeEntropy/config/runtime/test_unit_conversions.py +0 -6
- codeentropy-2.6.1/tests/unit/CodeEntropy/config/runtime/test_universe_io.py +0 -28
- codeentropy-2.6.1/tests/unit/CodeEntropy/core/dask_clusters/test_dask_clusters.py +0 -734
- codeentropy-2.6.1/tests/unit/CodeEntropy/core/logging/conftest.py +0 -23
- codeentropy-2.6.1/tests/unit/CodeEntropy/core/logging/test_configure_loggers.py +0 -26
- codeentropy-2.6.1/tests/unit/CodeEntropy/core/logging/test_error_filter.py +0 -23
- codeentropy-2.6.1/tests/unit/CodeEntropy/core/logging/test_export_console.py +0 -17
- codeentropy-2.6.1/tests/unit/CodeEntropy/core/logging/test_get_console_singleton.py +0 -19
- codeentropy-2.6.1/tests/unit/CodeEntropy/core/logging/test_handlers_setup.py +0 -41
- codeentropy-2.6.1/tests/unit/CodeEntropy/core/logging/test_set_level.py +0 -27
- codeentropy-2.6.1/tests/unit/CodeEntropy/entropy/conftest.py +0 -76
- codeentropy-2.6.1/tests/unit/CodeEntropy/entropy/nodes/test_aggregate_node.py +0 -22
- codeentropy-2.6.1/tests/unit/CodeEntropy/entropy/nodes/test_configurational_node.py +0 -72
- codeentropy-2.6.1/tests/unit/CodeEntropy/entropy/nodes/test_orientational_node.py +0 -39
- codeentropy-2.6.1/tests/unit/CodeEntropy/entropy/nodes/test_vibrational_node.py +0 -391
- codeentropy-2.6.1/tests/unit/CodeEntropy/entropy/test_configurational_edges.py +0 -12
- codeentropy-2.6.1/tests/unit/CodeEntropy/entropy/test_configurational_entropy_math.py +0 -25
- codeentropy-2.6.1/tests/unit/CodeEntropy/entropy/test_graph.py +0 -81
- codeentropy-2.6.1/tests/unit/CodeEntropy/entropy/test_orientational_entropy.py +0 -34
- codeentropy-2.6.1/tests/unit/CodeEntropy/entropy/test_vibrational_entropy_math.py +0 -174
- codeentropy-2.6.1/tests/unit/CodeEntropy/entropy/test_water_entropy.py +0 -188
- codeentropy-2.6.1/tests/unit/CodeEntropy/entropy/test_workflow.py +0 -870
- codeentropy-2.6.1/tests/unit/CodeEntropy/levels/conftest.py +0 -58
- codeentropy-2.6.1/tests/unit/CodeEntropy/levels/dihedrals/test_angle_observations.py +0 -180
- codeentropy-2.6.1/tests/unit/CodeEntropy/levels/dihedrals/test_conformational_state_builder.py +0 -247
- codeentropy-2.6.1/tests/unit/CodeEntropy/levels/dihedrals/test_kernels.py +0 -106
- codeentropy-2.6.1/tests/unit/CodeEntropy/levels/dihedrals/test_peak_detection.py +0 -259
- codeentropy-2.6.1/tests/unit/CodeEntropy/levels/dihedrals/test_state_assignment.py +0 -201
- codeentropy-2.6.1/tests/unit/CodeEntropy/levels/dihedrals/test_topology.py +0 -472
- codeentropy-2.6.1/tests/unit/CodeEntropy/levels/execution/test_chunks.py +0 -28
- codeentropy-2.6.1/tests/unit/CodeEntropy/levels/execution/test_policy.py +0 -94
- codeentropy-2.6.1/tests/unit/CodeEntropy/levels/execution/test_reducers.py +0 -327
- codeentropy-2.6.1/tests/unit/CodeEntropy/levels/execution/test_scheduler.py +0 -399
- codeentropy-2.6.1/tests/unit/CodeEntropy/levels/execution/test_tasks.py +0 -470
- codeentropy-2.6.1/tests/unit/CodeEntropy/levels/nodes/test_axes_topology.py +0 -415
- codeentropy-2.6.1/tests/unit/CodeEntropy/levels/nodes/test_beads_node.py +0 -238
- codeentropy-2.6.1/tests/unit/CodeEntropy/levels/nodes/test_covariance_node.py +0 -828
- codeentropy-2.6.1/tests/unit/CodeEntropy/levels/nodes/test_detect_levels_node.py +0 -46
- codeentropy-2.6.1/tests/unit/CodeEntropy/levels/nodes/test_detect_molecules_node.py +0 -97
- codeentropy-2.6.1/tests/unit/CodeEntropy/levels/nodes/test_init_covariance_accumulators_node.py +0 -58
- codeentropy-2.6.1/tests/unit/CodeEntropy/levels/test_axes.py +0 -2240
- codeentropy-2.6.1/tests/unit/CodeEntropy/levels/test_conformation_dag.py +0 -134
- codeentropy-2.6.1/tests/unit/CodeEntropy/levels/test_forces_force_torque_calculator.py +0 -267
- codeentropy-2.6.1/tests/unit/CodeEntropy/levels/test_frame_graph.py +0 -87
- codeentropy-2.6.1/tests/unit/CodeEntropy/levels/test_hierarchy_builder.py +0 -108
- codeentropy-2.6.1/tests/unit/CodeEntropy/levels/test_level_dag.py +0 -263
- codeentropy-2.6.1/tests/unit/CodeEntropy/levels/test_linalg_matrix_utils.py +0 -57
- codeentropy-2.6.1/tests/unit/CodeEntropy/levels/test_mda_universe_operations.py +0 -462
- codeentropy-2.6.1/tests/unit/CodeEntropy/levels/test_neighbors.py +0 -560
- codeentropy-2.6.1/tests/unit/CodeEntropy/levels/test_search.py +0 -406
- codeentropy-2.6.1/tests/unit/CodeEntropy/molecules/test_grouping.py +0 -127
- codeentropy-2.6.1/tests/unit/CodeEntropy/results/test_reporter.py +0 -548
- codeentropy-2.6.1/tests/unit/CodeEntropy/trajectory/test_frames.py +0 -147
- codeentropy-2.6.1/tests/unit/CodeEntropy/trajectory/test_source.py +0 -80
- codeentropy-2.6.1/tests/unit/conftest.py +0 -15
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/__main__.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/cli.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/config/__init__.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/config/argparse.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/config/runtime.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/core/__init__.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/core/dask_clusters.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/core/logging.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/entropy/__init__.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/entropy/configurational.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/entropy/graph.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/entropy/nodes/__init__.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/entropy/nodes/aggregate.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/entropy/nodes/configurational.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/entropy/nodes/orientational.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/entropy/nodes/vibrational.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/entropy/orientational.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/entropy/vibrational.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/entropy/water.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/entropy/workflow.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/levels/__init__.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/levels/dihedrals/__init__.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/levels/dihedrals/angle_observations.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/levels/dihedrals/conformational_state_builder.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/levels/dihedrals/kernels.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/levels/dihedrals/peak_detection.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/levels/dihedrals/state_assignment.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/levels/dihedrals/topology.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/levels/execution/__init__.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/levels/execution/chunks.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/levels/execution/policy.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/levels/execution/reducers.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/levels/execution/scheduler.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/levels/execution/tasks.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/levels/forces.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/levels/graph/__init__.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/levels/graph/conformation_dag.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/levels/graph/frame_dag.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/levels/graph/level_dag.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/levels/hierarchy.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/levels/linalg.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/levels/neighbors.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/levels/nodes/__init__.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/levels/nodes/accumulators.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/levels/nodes/axes_topology.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/levels/nodes/beads.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/levels/nodes/detect_levels.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/levels/nodes/detect_molecules.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/levels/search.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/molecules/__init__.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/molecules/grouping.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/results/__init__.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/results/reporter.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/trajectory/__init__.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/trajectory/frames.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/trajectory/mda.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/CodeEntropy/trajectory/source.py +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/LICENSE +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/README.md +0 -0
- {codeentropy-2.6.1 → codeentropy-2.7.0}/pyproject.toml +0 -0
|
@@ -82,15 +82,14 @@ class AxesCalculator:
|
|
|
82
82
|
* Translational axes are principal axes of data_container.
|
|
83
83
|
* Find edge heavy atom (i.e. heavy atoms bonded to neighbour residue).
|
|
84
84
|
Compute rotation centre and axes as in get_terminal_axes.
|
|
85
|
-
Compute custom MOI, using
|
|
86
|
-
heavy atom + hydrogen masses.
|
|
85
|
+
Compute custom MOI, using all atoms positions and masses.
|
|
87
86
|
|
|
88
87
|
- If bonded to at least two other residues:
|
|
89
88
|
* Translational axes are principal axes of data_container.
|
|
90
89
|
* Find edge heavy atoms (i.e. heavy atoms bonded to neighbour residues).
|
|
91
90
|
Compute rotation centre and axes as in get_non_terminal_axes.
|
|
92
|
-
Compute
|
|
93
|
-
|
|
91
|
+
Compute custom MOI, using all atoms positions and masses.
|
|
92
|
+
|
|
94
93
|
|
|
95
94
|
Args:
|
|
96
95
|
data_container (MDAnalysis.Universe or AtomGroup):
|
|
@@ -134,19 +133,8 @@ class AxesCalculator:
|
|
|
134
133
|
f"resindex {index_next})"
|
|
135
134
|
)
|
|
136
135
|
|
|
137
|
-
uas = residue.select_atoms("mass 2 to 999")
|
|
138
|
-
ua_masses = self.get_UA_masses(residue)
|
|
139
|
-
|
|
140
136
|
if len(edge_atom_set) == 0:
|
|
141
|
-
|
|
142
|
-
center_of_mass=np.array(residue.center_of_mass()),
|
|
143
|
-
positions=uas.positions,
|
|
144
|
-
masses=ua_masses,
|
|
145
|
-
dimensions=data_container.dimensions[:3],
|
|
146
|
-
)
|
|
147
|
-
rot_axes, moment_of_inertia = self.get_principal_axes_from_tensor(
|
|
148
|
-
moi_tensor
|
|
149
|
-
)
|
|
137
|
+
rot_axes, moment_of_inertia = self.get_molecule_axes(residue)
|
|
150
138
|
trans_axes = rot_axes # per original convention
|
|
151
139
|
rot_center = np.array(residue.center_of_mass())
|
|
152
140
|
else:
|
|
@@ -167,8 +155,8 @@ class AxesCalculator:
|
|
|
167
155
|
)
|
|
168
156
|
moment_of_inertia = self.get_custom_residue_moment_of_inertia(
|
|
169
157
|
center_of_mass=rot_center,
|
|
170
|
-
positions=
|
|
171
|
-
masses=
|
|
158
|
+
positions=residue.atoms.positions,
|
|
159
|
+
masses=residue.atoms.masses,
|
|
172
160
|
custom_rot_axes=rot_axes,
|
|
173
161
|
dimensions=data_container.dimensions[:3],
|
|
174
162
|
)
|
|
@@ -181,7 +169,6 @@ class AxesCalculator:
|
|
|
181
169
|
mol,
|
|
182
170
|
residue_atoms,
|
|
183
171
|
topology,
|
|
184
|
-
box: np.ndarray | None,
|
|
185
172
|
):
|
|
186
173
|
"""Compute residue axes using cached static topology.
|
|
187
174
|
|
|
@@ -195,7 +182,6 @@ class AxesCalculator:
|
|
|
195
182
|
mol: Current-frame molecule fragment.
|
|
196
183
|
residue_atoms: AtomGroup for the residue in the current frame.
|
|
197
184
|
topology: Cached ``ResidueAxesTopology`` for this residue.
|
|
198
|
-
box: Current periodic box lengths. If omitted, ``u.dimensions`` is used.
|
|
199
185
|
|
|
200
186
|
Returns:
|
|
201
187
|
Tuple[np.ndarray, np.ndarray, np.ndarray, np.ndarray]:
|
|
@@ -204,24 +190,10 @@ class AxesCalculator:
|
|
|
204
190
|
- center: Residue centre, shape ``(3,)``.
|
|
205
191
|
- moment_of_inertia: Principal moments, shape ``(3,)``.
|
|
206
192
|
"""
|
|
207
|
-
dimensions = (
|
|
208
|
-
np.asarray(box, dtype=float)
|
|
209
|
-
if box is not None
|
|
210
|
-
else np.asarray(u.dimensions[:3], dtype=float)
|
|
211
|
-
)
|
|
212
193
|
center = residue_atoms.center_of_mass(unwrap=True)
|
|
213
194
|
|
|
214
195
|
if not topology.has_neighbor_bonds:
|
|
215
|
-
|
|
216
|
-
moment_of_inertia_tensor = self.get_moment_of_inertia_tensor(
|
|
217
|
-
center_of_mass=center,
|
|
218
|
-
positions=heavy_atoms.positions,
|
|
219
|
-
masses=topology.residue_ua_masses,
|
|
220
|
-
dimensions=dimensions,
|
|
221
|
-
)
|
|
222
|
-
rot_axes, moment_of_inertia = self.get_principal_axes_from_tensor(
|
|
223
|
-
moment_of_inertia_tensor
|
|
224
|
-
)
|
|
196
|
+
rot_axes, moment_of_inertia = self.get_molecule_axes(residue_atoms)
|
|
225
197
|
trans_axes = rot_axes
|
|
226
198
|
else:
|
|
227
199
|
make_whole(mol.atoms)
|
|
@@ -277,7 +249,7 @@ class AxesCalculator:
|
|
|
277
249
|
|
|
278
250
|
index = int(index) # UA bead index
|
|
279
251
|
heavy_atoms = data_container.select_atoms("mass 2 to 999")
|
|
280
|
-
# use the same
|
|
252
|
+
# use the same trans axes as the residue level
|
|
281
253
|
if len(heavy_atoms) > 1:
|
|
282
254
|
if len(data_container.residues) == 1:
|
|
283
255
|
# only the one residue => use principal axes
|
|
@@ -411,16 +383,7 @@ class AxesCalculator:
|
|
|
411
383
|
heavy_atom = u.atoms[int(topology.heavy_atom_index)]
|
|
412
384
|
|
|
413
385
|
if len(heavy_atoms) > 1:
|
|
414
|
-
|
|
415
|
-
moment_of_inertia_tensor = self.get_moment_of_inertia_tensor(
|
|
416
|
-
center_of_mass=center,
|
|
417
|
-
positions=heavy_atoms.positions,
|
|
418
|
-
masses=topology.residue_ua_masses,
|
|
419
|
-
dimensions=dimensions,
|
|
420
|
-
)
|
|
421
|
-
trans_axes, _moment_of_inertia = self.get_principal_axes_from_tensor(
|
|
422
|
-
moment_of_inertia_tensor
|
|
423
|
-
)
|
|
386
|
+
trans_axes = self.get_principal_axes_from_group(residue_atoms)
|
|
424
387
|
else:
|
|
425
388
|
make_whole(residue_atoms)
|
|
426
389
|
trans_axes = self.get_principal_axes_from_group(residue_atoms)
|
|
@@ -921,8 +884,8 @@ class AxesCalculator:
|
|
|
921
884
|
|
|
922
885
|
Args:
|
|
923
886
|
center_of_mass: (3, ) COM for bead
|
|
924
|
-
positions: (N,3) positions of the
|
|
925
|
-
masses: (N,) masses of the
|
|
887
|
+
positions: (N,3) positions of the atoms in the bead
|
|
888
|
+
masses: (N,) masses of the atoms in the bead
|
|
926
889
|
custom_rot_axes: (3,3) array of residue rotation axes
|
|
927
890
|
dimensions: (3,) simulation_box_dimensions
|
|
928
891
|
|
|
@@ -1137,30 +1100,6 @@ class AxesCalculator:
|
|
|
1137
1100
|
)
|
|
1138
1101
|
return principal_axes
|
|
1139
1102
|
|
|
1140
|
-
def get_UA_masses(self, molecule) -> list[float]:
|
|
1141
|
-
"""Return united-atom (UA) masses for a molecule.
|
|
1142
|
-
|
|
1143
|
-
For a given molecule, return a list of masses of UAs (combination of the
|
|
1144
|
-
heavy atoms + bonded hydrogen atoms). This list is used to get the moment
|
|
1145
|
-
of inertia tensor for molecules larger than one UA.
|
|
1146
|
-
|
|
1147
|
-
Args:
|
|
1148
|
-
molecule: MDAnalysis AtomGroup representing the molecule.
|
|
1149
|
-
|
|
1150
|
-
Returns:
|
|
1151
|
-
list[float]: UA masses for each heavy atom.
|
|
1152
|
-
"""
|
|
1153
|
-
ua_masses: list[float] = []
|
|
1154
|
-
for atom in molecule:
|
|
1155
|
-
if atom.mass > 1.1:
|
|
1156
|
-
ua_mass = float(atom.mass)
|
|
1157
|
-
bonded_atoms = molecule.select_atoms(f"bonded index {atom.index}")
|
|
1158
|
-
bonded_h_atoms = bonded_atoms.select_atoms("mass 1 to 1.1")
|
|
1159
|
-
for h in bonded_h_atoms:
|
|
1160
|
-
ua_mass += float(h.mass)
|
|
1161
|
-
ua_masses.append(ua_mass)
|
|
1162
|
-
return ua_masses
|
|
1163
|
-
|
|
1164
1103
|
def get_chain(self, residue, first, last):
|
|
1165
1104
|
"""
|
|
1166
1105
|
For a given MDAnalysis AtomGroup and two given heavy atoms
|
|
@@ -578,7 +578,6 @@ class FrameCovarianceNode:
|
|
|
578
578
|
relative_res_i=relative_res_i,
|
|
579
579
|
axes_manager=axes_manager,
|
|
580
580
|
axes_topology=axes_topology,
|
|
581
|
-
box=box,
|
|
582
581
|
customised_axes=customised_axes,
|
|
583
582
|
)
|
|
584
583
|
|
|
@@ -615,7 +614,6 @@ class FrameCovarianceNode:
|
|
|
615
614
|
relative_res_i: int,
|
|
616
615
|
axes_manager: Any,
|
|
617
616
|
axes_topology: Any | None,
|
|
618
|
-
box: np.ndarray | None,
|
|
619
617
|
customised_axes: bool,
|
|
620
618
|
) -> tuple[np.ndarray, np.ndarray, np.ndarray, np.ndarray]:
|
|
621
619
|
"""Return axes, centre, and inertia data for a residue bead.
|
|
@@ -630,7 +628,6 @@ class FrameCovarianceNode:
|
|
|
630
628
|
might differ from residue index of first residue in topology.
|
|
631
629
|
axes_manager: Axes helper used to select axes, centres, and moments.
|
|
632
630
|
axes_topology: Optional cached axes topology generated during static setup.
|
|
633
|
-
box: Optional periodic box vector.
|
|
634
631
|
customised_axes: Whether customised residue axes should be used.
|
|
635
632
|
|
|
636
633
|
Returns:
|
|
@@ -644,11 +641,7 @@ class FrameCovarianceNode:
|
|
|
644
641
|
|
|
645
642
|
if residue_topology is not None:
|
|
646
643
|
return axes_manager.get_residue_axes_from_topology(
|
|
647
|
-
u=u,
|
|
648
|
-
mol=mol,
|
|
649
|
-
residue_atoms=res.atoms,
|
|
650
|
-
topology=residue_topology,
|
|
651
|
-
box=box,
|
|
644
|
+
u=u, mol=mol, residue_atoms=res.atoms, topology=residue_topology
|
|
652
645
|
)
|
|
653
646
|
|
|
654
647
|
return axes_manager.get_residue_axes(
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: CodeEntropy
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.7.0
|
|
4
4
|
Summary: CodeEntropy is a Python package for computing the configurational entropy of macromolecular systems using forces sampled from molecular dynamics (MD) simulations. It implements the multiscale cell correlation method to provide accurate and efficient entropy estimates, supporting a wide range of applications in molecular simulation and statistical mechanics.
|
|
5
5
|
Keywords: entropy,macromolecular systems,MD simulation
|
|
6
6
|
Author-email: Arghya 'Argo' Chakravorty <arghyac@umich.edu>, Donald Chung-HK <donald.chung@stfc.ac.uk>, Sarah Fegan <sarah.fegan@stfc.ac.uk>, James Gebbie-Rayet <james.gebbie@stfc.ac.uk>, Sarah Harris <sarah.harris@sheffield.ac.uk>, Richard Henchman <rhen7213@uni.sydney.edu.au>, Jonathan Higham <j.higham4@lancaster.ac.uk>, Jas Kalayan <jas.kalayan@stfc.ac.uk>, Ioana Papa <iapapa1@sheffield.ac.uk>
|
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
# Contributing to CodeEntropy
|
|
2
|
-
|
|
3
|
-
Thank you for your interest in contributing to **CodeEntropy**!
|
|
4
|
-
|
|
5
|
-
We’re excited to collaborate with developers, researchers, and community members to make CodeEntropy better for everyone.
|
|
6
|
-
|
|
7
|
-
This guide explains how to set up your environment, make changes, and submit them for review. Whether you’re fixing a bug, improving documentation, or adding new features, every contribution makes a difference.
|
|
8
|
-
|
|
9
|
-
---
|
|
10
|
-
|
|
11
|
-
## Getting Started
|
|
12
|
-
|
|
13
|
-
Before contributing, please review the [Developer Guide](https://codeentropy.readthedocs.io/en/latest/developer_guide.html).
|
|
14
|
-
It covers CodeEntropy’s architecture, setup instructions, and contribution workflow.
|
|
15
|
-
|
|
16
|
-
If you’re new to the project, we also recommend:
|
|
17
|
-
- Reading the [README](../README.md) for an overview and installation details.
|
|
18
|
-
- Checking open [issues](https://github.com/CCPBioSim/CodeEntropy/issues) labeled **good first issue** to find beginner-friendly tasks.
|
|
19
|
-
|
|
20
|
-
---
|
|
21
|
-
|
|
22
|
-
## Submitting a Pull Request (PR)
|
|
23
|
-
|
|
24
|
-
When you’re ready to submit your work:
|
|
25
|
-
|
|
26
|
-
1. **Push your branch** to GitHub.
|
|
27
|
-
2. **Open a [pull request](https://help.github.com/articles/using-pull-requests/)** against the `main` branch.
|
|
28
|
-
3. **Fill out the PR template**, including:
|
|
29
|
-
- A concise summary of what your PR does
|
|
30
|
-
- A list of all changes introduced
|
|
31
|
-
- Details on how these changes affect the repository (features, tests, documentation, etc.)
|
|
32
|
-
4. **Verify before submission**:
|
|
33
|
-
- All tests pass
|
|
34
|
-
- Pre-commit checks succeed
|
|
35
|
-
- Documentation is updated where applicable
|
|
36
|
-
5. **Review process**:
|
|
37
|
-
- Your PR will be reviewed by the core development team.
|
|
38
|
-
- At least **one approval** is required before merging.
|
|
39
|
-
|
|
40
|
-
We aim to provide constructive feedback quickly and appreciate your patience during the review process.
|
|
41
|
-
|
|
42
|
-
---
|
|
43
|
-
|
|
44
|
-
## Reporting Issues
|
|
45
|
-
|
|
46
|
-
Found a bug or have a feature request?
|
|
47
|
-
|
|
48
|
-
1. **Open a new issue** on GitHub.
|
|
49
|
-
2. Provide a **clear and descriptive title**.
|
|
50
|
-
3. Include:
|
|
51
|
-
- Steps to reproduce the issue (if applicable)
|
|
52
|
-
- Expected vs. actual behavior
|
|
53
|
-
- Relevant logs, screenshots, or input files
|
|
54
|
-
|
|
55
|
-
Well-documented issues help us address problems faster and keep CodeEntropy stable and robust.
|
|
56
|
-
|
|
57
|
-
---
|
|
58
|
-
|
|
59
|
-
## Additional Resources
|
|
60
|
-
|
|
61
|
-
- [GitHub Docs](https://help.github.com/)
|
|
62
|
-
|
|
63
|
-
---
|
|
64
|
-
|
|
65
|
-
Thank you for helping improve **CodeEntropy**, your contributions make open source stronger!
|
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: Bug report
|
|
3
|
-
about: Create a report to help us improve CodeEntropy
|
|
4
|
-
title: '[Bug]: '
|
|
5
|
-
labels: bug
|
|
6
|
-
assignees: ''
|
|
7
|
-
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
# Bug Report
|
|
11
|
-
<!-- A clear and concise description of the issue. -->
|
|
12
|
-
|
|
13
|
-
---
|
|
14
|
-
|
|
15
|
-
## To Reproduce
|
|
16
|
-
<!-- Provide the YAML configuration and the exact CLI command that reproduces the issue. -->
|
|
17
|
-
|
|
18
|
-
### YAML configuration
|
|
19
|
-
<!-- Paste the YAML file or the smallest excerpt that reproduces the issue.
|
|
20
|
-
Remove unrelated fields to make it minimal. -->
|
|
21
|
-
```yaml
|
|
22
|
-
# Paste the YAML snippet here
|
|
23
|
-
```
|
|
24
|
-
|
|
25
|
-
### CLI command used
|
|
26
|
-
<!-- Write the exact command used, for example: -->
|
|
27
|
-
```bash
|
|
28
|
-
# Paste the CLI command here
|
|
29
|
-
```
|
|
30
|
-
|
|
31
|
-
### Actual output
|
|
32
|
-
<!-- Paste the output, logs, or error messages here -->
|
|
33
|
-
```bash
|
|
34
|
-
# Paste the output, logs, or error messages here
|
|
35
|
-
```
|
|
36
|
-
|
|
37
|
-
### Expected output
|
|
38
|
-
<!-- Describe what you expected to see instead -->
|
|
39
|
-
|
|
40
|
-
---
|
|
41
|
-
|
|
42
|
-
## Environment and Versions
|
|
43
|
-
|
|
44
|
-
- Operating System:
|
|
45
|
-
- CodeEntropy Version:
|
|
46
|
-
- Python Version:
|
|
47
|
-
- Package list:
|
|
48
|
-
- If using conda, run: `conda list > packages.txt` and paste the contents here.
|
|
49
|
-
|
|
50
|
-
``` bash
|
|
51
|
-
# Paste packages.txt here
|
|
52
|
-
```
|
|
53
|
-
|
|
54
|
-
- If using venv/pip, run: `pip list > packages.txt` and paste the contents here.
|
|
55
|
-
|
|
56
|
-
``` bash
|
|
57
|
-
# Paste packages.txt here
|
|
58
|
-
```
|
|
59
|
-
|
|
60
|
-
---
|
|
61
|
-
|
|
62
|
-
## Screenshots or Logs
|
|
63
|
-
|
|
64
|
-
<!-- Attach any relevant screenshots, logs, or stack traces. -->
|
|
65
|
-
|
|
66
|
-
---
|
|
67
|
-
|
|
68
|
-
## Additional Context
|
|
69
|
-
|
|
70
|
-
<!-- Include anything else that might help reproduce or understand the bug, such as changes from a previously working version. -->
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
blank_issues_enabled: false
|
|
2
|
-
issue_templates:
|
|
3
|
-
- name: "Bug Report"
|
|
4
|
-
description: "Report a bug in CodeEntropy."
|
|
5
|
-
title: "[Bug]: "
|
|
6
|
-
labels: ["bug"]
|
|
7
|
-
body: "./ISSUE_TEMPLATE/bug_report.md"
|
|
8
|
-
- name: "Feature Request"
|
|
9
|
-
description: "Propose a new feature or improvement."
|
|
10
|
-
title: "[Feature]: "
|
|
11
|
-
labels: ["enhancement"]
|
|
12
|
-
body: "./ISSUE_TEMPLATE/feature_request.md"
|
|
13
|
-
- name: "Documentation"
|
|
14
|
-
description: "Suggest updates or additions to the documentation."
|
|
15
|
-
title: "[Docs]: "
|
|
16
|
-
labels: ["documentation"]
|
|
17
|
-
body: "./ISSUE_TEMPLATE/documentation.md"
|
|
18
|
-
- name: "General Report"
|
|
19
|
-
description: "Provide general feedback or inquiries."
|
|
20
|
-
title: "[General]: "
|
|
21
|
-
labels: ["general"]
|
|
22
|
-
body: "./ISSUE_TEMPLATE/general_report.md"
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: Documentation
|
|
3
|
-
about: Suggest updates or additions to documentation
|
|
4
|
-
title: "[Docs]: "
|
|
5
|
-
labels: documentation
|
|
6
|
-
assignees: ''
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
### Documentation Update
|
|
10
|
-
<!-- What part of the documentation needs to be updated or added? -->
|
|
11
|
-
|
|
12
|
-
### Why Is This Needed?
|
|
13
|
-
<!-- Explain the importance of this update. -->
|
|
14
|
-
|
|
15
|
-
### Suggested Changes
|
|
16
|
-
<!-- Provide a detailed description of the changes. -->
|
|
17
|
-
|
|
18
|
-
### Additional Context
|
|
19
|
-
<!-- Include any related resources. -->
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: Feature request
|
|
3
|
-
about: Suggest an idea for CodeEntropy
|
|
4
|
-
title: '[Feature]: '
|
|
5
|
-
labels: 'enhancement'
|
|
6
|
-
assignees: ''
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
# Feature Request
|
|
10
|
-
|
|
11
|
-
## Problem / Motivation
|
|
12
|
-
<!-- Describe the problem you want to solve or the motivation for this feature. -->
|
|
13
|
-
|
|
14
|
-
## Proposed Solution
|
|
15
|
-
<!-- Describe the feature you would like to see implemented. Include examples if applicable. -->
|
|
16
|
-
|
|
17
|
-
## Alternatives Considered
|
|
18
|
-
- <!-- Alternative 1 -->
|
|
19
|
-
- <!-- Alternative 2 -->
|
|
20
|
-
|
|
21
|
-
## Expected Impact
|
|
22
|
-
<!-- How this feature would affect the codebase or workflow -->
|
|
23
|
-
- <!-- Impact 1 -->
|
|
24
|
-
- <!-- Impact 2 -->
|
|
25
|
-
|
|
26
|
-
## Additional Context
|
|
27
|
-
<!-- Add any other context, screenshots, or references for the feature request here. -->
|
|
28
|
-
- <!-- Further context -->
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: General Report
|
|
3
|
-
about: Provide general feedback or inquiries
|
|
4
|
-
title: "[General]: "
|
|
5
|
-
labels: general
|
|
6
|
-
assignees: ''
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
### Feedback or Inquiry
|
|
10
|
-
<!-- Provide your feedback or inquiry. -->
|
|
11
|
-
|
|
12
|
-
### Additional Information
|
|
13
|
-
<!-- Add any other relevant details here. -->
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
## Summary
|
|
2
|
-
<!-- Provide a brief description of the PR's purpose here. -->
|
|
3
|
-
|
|
4
|
-
## Changes
|
|
5
|
-
<!-- List all the changes introduced in this PR. -->
|
|
6
|
-
### Change 1 <!-- Rename Change 1 to reflect change title -->:
|
|
7
|
-
- <!-- Bullet point the changes in update 1. -->
|
|
8
|
-
-
|
|
9
|
-
|
|
10
|
-
### Change 2 <!-- Rename Change 2 to reflect change title -->:
|
|
11
|
-
- <!-- Bullet point the changes in update 2. -->
|
|
12
|
-
-
|
|
13
|
-
|
|
14
|
-
### Change 3 <!-- Rename Change 3 to reflect change title -->:
|
|
15
|
-
- <!-- Bullet point the changes in update 3. -->
|
|
16
|
-
-
|
|
17
|
-
|
|
18
|
-
## Impact
|
|
19
|
-
- <!-- Bullet point the expected impact this PR will have on the codebase. -->
|
|
20
|
-
-
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
|
|
3
|
-
"extends": [
|
|
4
|
-
"config:best-practices",
|
|
5
|
-
"helpers:pinGitHubActionDigestsToSemver"
|
|
6
|
-
],
|
|
7
|
-
"timezone": "Europe/London",
|
|
8
|
-
"schedule": ["after 9am and before 5pm every weekday"],
|
|
9
|
-
"dependencyDashboard": true,
|
|
10
|
-
"reviewers": ["harryswift01", "jimboid"],
|
|
11
|
-
"minimumReleaseAge": "3 days",
|
|
12
|
-
"packageRules": [
|
|
13
|
-
{
|
|
14
|
-
"matchManagers": ["github-actions"],
|
|
15
|
-
"groupName": "GitHub Actions",
|
|
16
|
-
"addLabels": ["ci", "dependencies"]
|
|
17
|
-
},
|
|
18
|
-
{
|
|
19
|
-
"matchManagers": ["poetry", "pep621"],
|
|
20
|
-
"matchDepTypes": ["project.dependencies"],
|
|
21
|
-
"rangeStrategy": "widen",
|
|
22
|
-
"groupName": "Software Production Dependencies",
|
|
23
|
-
"addLabels": ["python", "production-deps"]
|
|
24
|
-
},
|
|
25
|
-
{
|
|
26
|
-
"matchManagers": ["poetry", "pep621"],
|
|
27
|
-
"matchDepTypes": ["project.optional-dependencies", "build-system.requires"],
|
|
28
|
-
"rangeStrategy": "replace",
|
|
29
|
-
"groupName": "Python CI and Dev Tools",
|
|
30
|
-
"addLabels": ["python", "dev-dependencies"]
|
|
31
|
-
}
|
|
32
|
-
]
|
|
33
|
-
}
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
name: Coveralls Main
|
|
2
|
-
|
|
3
|
-
on:
|
|
4
|
-
push:
|
|
5
|
-
branches: [main]
|
|
6
|
-
|
|
7
|
-
workflow_dispatch:
|
|
8
|
-
|
|
9
|
-
permissions:
|
|
10
|
-
contents: read
|
|
11
|
-
|
|
12
|
-
concurrency:
|
|
13
|
-
group: coveralls-main-${{ github.ref }}
|
|
14
|
-
cancel-in-progress: true
|
|
15
|
-
|
|
16
|
-
jobs:
|
|
17
|
-
coveralls:
|
|
18
|
-
name: Build main coverage baseline
|
|
19
|
-
runs-on: ubuntu-26.04
|
|
20
|
-
timeout-minutes: 30
|
|
21
|
-
|
|
22
|
-
permissions:
|
|
23
|
-
contents: read
|
|
24
|
-
checks: write
|
|
25
|
-
statuses: write
|
|
26
|
-
|
|
27
|
-
steps:
|
|
28
|
-
- name: Checkout
|
|
29
|
-
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8
|
|
30
|
-
|
|
31
|
-
- name: Set up Python 3.14
|
|
32
|
-
uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405
|
|
33
|
-
with:
|
|
34
|
-
python-version: "3.15"
|
|
35
|
-
|
|
36
|
-
- name: Install testing dependencies
|
|
37
|
-
run: |
|
|
38
|
-
python -m pip install --upgrade pip
|
|
39
|
-
python -m pip install -e .[testing]
|
|
40
|
-
|
|
41
|
-
- name: Run coverage
|
|
42
|
-
run: |
|
|
43
|
-
python -m pytest tests/unit \
|
|
44
|
-
--cov CodeEntropy \
|
|
45
|
-
--cov-report term-missing \
|
|
46
|
-
--cov-report xml \
|
|
47
|
-
-q
|
|
48
|
-
|
|
49
|
-
- name: Upload coverage to Coveralls
|
|
50
|
-
uses: coverallsapp/github-action@5cbfd81b66ca5d10c19b062c04de0199c215fb6e
|
|
51
|
-
with:
|
|
52
|
-
github-token: ${{ secrets.GITHUB_TOKEN }}
|
|
53
|
-
file: coverage.xml
|
|
54
|
-
fail-on-error: false
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
name: Daily Unit Tests
|
|
2
|
-
|
|
3
|
-
on:
|
|
4
|
-
schedule:
|
|
5
|
-
- cron: '0 8 * * 1-5'
|
|
6
|
-
workflow_dispatch:
|
|
7
|
-
|
|
8
|
-
concurrency:
|
|
9
|
-
group: daily-${{ github.ref }}
|
|
10
|
-
cancel-in-progress: true
|
|
11
|
-
|
|
12
|
-
jobs:
|
|
13
|
-
unit:
|
|
14
|
-
name: Unit (${{ matrix.os }}, py${{ matrix.python-version }})
|
|
15
|
-
runs-on: ${{ matrix.os }}
|
|
16
|
-
timeout-minutes: 30
|
|
17
|
-
|
|
18
|
-
strategy:
|
|
19
|
-
fail-fast: false
|
|
20
|
-
matrix:
|
|
21
|
-
os: [ubuntu-24.04, macos-26, windows-2025-vs2026]
|
|
22
|
-
python-version: ["3.12", "3.13", "3.14"]
|
|
23
|
-
|
|
24
|
-
steps:
|
|
25
|
-
- name: Checkout
|
|
26
|
-
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
|
27
|
-
|
|
28
|
-
- name: Set up Python ${{ matrix.python-version }}
|
|
29
|
-
uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
|
|
30
|
-
with:
|
|
31
|
-
python-version: ${{ matrix.python-version }}
|
|
32
|
-
|
|
33
|
-
- name: Install testing dependencies
|
|
34
|
-
run: |
|
|
35
|
-
python -m pip install --upgrade pip
|
|
36
|
-
python -m pip install -e .[testing]
|
|
37
|
-
|
|
38
|
-
- name: Run unit tests
|
|
39
|
-
run: python -m pytest tests/unit
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
name: Dependency Floors
|
|
2
|
-
|
|
3
|
-
on:
|
|
4
|
-
schedule:
|
|
5
|
-
- cron: '0 8 * * 1'
|
|
6
|
-
workflow_dispatch:
|
|
7
|
-
|
|
8
|
-
permissions:
|
|
9
|
-
contents: read
|
|
10
|
-
|
|
11
|
-
concurrency:
|
|
12
|
-
group: dependency-floors-${{ github.ref }}
|
|
13
|
-
cancel-in-progress: true
|
|
14
|
-
|
|
15
|
-
jobs:
|
|
16
|
-
lowest:
|
|
17
|
-
name: Lowest dependencies (${{ matrix.os }}, py${{ matrix.python-version }})
|
|
18
|
-
runs-on: ${{ matrix.os }}
|
|
19
|
-
timeout-minutes: 30
|
|
20
|
-
|
|
21
|
-
strategy:
|
|
22
|
-
fail-fast: false
|
|
23
|
-
matrix:
|
|
24
|
-
os: [ubuntu-26.04, macos-26, windows-2025-vs2026]
|
|
25
|
-
python-version: ["3.12", "3.13", "3.14"]
|
|
26
|
-
|
|
27
|
-
steps:
|
|
28
|
-
- name: Checkout
|
|
29
|
-
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
|
30
|
-
|
|
31
|
-
- name: Set up Python ${{ matrix.python-version }}
|
|
32
|
-
uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
|
|
33
|
-
with:
|
|
34
|
-
python-version: ${{ matrix.python-version }}
|
|
35
|
-
|
|
36
|
-
- name: Install uv
|
|
37
|
-
run: |
|
|
38
|
-
python -m pip install --upgrade pip
|
|
39
|
-
python -m pip install uv
|
|
40
|
-
|
|
41
|
-
- name: Resolve lowest dependencies as wheels
|
|
42
|
-
run: |
|
|
43
|
-
uv pip compile pyproject.toml --resolution lowest-direct --only-binary :all: --output-file lowest.txt
|
|
44
|
-
cat lowest.txt
|
|
45
|
-
|
|
46
|
-
- name: Install lowest dependencies
|
|
47
|
-
run: uv pip install --system --resolution lowest-direct -e ".[testing]"
|
|
48
|
-
|
|
49
|
-
- name: Run unit tests
|
|
50
|
-
run: python -m pytest tests/unit
|