Skip to main content

Read nodes and elements from LS-DYNA decks.

Project description

LS-DYNA Mesh Reader

This library can be used to read in LS-DYNA meshes stored within keyword (*.k, *.key, *.dyn) files, also known as keyword format "input decks". Full documentation for this repository can be found at lsdyna-mesh-reader Documentation.

Many of these example files were obtained from the excellent documentation at LS-DYNA Examples.

Motivation

Despite its popularity, there doesn't appear to be a reader for LS-DYNA keyword files. I need a reader for a closed source project and hope that this helps someone else who also wishes to read in these files. It borrows from mapdl-archive as MAPDL also follows many of the same FORTRAN conventions when writing out FEMs.

Installation

Install the fully featured reader with visualization with:

pip install lsdyna-mesh-reader[pyvista]

If you only need the node and element arrays and not any VTK features (e.g. plotting or UnstructuredGrid representation), install the basic library with:

pip install lsdyna-mesh-reader

Examples

Before going through a basic example, let's talk about how these "decks" are organized. Each keyword file contains "keywords" that describe the start of sections of "cards". This terminology dates back to when DYNA3D was developed in 1976 where programs were written on punch cards.

To read in nodes and elements, we have to read in one or more node and element sections, each starting with *NODE or *ELEMENT_SOLID. This library loads in those raw sections as well as parsed sections as a higher level abstraction.

Let's start by loading the Contact Eroding I example deck.

Load the birdball deck.

>>> import lsdyna_mesh_reader
>>> from lsdyna_mesh_reader import examples
>>> deck = lsdyna_mesh_reader.Deck(examples.birdball)
LSDYNA Deck with:
  Node sections:              1
  Element Solid sections:     1
  Element Shell sections:     1

We can now inspect one of the node sections:

>>> node_section = deck.node_sections[0]
>>> node_section
NodeSection containing 1281 nodes

|  NID  |       X       |       Y       |       Z       |   tc   |   rc   |
|-------|---------------|---------------|---------------|--------|--------|
       1 -2.30940104e+00 -2.30940104e+00 -2.30940104e+00        0        0
       2 -2.03960061e+00 -2.03960061e+00 -2.03960061e+00        0        0
       3 -1.76980031e+00 -1.76980031e+00 -1.76980031e+00        0        0
       4 -1.50000000e+00 -1.50000000e+00 -1.50000000e+00        0        0
       5 -2.59364843e+00 -1.59561157e+00 -2.59364843e+00        0        0
       6 -2.22909880e+00 -1.39707434e+00 -2.22909880e+00        0        0
       7 -1.86454940e+00 -1.19853711e+00 -1.86454940e+00        0        0
       8 -1.50000000e+00 -1.00000000e+00 -1.50000000e+00        0        0
       9 -2.76911068e+00 -8.14893484e-01 -2.76911068e+00        0        0
      10 -2.34607387e+00 -7.09928930e-01 -2.34607387e+00        0        0
...

We can directly access the node IDs and arrays of the node section:

Node IDs

>>> node_section.nid
array([   1,    2,    3, ..., 1342, 1343, 1344], dtype=int32)

Node coordinates

>>> node_section.coordinates
array([[ -2.30940104,  -2.30940104,  -2.30940104],
       [ -2.03960061,  -2.03960061,  -2.03960061],
       [ -1.76980031,  -1.76980031,  -1.76980031],
       ...,
       [ -4.        , -10.        ,   0.        ],
       [ -2.        , -10.        ,   0.        ],
       [  0.        , -10.        ,   0.        ]])

The same can be done for both the solid and shell element sections.

