https://github.com/andr1976/ramdecom
Pipeline decompression wavespeed calculation
Science Score: 23.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
○codemeta.json file
-
○.zenodo.json file
-
✓DOI references
Found 10 DOI reference(s) in README -
✓Academic publication links
Links to: acs.org, zenodo.org -
○Committers with academic emails
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (15.8%) to scientific vocabulary
Keywords
Repository
Pipeline decompression wavespeed calculation
Basic Info
Statistics
- Stars: 4
- Watchers: 1
- Forks: 0
- Open Issues: 1
- Releases: 2
Topics
Metadata Files
README.md
RAMDECOM
Calculation routine to calculate the decompression wave speed for pipeline design to ensure adequate pipe thickness and/or Charpy-V hardness so a running fracture can be arrested. The program is mainly targeted for CO2, but almost any fluid can be modelled.
This code is developed by Anders Andreasen and is open source and published under an MIT license . For pure fluids, calculations can be made using open source tools only (CoolProp). However, if calculations shall be made for mixtures a REFPROP license and installation is required.
Installation
The code is still under heavy development and official releases and pip/conda packages have not been prepared yet. Installation is done by cloning the code to a local directory and running
cd directory
pip install -e .
This way a dynamic link is created in the local site-packages directory. Any changes to the code will be dynamically updated, so no need to run pip install -e every time the code is updated.
Usage
Import main class
from ramdecom import wavespeed
Define input
input = {}
input['eos'] = 'HEOS'
input['fluid'] = 'CO2'
input['pressure'] = 130e5
input['temperature'] = 320
The equation of state can either be HEOS for the CoolProp pure component Helmholtz energy formulation or REFPROP. For mixtures only REFPROP works. In case REFPROP is selected additional optional input for specifying either the GERG-2008 or the Peng-Robinson equation of state can be given. The follwoing optional input can also be provided:
input['extrapolate'] = True
which will extrapolate the end point in the decompression curve to zero pressure.
input['pressure_step'] = 1e5
defines the step length when stepping down from the initial pressure along the isentropic path. The default value is 1 bar and has been found to be adequate.
input['pressure_break'] = 1e5
can break the isentropic decompression calculation e.g. if the calculation routine in the thermodyanmic backend raises an exception. By breaking before the exception is raised, partial results can be inspected and visualised.
Ininitialize and run
ws = wavespeed.WaveSpeed(input)
ws.run()
Plotting
ws.plot_decom(filename='out.png',data=data)
If the optional input data (experimental data or other calculation for comparison) is provided this shall be a nx2 array with decompression wave speed in the first column and pressure in the second column. If the optional input filename is not provided the plot is displayed on-screen without being saved to file.
Other data output
A data file with calculation results can be saved to csv
ws.get_result_file()
The results are saved to decom_result.csv or if the optional input filename is given, it is saved to the provided path.
Methods and theory
Some basic theory and description of the code is included with the draft paper located in
ramdecom\paper\
Further some relevant references for further reading:
[1] http://pubs.acs.org/doi/abs/10.1021/ie4033999
[2] https://pubs.acs.org/doi/10.1021/acsomega.1c01360
[3] https://doi.org/10.18434/T4/1502528
[4] https://doi.org/10.1016/j.psep.2018.08.034
[5] https://doi.org/10.1115/1.4031941
[6] https://doi.org/10.1115/1.4034016
Owner
- Name: Anders Andreasen
- Login: andr1976
- Kind: user
- Location: Esbjerg, Denmark
- Company: Ramboll Energy
- Repositories: 3
- Profile: https://github.com/andr1976
Chemical Engineer, working within process and energy technology
GitHub Events
Total
- Push event: 1
- Fork event: 1
- Create event: 1
Last Year
- Push event: 1
- Fork event: 1
- Create event: 1
Committers
Last synced: about 2 years ago
Top Committers
| Name | Commits | |
|---|---|---|
| andr1976 | 5****6 | 88 |
| Anders Andreasen | a****a@r****m | 13 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: about 2 years ago
All Time
- Total issues: 1
- Total pull requests: 6
- Average time to close issues: N/A
- Average time to close pull requests: less than a minute
- Total issue authors: 1
- Total pull request authors: 1
- Average comments per issue: 0.0
- Average comments per pull request: 0.0
- Merged pull requests: 6
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 1
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 1
- Pull request authors: 0
- Average comments per issue: 0.0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- kamsyuen (1)
Pull Request Authors
- andr1976 (6)
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- Cerberus >=1.3.3
- CoolProp >=6.4.1
- PyYAML >=5.4.1
- matplotlib >=3.3.3
- numpy >=1.19.5
- pandas >=1.1.4
- pytest *
- setuptools *
- streamlit >=0.89
- actions/checkout v3 composite
- actions/setup-python v3 composite
- codecov/codecov-action v1 composite