Skip to main content

DTCC Core

Project description

DTCC Core

DTCC Core provides the core functionality for DTCC Platform, including data modeling, data wrangling, data generation, and data input/output.

This project is part of the Digital Twin Platform (DTCC Platform) developed at the Digital Twin Cities Centre supported by Sweden’s Innovation Agency Vinnova under Grant No. 2019-421 00041.

Documentation

This project is documented as part of the DTCC Platform Documentation.

Authors (in order of appearance)

License

This project is licensed under the MIT license.

Copyrights are held by the individual authors as listed at the top of each source file.

Community guidelines

Comments, contributions, and questions are welcome. Please engage with us through Issues, Pull Requests, and Discussions on our GitHub page.

Local Function-Call Check

CI enforces that every public API function (exported via __all__) in dtcc_core is executed at least once by the test suite. You can run the same check locally:

  • Create a virtual environment and install the project and test tools:

    • python -m venv .venv && source .venv/bin/activate (Windows: python -m venv .venv && .venv\\Scripts\\activate)
    • pip install -e .
    • pip install pytest pytest-cov
  • Run tests with coverage to produce tests/coverage.json (run from the tests directory to match CI):

    • cd tests
    • pytest --maxfail=1 --disable-warnings --cov=dtcc_core --cov-report=term-missing --cov-report=json:coverage.json
  • From the project root, run the function-call checker:

    • cd ..
    • python scripts/check_public_api_calls.py --package dtcc_core --coverage-file tests/coverage.json

Exit status 0 means all public functions were exercised by tests. A non‑zero exit prints the list of missed functions with their source locations so you can add or adjust tests.

Installation Notes

  • Surface meshing backends: SPADE is used by default via dtcc-pyspade-native. Earcut is provided as a fast alternative for cases where a lightweight triangulation method is preferred. Support for the Triangle backend is optional and disabled by default to keep the standard installation minimal.

  • Enabling Triangle: If you wish to build with Triangle support, ensure that the Triangle library is available on your system (a header-only setup is sufficient) and install dtcc-core with:

    pip install . \
      --config-settings=cmake.define.DTCC_USE_TRIANGLE=ON \
      --config-settings=cmake.define.DTCC_TRIANGLE_DIR=/path/to/triangle/prefix
    

    If these options are omitted, the build will proceed without Triangle and will use SPADE or earcut depending on configuration and availability.

  • Volume meshing with TetGen: TetGen can be used for tetrahedral meshing through the minimal wrapper provided in the dtcc-tetgen-wrapper repository:

    git clone https://github.com/dtcc-platform/dtcc-tetgen-wrapper.git
    cd dtcc-tetgen-wrapper
    pip install .
    

Makefile shortcuts

If you have make available, you can use these shortcuts from the repository root:

  • make install — install the package and test tooling.
  • make test — run the test suite.
  • make coverage — run tests with coverage and write tests/coverage.json.
  • make check-public-api — check that all public API functions were executed.
  • make verify-public-api — run coverage and then the public API check.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

dtcc_core-0.9.4-cp312-cp312-win_amd64.whl (5.3 MB view details)

Uploaded CPython 3.12Windows x86-64

dtcc_core-0.9.4-cp312-cp312-win32.whl (5.3 MB view details)

Uploaded CPython 3.12Windows x86