>>> deck.element_solid_sections  # or deck.element_shell_sections
[ElementSolidSection containing 816 elements

 |  EID  |  PID  |  N1   |  N2   |  N3   |  N4   |  N5   |  N6   |  N7   |  N8   |
 |-------|-------|-------|-------|-------|-------|-------|-------|-------|-------|
        1       1       1       2       6       5      17      18      22      21
        2       1       2       3       7       6      18      19      23      22
        3       1       3       4       8       7      19      20      24      23
        4       1       5       6      10       9      21      22      26      25
        5       1       6       7      11      10      22      23      27      26
        6       1       7       8      12      11      23      24      28      27
        7       1       9      10      14      13      25      26      30      29
        8       1      10      11      15      14      26      27      31      30
        9       1      11      12      16      15      27      28      32      31
       10       1      17      18      22      21      33      34      38      37
 ...]

Element IDs

>>> section = deck.element_solid_sections[0]
>>> section.eid
array([  1,   2,   3, ..., 814, 815, 816], dtype=int32)

Node IDs of the elements

>>>
array([   1,    2,    6, ..., 1256, 1267, 1266], dtype=int32)

The elements are stored as a single contiguous array for efficiency and can be split up via:

>>> import numpy as np
>>> elements = np.split(section.node_ids, section.node_id_offsets[1:-1])
[array([ 1,  2,  6,  5, 17, 18, 22, 21], dtype=int32),
 array([ 2,  3,  7,  6, 18, 19, 23, 22], dtype=int32),
...
]

If you have pyvista installed or installed the library with pip install lsdyna-mesh-reader[pyvista], you can convert the mesh to a single unstructured grid:

>>> grid = deck.to_grid()
>>> grid
UnstructuredGrid (0x70d5d723bc40)
  N Cells:    916
  N Points:   1281
  X Bounds:   -2.000e+01, 2.220e-15
  Y Bounds:   -1.000e+01, 4.000e+00
  Z Bounds:   -2.000e+01, 4.441e-15
  N Arrays:   2

This lets you plot, save, or perform other operations on the mesh via PyVista. For example, you could plot the resulting mesh. Here's a full example using the Yaris Static Suspension System Loading Examplew.

>>> filename = "YarisD_V2g_shock_abs_load_01.k"
>>> deck = Deck(filename)
>>> grid = deck.to_grid()
>>> grid.plot(color="w", smooth_shading=True, show_edges=True)

Yaris Static Suspension Mesh

Caveats and Limitations

As of now, limited testing has been performed on this library and you may find that it fails to load complex or simple keyword decks.

Additionally, this reader only supports the following keywords:

  • *NODE
  • *ELEMENT_SHELL
  • *ELEMENT_SOLID
  • *ELEMENT_TSHELL (note: sections encoded as solid sections)

The VTK UnstructuredGrid contains only the linear element conversion of the underlying LS-DYNA elements, and only supports VTK_QUAD, VTK_TRIANGLE, VTK_TETRA, VTK_WEDGE, and VTK_HEXAHEDRAL.

Issues and Contributing

Feel free to open an Issue in this repository with any features you'd like me to add or bugs you need fixed.

If you'd like to contribute, please see CONTRIBUTING.md.

License

Source and content is under the MIT License, except for the LS-DYNA artifacts, which retain their original license from LS-DYNA and Ansys.

Note that the example files used here were downloaded from LS-DYNA Examples and have the following usage license as noted on the website:

The input files and several class notes are available for download. The
download is free of charge, a login is not required. All examples are
presented with a brief description. You may find an example by checking a
specific class or by using the search functionality of the site.

The content is prepared for educational purposes. Hence, material
properties and other parameters might be non-physic for simplification.

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.

lsdyna_mesh_reader-0.1.6-cp312-abi3-win_amd64.whl (719.0 kB view details)

Uploaded CPython 3.12+Windows x86-64

lsdyna_mesh_reader-0.1.6-cp312-abi3-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (733.5 kB view details)

Uploaded CPython 3.12+manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

lsdyna_mesh_reader-0.1.6-cp312-abi3-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (726.8 kB view details)

Uploaded CPython 3.12+manylinux: glibc 2.26+ ARM64manylinux: glibc 2.28+ ARM64

lsdyna_mesh_reader-0.1.6-cp312-abi3-macosx_11_0_arm64.whl (712.7 kB view details)

