https://github.com/hugomvale/pbepack
Package to solve population balance equations for particulate processes.
https://github.com/hugomvale/pbepack
aggregation breakage coagulation fortran pbe population-balance-equation
Last synced: 4 months ago
JSON representation
Package to solve population balance equations for particulate processes.
- Host: GitHub
- URL: https://github.com/hugomvale/pbepack
- Owner: HugoMVale
- License: mit
- Created: 2022-09-18T14:26:30.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2024-08-24T22:05:06.000Z (over 1 year ago)
- Last Synced: 2024-08-24T23:21:55.741Z (over 1 year ago)
- Topics: aggregation, breakage, coagulation, fortran, pbe, population-balance-equation
- Language: Fortran
- Homepage: https://hugomvale.github.io/pbepack/
- Size: 481 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# pbepack
[](https://github.com/HugoMVale/pbetools/actions)
[](https://codecov.io/gh/HugoMVale/pbepack)
[](https://github.com/topics/fortran)
## Status
`pbepack` is currently being developed and not yet ready for use.
## Description
`pbepack` is a modern-Fortran package to solve population balance equations (PBE) for one- and two-component aggregation processes using the (extended) fixed pivot method. For single component systems, the code implements the method of [Kumar & Ramkrishna (1996)](https://doi.org/10.1016/0009-2509(96)88489-2), and for bivariate aggregation the method of [Vale & McKenna (2005)](https://doi.org/10.1021/ie050179s).
## Underlying PBE
If the system is spatially homogeneous, a two-component aggregation process is described by the following PBE:
}}{{\partial&space;t}}&space;=&space;\\&space;&&space;\frac{1}{2}\int_0^x&space;{\int_0^y&space;{\beta&space;(x&space;-&space;x',y&space;-&space;y';x',y';t)n(x&space;-&space;x',y&space;-&space;y',t)n(x',y',t)&space;d&space;x'&space;d&space;y'}}&space;\\&space;&&space;-n(x,y,t)\int_0^\infty&space;{\int_0^\infty&space;{\beta&space;(x,y;x',y';t)n(x',y',t)d&space;x'&space;d&space;y'}}&space;\end{align*})
where
is the number of particles of state
per unit volume at time
and
is the aggregation rate coefficient. The internal coordinates
and
denote the amount (mass, moles, etc.) of each component in the particle.
## Getting started
### Build
The easiest way to build/test the code and run the examples is by means of [`fpm`](https://fpm.fortran-lang.org/en/index.html). To run a given example, just do:
```
fpm run --example "example-filename"
```
and the numerical results will be stored in the [`output`](/output) subfolder. You can then use the provided Python script to read the data and plot the results.
### Usage
comming soon...
## Examples
comming soon...