dtcc_core-0.9.4-cp312-cp312-manylinux_2_28_x86_64.whl (5.3 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

dtcc_core-0.9.4-cp312-cp312-macosx_11_0_arm64.whl (5.3 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

dtcc_core-0.9.4-cp311-cp311-win_amd64.whl (5.3 MB view details)

Uploaded CPython 3.11Windows x86-64

dtcc_core-0.9.4-cp311-cp311-win32.whl (5.3 MB view details)

Uploaded CPython 3.11Windows x86

dtcc_core-0.9.4-cp311-cp311-manylinux_2_28_x86_64.whl (5.3 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

dtcc_core-0.9.4-cp311-cp311-macosx_11_0_arm64.whl (5.3 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

dtcc_core-0.9.4-cp310-cp310-win_amd64.whl (5.3 MB view details)

Uploaded CPython 3.10Windows x86-64

dtcc_core-0.9.4-cp310-cp310-win32.whl (5.3 MB view details)

Uploaded CPython 3.10Windows x86

dtcc_core-0.9.4-cp310-cp310-manylinux_2_28_x86_64.whl (5.3 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

dtcc_core-0.9.4-cp310-cp310-macosx_11_0_arm64.whl (5.3 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

File details

Details for the file dtcc_core-0.9.4-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: dtcc_core-0.9.4-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 5.3 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.9

File hashes

Hashes for dtcc_core-0.9.4-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 5eb45b775075944c772e9bc38b9f950ec07a9d5fb295bde378729e6438c53fde
MD5 2e25334d20e9fcafa687af2b7c53d460
BLAKE2b-256 4f9d648e5272aa3c6609e31d88132d88899da3b25e155a8ded7223264525898f

See more details on using hashes here.

File details

Details for the file dtcc_core-0.9.4-cp312-cp312-win32.whl.

File metadata

  • Download URL: dtcc_core-0.9.4-cp312-cp312-win32.whl
  • Upload date:
  • Size: 5.3 MB
  • Tags: CPython 3.12, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.9

File hashes

Hashes for dtcc_core-0.9.4-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 7cfa58e04b839b7c8a6353ff4a9d59f9cad5147d798dd36d28221fb6e178e29a
MD5 73f42c591ec4101e4b72d73bce890438
BLAKE2b-256 d00303cb91c8448c62f6b4f4586cd192130072aa1bcd36df73574693d03c27cc

See more details on using hashes here.

File details

Details for the file dtcc_core-0.9.4-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for dtcc_core-0.9.4-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 73597e09246a873aea23fb6ab2cd593a85b49f4dcc82653e091f1f16ebe9c591
MD5 259df8315da181340556cfb3683ac0f4
BLAKE2b-256 556ee3eefc50f557a0ca7193af7d9f98b54b3192683d71724b6dd22912ac037c

See more details on using hashes here.

File details

Details for the file dtcc_core-0.9.4-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dtcc_core-0.9.4-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3fbe59afb463fd3fb52d1831b4db8ef017c2056a37a45ab58708bea3fa14b36b
MD5 6161716f046bebc5b9a0ea8e447e4553
BLAKE2b-256 e910f8668fac537e93a0dee9b216aa3d20731f5170c7558a0933eab361639928

See more details on using hashes here.

File details

Details for the file dtcc_core-0.9.4-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: dtcc_core-0.9.4-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 5.3 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.9

File hashes

Hashes for dtcc_core-0.9.4-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 4b195e6fbf810eacd77595746d56e223d5a3d2e3e1a3b303e4b22b5940f05794
MD5 0bb0ffb67e442bb46856b2a5346d4944
BLAKE2b-256 9ab30cf2ca46ee5625998b5f727292ebb3df9356a06fcb3df95b09a4030ffdd7

See more details on using hashes here.

File details

Details for the file dtcc_core-0.9.4-cp311-cp311-win32.whl.

File metadata

  • Download URL: dtcc_core-0.9.4-cp311-cp311-win32.whl
  • Upload date:
  • Size: 5.3 MB
  • Tags: CPython 3.11, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.9

File hashes

Hashes for dtcc_core-0.9.4-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 9504dcb64f545c38557ebbe63102bfdfab0b6aa4c1a06245bec5eb1bf807b45b
MD5 b01c2d5df9413d97be77a09fb3b25f64
BLAKE2b-256 e8126ee6510f65b3aa25d61c05aafdf4382b94247c8ae96c92c32422b4034ca9

See more details on using hashes here.

File details

Details for the file dtcc_core-0.9.4-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for dtcc_core-0.9.4-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9508448fa4802e1c585a12f1af4f4f87c6313f8643d112d783772becc3b5bf8c
MD5 0369b4e33b6f35a83f1d6849b3119c85
BLAKE2b-256 e7c4b64a6391ca4d43e12e0409f267e44388ce9f2d39a4df241e873a27d5881f

See more details on using hashes here.

File details

Details for the file dtcc_core-0.9.4-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dtcc_core-0.9.4-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a85d522271ed77c5596a5caad7376782ea82d1b85c4d2394761e6ce2ae7695f8
MD5 83ceceff39c79e28cdf024a810b2e500
BLAKE2b-256 bfd5209af200e3c7139b8ee473c12eb3eaa582e087d176e2f7b268af5900928e

See more details on using hashes here.

File details

Details for the file dtcc_core-0.9.4-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: dtcc_core-0.9.4-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 5.3 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.9

File hashes

Hashes for dtcc_core-0.9.4-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 2fc23edab3a29622e66d2c7b481d79b085b6a7f73c27a088dba50ab991fdb0de
MD5 f1331745a4c475885515f0307dc3e738
BLAKE2b-256 d0b5ce9605bb8ff94b8365ac86e03f57e0fef02348c331ea5d31e1d7e1df8753

See more details on using hashes here.

File details

Details for the file dtcc_core-0.9.4-cp310-cp310-win32.whl.

File metadata

  • Download URL: dtcc_core-0.9.4-cp310-cp310-win32.whl
  • Upload date:
  • Size: 5.3 MB
  • Tags: CPython 3.10, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.9

File hashes

Hashes for dtcc_core-0.9.4-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 408f7419b1c0e75ec42c9042f3ca674f0daf7029c5aafd0688f871c1e7c94587
MD5 e5863a90ace3966be218aa3e9da256c8
BLAKE2b-256 89c15fbf65913844bfb09c5955af482a7d7d0d8d10c60c5a9f160b6a6995c762

See more details on using hashes here.

File details

Details for the file dtcc_core-0.9.4-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for dtcc_core-0.9.4-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 2245837a7972cf5e48b3c363bd82ec01c8ce3ec24316745b57728fdbbbb5c877
MD5 155dbc90d69a2e2178d3bd28d23f8453
BLAKE2b-256 ac96525916a97606415c959427e0e6f1e4a8a94d6d3003cf638a67b3abb5fddd

See more details on using hashes here.

File details

Details for the file dtcc_core-0.9.4-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dtcc_core-0.9.4-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e1e425d75eee30976f22a32f7fa658506fce93d7d57a2a7ac4ac6ea8632488c5
MD5 6f70d4096f3d5dfaa1491c96b5fa2208
BLAKE2b-256 ed44c4e6a8e21c19de9a6cf3b6fc1bf089e67f5561534273fbc256a325c23fc1

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page