Uploaded CPython 3.12+macOS 11.0+ ARM64

lsdyna_mesh_reader-0.1.6-cp312-abi3-macosx_10_14_x86_64.whl (717.7 kB view details)

Uploaded CPython 3.12+macOS 10.14+ x86-64

lsdyna_mesh_reader-0.1.6-cp311-cp311-win_amd64.whl (721.2 kB view details)

Uploaded CPython 3.11Windows x86-64

lsdyna_mesh_reader-0.1.6-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (738.1 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

lsdyna_mesh_reader-0.1.6-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (730.7 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.26+ ARM64manylinux: glibc 2.28+ ARM64

lsdyna_mesh_reader-0.1.6-cp311-cp311-macosx_11_0_arm64.whl (714.8 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

lsdyna_mesh_reader-0.1.6-cp311-cp311-macosx_10_14_x86_64.whl (719.6 kB view details)

Uploaded CPython 3.11macOS 10.14+ x86-64

lsdyna_mesh_reader-0.1.6-cp310-cp310-win_amd64.whl (721.4 kB view details)

Uploaded CPython 3.10Windows x86-64

lsdyna_mesh_reader-0.1.6-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (738.4 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

lsdyna_mesh_reader-0.1.6-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (731.0 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.26+ ARM64manylinux: glibc 2.28+ ARM64

lsdyna_mesh_reader-0.1.6-cp310-cp310-macosx_11_0_arm64.whl (715.0 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

lsdyna_mesh_reader-0.1.6-cp310-cp310-macosx_10_14_x86_64.whl (719.8 kB view details)

Uploaded CPython 3.10macOS 10.14+ x86-64

File details

Details for the file lsdyna_mesh_reader-0.1.6-cp312-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for lsdyna_mesh_reader-0.1.6-cp312-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 e45a19542a10200c3623933685bf2f8ddf25a1cf96f448f8df3ea5238167284e
MD5 629e983724c3aa71cc02f5c555871fe9
BLAKE2b-256 f18216495cb8a8a28fe7449b98f3e6f3653b3ee23b03a9d8d8ef7b056ba61d7e

See more details on using hashes here.

Provenance

The following attestation bundles were made for lsdyna_mesh_reader-0.1.6-cp312-abi3-win_amd64.whl:

Publisher: testing-and-deployment.yml on akaszynski/lsdyna-mesh-reader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file lsdyna_mesh_reader-0.1.6-cp312-abi3-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for lsdyna_mesh_reader-0.1.6-cp312-abi3-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ee10a35f04c623e500f85e324354cf9b85680f47b56f3237433d8258be9e8c5d
MD5 abdbfd96d9b240c9c3d5f3823e65a6a1
BLAKE2b-256 9dbfc02e0d25db444a86e6a0f3a8521d3677286c26bb5faa0f54453969f3422b

See more details on using hashes here.

Provenance

The following attestation bundles were made for lsdyna_mesh_reader-0.1.6-cp312-abi3-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: testing-and-deployment.yml on akaszynski/lsdyna-mesh-reader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file lsdyna_mesh_reader-0.1.6-cp312-abi3-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for lsdyna_mesh_reader-0.1.6-cp312-abi3-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 fd475c6cf9f1a09940b11bd47986a33e716038df6d4b89c2008901f2cfb84144
MD5 11f31e5f44e82b1215fcc18f6d8fd8bd
BLAKE2b-256 5af25cc51050976b05a2c666a1133f9af4e97ba536294007e277eaf38cfd0f03

See more details on using hashes here.

Provenance

The following attestation bundles were made for lsdyna_mesh_reader-0.1.6-cp312-abi3-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl:

Publisher: testing-and-deployment.yml on akaszynski/lsdyna-mesh-reader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file lsdyna_mesh_reader-0.1.6-cp312-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for lsdyna_mesh_reader-0.1.6-cp312-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 77b4465c02bd28931c0c1be51c4e702901a3f298c52ca6e82d786544ba9962b2
MD5 ed03e0a9b331eaa0d114e8d1ce8d2834
BLAKE2b-256 ee66d9209fd838b2fc5e21acffd18b9533388fc0ece2fa382372788aae93d853

See more details on using hashes here.

Provenance

The following attestation bundles were made for lsdyna_mesh_reader-0.1.6-cp312-abi3-macosx_11_0_arm64.whl:

Publisher: testing-and-deployment.yml on akaszynski/lsdyna-mesh-reader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file lsdyna_mesh_reader-0.1.6-cp312-abi3-macosx_10_14_x86_64.whl.

File metadata

File hashes

Hashes for lsdyna_mesh_reader-0.1.6-cp312-abi3-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 df4780469ec0c7404797d08c25dc118ecea10ee292ec7f9a93240005d8c9d73d
MD5 79760ddc3b11af7b28f737f4a370cef8
BLAKE2b-256 096addd5d86ef229c0be877b2083bffbf0ff77071449e922e2d7c2ad57332468

See more details on using hashes here.

Provenance

The following attestation bundles were made for lsdyna_mesh_reader-0.1.6-cp312-abi3-macosx_10_14_x86_64.whl:

Publisher: testing-and-deployment.yml on akaszynski/lsdyna-mesh-reader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file lsdyna_mesh_reader-0.1.6-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for lsdyna_mesh_reader-0.1.6-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 d0a466f715ae7e75b4d8d848223ef67802636e44cd37706ebab7a8439c205b31
MD5 e2fdb819b9b4ba70bede6287e9e7fd0d
BLAKE2b-256 eeb4d5502e5823014343d719d2ef22417be395c7512a57e124b9c375d6626f58

See more details on using hashes here.

Provenance

The following attestation bundles were made for lsdyna_mesh_reader-0.1.6-cp311-cp311-win_amd64.whl:

Publisher: testing-and-deployment.yml on akaszynski/lsdyna-mesh-reader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file lsdyna_mesh_reader-0.1.6-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for lsdyna_mesh_reader-0.1.6-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 15ba4bb17cd9589278964b504aa33bbbc7a3f9190ce72c2d87f9dd92e18d12e1
MD5 7f30b6e576ab8793b413598d842f439a
BLAKE2b-256 1742561b522d722e05426198e6c4c9d6b49906b3b4208e9683a566199723507b

See more details on using hashes here.

Provenance

The following attestation bundles were made for lsdyna_mesh_reader-0.1.6-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: testing-and-deployment.yml on akaszynski/lsdyna-mesh-reader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file lsdyna_mesh_reader-0.1.6-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for lsdyna_mesh_reader-0.1.6-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 0117a108ed468fbe6338f49c3d2682d933d0ecb41259f88aaced342a126cae95
MD5 28f22e528a3e008938c7015c27f0bfaf
BLAKE2b-256 43384deca397bc896096ac117c8a37b23bee5349d5095daef29c1c3109f6922d

See more details on using hashes here.

Provenance

The following attestation bundles were made for lsdyna_mesh_reader-0.1.6-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl:

Publisher: testing-and-deployment.yml on akaszynski/lsdyna-mesh-reader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file lsdyna_mesh_reader-0.1.6-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for lsdyna_mesh_reader-0.1.6-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f04f62a682924113708df21096dbce454c956ab204f1d6b634e3a2beafb72b2e
MD5 f99d90b2c7f75ff4016b7160988b2669
BLAKE2b-256 e08a5e3d4188823f9e8739cf2fa8b79be1fc1b15b12b56a25d7c5e537162f9dc

See more details on using hashes here.

Provenance

The following attestation bundles were made for lsdyna_mesh_reader-0.1.6-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: testing-and-deployment.yml on akaszynski/lsdyna-mesh-reader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file lsdyna_mesh_reader-0.1.6-cp311-cp311-macosx_10_14_x86_64.whl.

File metadata

File hashes

Hashes for lsdyna_mesh_reader-0.1.6-cp311-cp311-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 c67f20e0b993bbad168fc2adc12761a60de701fa0444a90094313d7c4b8ffd81
MD5 ee3b1c054d06aab71d57a5a456ac462a
BLAKE2b-256 1496a96d57688448c72bb6e81a1775a366ca51adcf58502a7829a04d48f659d8

See more details on using hashes here.

Provenance

The following attestation bundles were made for lsdyna_mesh_reader-0.1.6-cp311-cp311-macosx_10_14_x86_64.whl:

Publisher: testing-and-deployment.yml on akaszynski/lsdyna-mesh-reader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file lsdyna_mesh_reader-0.1.6-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for lsdyna_mesh_reader-0.1.6-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 bfa40eec6e236b56f35250b9b23888e1a327d3ba6749f4f782c54766e12076de
MD5 40deb01fed9424c2fc9213b9675eaf1e
BLAKE2b-256 792ec94ba99d10b9329c96278d22bd112e0f1a905593c29cd16ed7bc0f113dcc

See more details on using hashes here.

Provenance

The following attestation bundles were made for lsdyna_mesh_reader-0.1.6-cp310-cp310-win_amd64.whl:

Publisher: testing-and-deployment.yml on akaszynski/lsdyna-mesh-reader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file lsdyna_mesh_reader-0.1.6-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for lsdyna_mesh_reader-0.1.6-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 122b605946d68e8c035ae31d11a19e070efa4345816ce871e300f861baa6b27a
MD5 f149b1545aa736943b8588c0f72bc9b6
BLAKE2b-256 780c1cad359890d4323308456196d9399c166ae817e74a2a272d0b503d856128

See more details on using hashes here.

Provenance

The following attestation bundles were made for lsdyna_mesh_reader-0.1.6-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: testing-and-deployment.yml on akaszynski/lsdyna-mesh-reader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file lsdyna_mesh_reader-0.1.6-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for lsdyna_mesh_reader-0.1.6-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 d033cb3f96d28cd824cb420d39be985c8fe37caecca4aa4a66eec4c8f12e4662
MD5 439c8e14ed09e3aa932cd1e9bf4489e8
BLAKE2b-256 cb5bc213577f3d34b6145f20d19c7bb2261e9065d98ee365c6621e2f32c2156d

See more details on using hashes here.

Provenance

The following attestation bundles were made for lsdyna_mesh_reader-0.1.6-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl:

Publisher: testing-and-deployment.yml on akaszynski/lsdyna-mesh-reader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file lsdyna_mesh_reader-0.1.6-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for lsdyna_mesh_reader-0.1.6-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 20caddc9a6d796ebd4936e9578fbed19b8ec2c0fd6f198f526107d294da7ad8b
MD5 9b2372739f3eac1db01a4c5ffec6bd9c
BLAKE2b-256 5c19a608879e5bec3cd4877ffa1c144c49972f22faa8d798facdf4c15c461866

See more details on using hashes here.

Provenance

The following attestation bundles were made for lsdyna_mesh_reader-0.1.6-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: testing-and-deployment.yml on akaszynski/lsdyna-mesh-reader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file lsdyna_mesh_reader-0.1.6-cp310-cp310-macosx_10_14_x86_64.whl.

File metadata

File hashes

Hashes for lsdyna_mesh_reader-0.1.6-cp310-cp310-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 318ae4f7c470e231e300d2bf90b2d936953ddeaf95c9cdd1103c2fae58835f2b
MD5 ca5d9c141a998480ae4b90cd200a9058
BLAKE2b-256 df3894299181237419222a7cfee0aedd9e6f4d8bb4c9cb1ea94ce1bf6d9a9494

See more details on using hashes here.

Provenance

The following attestation bundles were made for lsdyna_mesh_reader-0.1.6-cp310-cp310-macosx_10_14_x86_64.whl:

Publisher: testing-and-deployment.yml on akaszynski/lsdyna-mesh-reader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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