particle_conversion

Transient ODE Solver of heterogeneous particle conversion processes for combustion or gasification processes

https://github.com/tfoerst3r/particle_conversion

Science Score: 57.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 4 DOI reference(s) in README
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (16.7%) to scientific vocabulary
Last synced: 7 months ago · JSON representation ·

Repository

Transient ODE Solver of heterogeneous particle conversion processes for combustion or gasification processes

Basic Info
  • Host: GitHub
  • Owner: tfoerst3r
  • License: other
  • Language: Python
  • Default Branch: main
  • Homepage:
  • Size: 218 KB
Statistics
  • Stars: 1
  • Watchers: 0
  • Forks: 1
  • Open Issues: 19
  • Releases: 2
Created almost 3 years ago · Last pushed almost 3 years ago
Metadata Files
Readme License Citation

README.md

Logo

Particle Conversion Model

This model simulates the conversion process, based on porous carbonaceous materials, like coal. It is a zero dimensional model which solves the ODE conversion equation.

About the Project

The project simulates different model approaches for the conversion process of porous carbonaceous particle. The conversion process depends on a variety of property and conditions, like overall pressure. Be aware that this model only solve the conversion process depending on the input. No additional equations are solved. This includes energy or motion/diffusion specific processes.

Getting Started

Prerequisites

  • To work with the package you need to have at least Python 3.10 installed.

  • This project uses the Python dependency manager poetry (Installation guide for poetry)

    Example command line for Linux/Ubuntu:

    ~~~ $ curl -sSL https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py | python3 - ~~~

    or

    $ pip install poetry

Installation

Using the environment distributed with this model

Step 1. Clone the repository.

  • via ssh (first, create SSH key)

    ~~~ $ git clone --depth=1 --branch=main git@github.com:tfoerst3r/particle_conversion.git ~~~

  • or via https

    ~~~ $ git clone --depth=1 --branch=main https://github.com/tfoerst3r/particle_conversion.git ~~~

Alternatively, you can download source code directly via the download option on top of the repository page.

Step 2. Install required dependencies.

To build the package run the following in the root folder of the project:

$ poetry install

Using any other python environments

Poetry can build, so called wheels, which can be installed in any other python environment.

Step 1. Create the wheel or download the wheel

You can download any wheel via any desired CI job called "buildwheelpackage". Or build from scratch via the following step:

$ poetry build --format wheel

This will create a wheel file particle-conversion-*.whl in the folder ./dist.

Step 2. Installing the wheel

  • First you need to activate your desired python environment, e.g. $ source /path/to/your/env/bin/activate. And then install your the wheel.

$ pip install particle_conversion-*.whl

  • With $ which pconv you can check if the executable is in the desired environment.

Uninstall the module:

For uninstalling pconv in your current environment use:

~~~ $ pip uninstall pconv ~~~

Usage

Prerequisites

First you need to activate the environment you want to work in. Either use

  • the provided poetry environment

    $ poetry serve

  • or any other environment where you installed the provided wheel

    $ source /path/to/your/env/bin/activate

In both versions an executable pconv should be available. Alternatively you can run the CLI directly via:

$ poetry run pconv [OPTIONS]

Usage of the pconv script

Syntax

$ pconv --config [CONFIG FILE] --output [OUTPUT FILE]

For more help type:

$ pconv --help

Step 1. Choose the appropriate model settings and adapted the corresponding configuration file.

Step 2. Run the model with the desired output path.

Examples

default model

$ pconv --config ./config/base.toml --output ./output/base_output.csv

Graphical preview

No visualisation of the results are included in the package. But for displaying a *.csv the tool gnuplot can be used easily. You can use the headers defined in your output file.

Example in the gnuplot console

gnuplot gnuplot> set datafile separator comma gnuplot> plot 'your-csv-output-file.csv' using (column('Time')):(column('dXdt')) with lines

Contributing

We welcome your contribution!

The repository is still under development and any feedback, suggestions, technical contributions are highly welcome.

General Options:

  • open an issue, if you have improvement ideas
  • fork the project and contribute via merge request against the main branch of this repository

License

Please see the file LICENSE.md for further information about how the content is licensed.

Citation

If you are using this code in your publications, please refer to the following DOI Link for citation, or cite as:

Thomas Förster. (2023). Particle Conversion Solver: Testing tool for different conversion models via custom predefined boundary conditions. Zenodo. https://doi.org/10.5281/zenodo.7953765

Owner

  • Name: Thomas Foerster
  • Login: tfoerst3r
  • Kind: user
  • Location: Dresden, Germany
  • Company: HZDR

IT Consultant at HIFIS

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:
- family-names: "Förster"
  given-names: "Thomas"
  orcid: "https://orcid.org/0000-000"
title: "Particle Conversion Solver: Testing tool for different conversion models via custom predefined boundary conditions"
doi: 
date-released: 2023-02-08
url: "https://github.com/tfoerst3r/particle_conversion"

GitHub Events

Total
  • Watch event: 1
Last Year
  • Watch event: 1

Committers

Last synced: 8 months ago

All Time
  • Total Commits: 21
  • Total Committers: 1
  • Avg Commits per committer: 21.0
  • Development Distribution Score (DDS): 0.0
Past Year
  • Commits: 0
  • Committers: 0
  • Avg Commits per committer: 0.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Thomas Foerster 3****r 21

Issues and Pull Requests

Last synced: 8 months ago

All Time
  • Total issues: 50
  • Total pull requests: 24
  • Average time to close issues: 2 days
  • Average time to close pull requests: about 9 hours
  • Total issue authors: 1
  • Total pull request authors: 1
  • Average comments per issue: 0.1
  • Average comments per pull request: 0.08
  • Merged pull requests: 24
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • tfoerst3r (26)
Pull Request Authors
  • tfoerst3r (9)
Top Labels
Issue Labels
Pull Request Labels