# Introduction
Sustainable Digital models for engineering assets built with sustainable engineering processes and solutions. The objective of digital models is to utilize a single source of ascii inputs (promoting single source of truth) to generate equivalent analytical models to encompass lifecycle operations of a product.
These operations include (and not limited to) the following:
- Analytical calculations
- Computational analysis
- 3D CAD models
- 3D animations
- Drawing automation
Dedicated to my idol and a lifelong chief engineer, **Mark Cerkovnik**. His insights shaped major portions of my life and this repository.
# Summary
- High level vision proposed:
<img src="docs/digital_model_architecure.svg" width=auto, height=auto/>
The library is intended to get traction from stretched engineering teams. Teams using this can take away some good ideas generated from leading/mentoring over 200 SURF engineers over 20 years of hands-on engineering experience. The main objectives of the library are:
- Single ascii data source of truth: generate fe models, analytical calculations, 3d cad models, 3d animations, drawings using a single source of truth
- Modularity : engineering assets can be imported into sofware using .yml files
- Standardize naming conventions: for cross-team/company collaboration
- Reusability of components: do once, use many times
- Analytical QA: If certain tasks can be done analytically, verify the outputs from analytical calculations vs. Orcaflex outputs. eg: Weights of components expected vs. model
- A major impact will be in the QA of the work for the end users as well as the responsible leads.
- Avoid excel to eliminate manual steps. Helps in automation of tasks and no/less room for error.
# Usage
Using the Repository:
- The repository is intended to be used as a library for engineering assets. The library is intended to be used by engineers to generate analytical models, computational models, 3D CAD models, 3D animations, and drawings.
- The repository is organized in following key folders:
- docs: Contains the documentation for the library
- src: Contains the source code for the library
- src/tests: Contains the test cases for the library
A quick way to running code is:
- Create a virtual environment:
- Use [conda yaml file](https://raw.githubusercontent.com/vamseeachanta/digitalmodel/master/dev_tools/environment.yml) to create a new environment
- (or) by installing [digitalmodel]((https://github.com/vamseeachanta/digitalmodel)) package in an environment
- Run the following batch files
- Download this [digitalmodel repository](https://github.com/vamseeachanta/digitalmodel)
- activate environment
- Change command line to "digitalmodel" (outside not in src) folder
- Run the following python files in tests:
- python src\digitalmodel\tests\ {change_to_relevant}.py
- i.e. for catenary riser, python src\digitalmodel\tests\test_catenary_riser.py
- (or) Run the following batch files in tests:
- python src\digitalmodel\tests\ {change_to_relevant}.bat
- i.e. for catenary riser, python src\digitalmodel\tests\test_catenary_riser.bat
## Assets
### SALM
SALM (Single Anchor Line Mooring)
Relevant files:
- python src\digitalmodel\tests\test_fea_model_salm_buoy_01.py
- python src\digitalmodel\tests\test_fea_model_salm_buoy_02.py
### Ships or vessels
Light Service Vessels
Intervention vessels
### Risers
#### Catenary Risers (SCR, SLWR)
SCR - Simple Catenary Riser
SLWR - Simple Lazy Wave Riser
Relevant files:
- python src\digitalmodel\tests\test_catenary_riser.py
- python src\digitalmodel\tests\test_catenary_riser.bat
### Pipelines
### Flexibles or Umbilicals
### Umbilicals
### Rigid Jumpers
## Example Software Runs
### OrcaFlex
Relevant files:
- python src\digitalmodel\tests\test_orcaflex_analysis.py
## Calculations
### Time Series
Statics
- Fast Fourier Transform analysis as follows:
- FFT
- iFFT
- Peak energy frequency
- Perform signal integration
## References
### Manufacturing/Fabrication
[ProdSim python packages](https://github.com/FuchsTom/ProdSim)
[ProdSim Background: An Open-source Python Package for Generating High-resolution Synthetic Manufacturing Data on Product, Machine and Shop-Floor Levels](https://www.sciencedirect.com/science/article/pii/S2212827122004395)
### dummy section
Raw data
{
"_id": null,
"home_page": null,
"name": "digitalmodel",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": null,
"keywords": "finite element, asset representation, structural, physical, engineering, animation, lifecycle, lifecycle analysis, single source of truth, digital model, digital twin",
"author": null,
"author_email": "Vamsee Achanta <vamsee.achanta@aceengineer.com>",
"download_url": "https://files.pythonhosted.org/packages/44/c8/b977c8f156ef42ea39990705b0ca4def189ebad47060fe2ddc714b8e2070/digitalmodel-0.0.9.tar.gz",
"platform": null,
"description": "# Introduction\r\n\r\nSustainable Digital models for engineering assets built with sustainable engineering processes and solutions. The objective of digital models is to utilize a single source of ascii inputs (promoting single source of truth) to generate equivalent analytical models to encompass lifecycle operations of a product.\r\n\r\nThese operations include (and not limited to) the following:\r\n\r\n- Analytical calculations\r\n- Computational analysis\r\n- 3D CAD models\r\n - 3D animations\r\n - Drawing automation\r\n\r\nDedicated to my idol and a lifelong chief engineer, **Mark Cerkovnik**. His insights shaped major portions of my life and this repository.\r\n\r\n# Summary\r\n\r\n- High level vision proposed:\r\n<img src=\"docs/digital_model_architecure.svg\" width=auto, height=auto/>\r\n\r\nThe library is intended to get traction from stretched engineering teams. Teams using this can take away some good ideas generated from leading/mentoring over 200 SURF engineers over 20 years of hands-on engineering experience. The main objectives of the library are:\r\n\r\n- Single ascii data source of truth: generate fe models, analytical calculations, 3d cad models, 3d animations, drawings using a single source of truth\r\n- Modularity : engineering assets can be imported into sofware using .yml files\r\n- Standardize naming conventions: for cross-team/company collaboration\r\n- Reusability of components: do once, use many times\r\n- Analytical QA: If certain tasks can be done analytically, verify the outputs from analytical calculations vs. Orcaflex outputs. eg: Weights of components expected vs. model\r\n- A major impact will be in the QA of the work for the end users as well as the responsible leads.\r\n- Avoid excel to eliminate manual steps. Helps in automation of tasks and no/less room for error.\r\n\r\n# Usage\r\n\r\nUsing the Repository:\r\n\r\n- The repository is intended to be used as a library for engineering assets. The library is intended to be used by engineers to generate analytical models, computational models, 3D CAD models, 3D animations, and drawings.\r\n- The repository is organized in following key folders:\r\n - docs: Contains the documentation for the library\r\n - src: Contains the source code for the library\r\n - src/tests: Contains the test cases for the library\r\n\r\nA quick way to running code is:\r\n - Create a virtual environment:\r\n - Use [conda yaml file](https://raw.githubusercontent.com/vamseeachanta/digitalmodel/master/dev_tools/environment.yml) to create a new environment\r\n - (or) by installing [digitalmodel]((https://github.com/vamseeachanta/digitalmodel)) package in an environment\r\n\r\n- Run the following batch files\r\n - Download this [digitalmodel repository](https://github.com/vamseeachanta/digitalmodel)\r\n - activate environment\r\n - Change command line to \"digitalmodel\" (outside not in src) folder\r\n - Run the following python files in tests:\r\n - python src\\digitalmodel\\tests\\ {change_to_relevant}.py\r\n - i.e. for catenary riser, python src\\digitalmodel\\tests\\test_catenary_riser.py\r\n - (or) Run the following batch files in tests:\r\n - python src\\digitalmodel\\tests\\ {change_to_relevant}.bat\r\n - i.e. for catenary riser, python src\\digitalmodel\\tests\\test_catenary_riser.bat\r\n\r\n## Assets\r\n\r\n### SALM\r\n\r\nSALM (Single Anchor Line Mooring)\r\n\r\nRelevant files:\r\n\r\n- python src\\digitalmodel\\tests\\test_fea_model_salm_buoy_01.py\r\n- python src\\digitalmodel\\tests\\test_fea_model_salm_buoy_02.py\r\n\r\n### Ships or vessels\r\n\r\nLight Service Vessels\r\nIntervention vessels\r\n\r\n### Risers\r\n\r\n#### Catenary Risers (SCR, SLWR)\r\n\r\nSCR - Simple Catenary Riser\r\nSLWR - Simple Lazy Wave Riser\r\n\r\nRelevant files:\r\n\r\n- python src\\digitalmodel\\tests\\test_catenary_riser.py\r\n- python src\\digitalmodel\\tests\\test_catenary_riser.bat\r\n\r\n### Pipelines\r\n\r\n### Flexibles or Umbilicals\r\n\r\n### Umbilicals\r\n\r\n### Rigid Jumpers\r\n\r\n## Example Software Runs\r\n\r\n### OrcaFlex\r\n\r\nRelevant files:\r\n\r\n- python src\\digitalmodel\\tests\\test_orcaflex_analysis.py\r\n\r\n## Calculations\r\n\r\n### Time Series\r\n\r\nStatics\r\n\r\n- Fast Fourier Transform analysis as follows:\r\n - FFT\r\n - iFFT\r\n - Peak energy frequency\r\n - Perform signal integration\r\n\r\n## References\r\n\r\n### Manufacturing/Fabrication\r\n\r\n[ProdSim python packages](https://github.com/FuchsTom/ProdSim)\r\n[ProdSim Background: An Open-source Python Package for Generating High-resolution Synthetic Manufacturing Data on Product, Machine and Shop-Floor Levels](https://www.sciencedirect.com/science/article/pii/S2212827122004395)\r\n\r\n### dummy section\r\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "engineering asset digital model(s) for life cycle analysis",
"version": "0.0.9",
"project_urls": {
"Documentation": "https://github.com/vamseeachanta/digitalmodel/blob/master/README.md",
"Homepage": "https://github.com/vamseeachanta/digitalmodel",
"Repository": "https://github.com/vamseeachanta/digitalmodel"
},
"split_keywords": [
"finite element",
" asset representation",
" structural",
" physical",
" engineering",
" animation",
" lifecycle",
" lifecycle analysis",
" single source of truth",
" digital model",
" digital twin"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "2c7d134019d0c4a503b7280c50dff1e35b417861960edf357ef8d1cefddaafd4",
"md5": "79696f5f14a7641b44fec8919f540d7b",
"sha256": "9425f910357b445bb8d56e9b31bad608d96b9afeaf27636b1bb48b1fa18b73b3"
},
"downloads": -1,
"filename": "digitalmodel-0.0.9-py3-none-any.whl",
"has_sig": false,
"md5_digest": "79696f5f14a7641b44fec8919f540d7b",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 293964,
"upload_time": "2025-07-15T04:45:42",
"upload_time_iso_8601": "2025-07-15T04:45:42.485148Z",
"url": "https://files.pythonhosted.org/packages/2c/7d/134019d0c4a503b7280c50dff1e35b417861960edf357ef8d1cefddaafd4/digitalmodel-0.0.9-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "44c8b977c8f156ef42ea39990705b0ca4def189ebad47060fe2ddc714b8e2070",
"md5": "993d0f5446e9f0890c582c58c01df96d",
"sha256": "3ab679d0072096dcfd5c1c443f43916896b235406e8bf2ca8cef1086820f9901"
},
"downloads": -1,
"filename": "digitalmodel-0.0.9.tar.gz",
"has_sig": false,
"md5_digest": "993d0f5446e9f0890c582c58c01df96d",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 224033,
"upload_time": "2025-07-15T04:45:44",
"upload_time_iso_8601": "2025-07-15T04:45:44.002359Z",
"url": "https://files.pythonhosted.org/packages/44/c8/b977c8f156ef42ea39990705b0ca4def189ebad47060fe2ddc714b8e2070/digitalmodel-0.0.9.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-07-15 04:45:44",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "vamseeachanta",
"github_project": "digitalmodel",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "digitalmodel"
}