KAPPA: Kinetic approach to physical processes in atmospheres library in C plus

l. Campoli, G.P. Oblapenko, E.V. Kustova

Research output

1 Citation (Scopus)

Abstract

KAPPA, an open-source software library for the computation of thermodynamic and transport properties in non-equilibrium gas flows and species production rates, is presented. Thermodynamic properties rely on custom databases which describe the characteristics of atoms and molecules and interaction features. Mixture thermodynamic properties are formulated from species quantities. Species production rates are based on elementary chemical reactions and vibrational energy transitions. Transport properties are derived from kinetic theory which provides relationships for transport coefficients depending on the flow model. Several levels of non-equilibrium flow description are implemented: the detailed state-to-state (STS) approach, multi-temperature and one-temperature models. Sets of transport coefficients depend on the deviation from equilibrium; in the state-to-state model, they include state-resolved diffusion coefficients for each pair of vibrational states. A highly modular, object-oriented application program interface (API) has been developed. The adopted object-oriented programming paradigm (OOP), along with the implemented models of state-resolved physico-chemical relaxation rates, is presented. The design of the library allows it to be easily included in existing CFD codes and is aimed at code reusability and readability. Program Title: KAPPA Program Files doi: http://dx.doi.org/10.17632/mrx9n35bvs.1 Licensing provisions: GNU General Public Licence, version 3. Programming language: C++; developed and tested with Intel Compiler v. 18.x and GNU. External routines/libraries: KAPPA must be linked to yaml-cpp [1] in order to read human-readable database files and to Armadillo [2] for solving algebraic linear systems. Nature of problem: Numerical computation of transport properties and rate exchange coefficients for non-equilibrium reacting flows. Solution method: Non-equilibrium reacting flow is treated by a rigorous state-to-state (STS) kinetic theory approach. Restrictions: At present, KAPPA is validated for computing transport properties and rate exchange coefficients using the state-to-state (STS) approach; 1- and 2-temperature models have still to be validated, but they are already implemented. C++ compiler is mandatory. Unusual features: KAPPA is an open-source object-oriented highly modular and easy-to-maintain C++ software library which implements rigorous mathematical kinetic theory models. Additional comments: KAPPA project adopts Git [3], a free and open source distributed version control system. A public repository dedicated to KAPPA project [4] has been created on github, a web-based hosting service for software development projects using git versioning system. Finally, a comprehensive documentation [5] is provided parsing source code comments by means of doxygen software [6]. References: [1] Yaml-cpp is a YAML parser and emitter in C++ matching the YAML 1.2 specification. https://github.com/jbeder/yaml-cpp. [2] Armadillo is a fast C++ matrix library with easy to use functions and syntax, deliberately similar to Matlab which uses template meta-programming techniques. https://sourceforge.net/projects/arma/files/armadillo-8.500.1.tar.zx. [3] Git, a free and open source distributed version control system. http://git-scm.com. [4] Github, a web-based hosting service for software development projects using git versioning system. https://github.com. [5] Official KAPPA documentation. https://github.com/lkampoli/kappa. [6] Doxygen, a documentation system for many programming languages. http://www.stack.nl/ dimitri/doxygen.

Original languageEnglish
Pages (from-to)244-267
Number of pages24
JournalComputer Physics Communications
Volume236
Early online date2 Nov 2018
DOIs
Publication statusPublished - 1 Mar 2019

Fingerprint

transport properties
atmospheres
Transport properties
Kinetics
Kinetic theory
documentation
computer programs
kinetics
kinetic theory
files
compilers
reacting flow
programming languages
Distributed parameter control systems
Thermodynamic properties
thermodynamic properties
Computer programming languages
Software engineering
Chemical relaxation
object-oriented programming

Scopus subject areas

  • Physics and Astronomy(all)
  • Hardware and Architecture

Cite this

@article{ef0e42818e594af08a1654b649fc475e,
title = "KAPPA: Kinetic approach to physical processes in atmospheres library in C plus",
abstract = "KAPPA, an open-source software library for the computation of thermodynamic and transport properties in non-equilibrium gas flows and species production rates, is presented. Thermodynamic properties rely on custom databases which describe the characteristics of atoms and molecules and interaction features. Mixture thermodynamic properties are formulated from species quantities. Species production rates are based on elementary chemical reactions and vibrational energy transitions. Transport properties are derived from kinetic theory which provides relationships for transport coefficients depending on the flow model. Several levels of non-equilibrium flow description are implemented: the detailed state-to-state (STS) approach, multi-temperature and one-temperature models. Sets of transport coefficients depend on the deviation from equilibrium; in the state-to-state model, they include state-resolved diffusion coefficients for each pair of vibrational states. A highly modular, object-oriented application program interface (API) has been developed. The adopted object-oriented programming paradigm (OOP), along with the implemented models of state-resolved physico-chemical relaxation rates, is presented. The design of the library allows it to be easily included in existing CFD codes and is aimed at code reusability and readability. Program Title: KAPPA Program Files doi: http://dx.doi.org/10.17632/mrx9n35bvs.1 Licensing provisions: GNU General Public Licence, version 3. Programming language: C++; developed and tested with Intel Compiler v. 18.x and GNU. External routines/libraries: KAPPA must be linked to yaml-cpp [1] in order to read human-readable database files and to Armadillo [2] for solving algebraic linear systems. Nature of problem: Numerical computation of transport properties and rate exchange coefficients for non-equilibrium reacting flows. Solution method: Non-equilibrium reacting flow is treated by a rigorous state-to-state (STS) kinetic theory approach. Restrictions: At present, KAPPA is validated for computing transport properties and rate exchange coefficients using the state-to-state (STS) approach; 1- and 2-temperature models have still to be validated, but they are already implemented. C++ compiler is mandatory. Unusual features: KAPPA is an open-source object-oriented highly modular and easy-to-maintain C++ software library which implements rigorous mathematical kinetic theory models. Additional comments: KAPPA project adopts Git [3], a free and open source distributed version control system. A public repository dedicated to KAPPA project [4] has been created on github, a web-based hosting service for software development projects using git versioning system. Finally, a comprehensive documentation [5] is provided parsing source code comments by means of doxygen software [6]. References: [1] Yaml-cpp is a YAML parser and emitter in C++ matching the YAML 1.2 specification. https://github.com/jbeder/yaml-cpp. [2] Armadillo is a fast C++ matrix library with easy to use functions and syntax, deliberately similar to Matlab which uses template meta-programming techniques. https://sourceforge.net/projects/arma/files/armadillo-8.500.1.tar.zx. [3] Git, a free and open source distributed version control system. http://git-scm.com. [4] Github, a web-based hosting service for software development projects using git versioning system. https://github.com. [5] Official KAPPA documentation. https://github.com/lkampoli/kappa. [6] Doxygen, a documentation system for many programming languages. http://www.stack.nl/ dimitri/doxygen.",
keywords = "CFD, KAPPA, Non-equilibrium reacting flow, OOP C++, Transport properties, RATE COEFFICIENTS, TRANSPORT-PROPERTIES, HEAT-TRANSFER, REACTING GAS-MIXTURE, STATE, MODEL, RATES, VIBRATIONAL-RELAXATION, DISSOCIATION, FLOWS, OOP C plus",
author = "l. Campoli and G.P. Oblapenko and E.V. Kustova",
year = "2019",
month = "3",
day = "1",
doi = "10.1016/j.cpc.2018.10.016",
language = "English",
volume = "236",
pages = "244--267",
journal = "Computer Physics Communications",
issn = "0010-4655",
publisher = "Elsevier",

}

TY - JOUR

T1 - KAPPA

T2 - Kinetic approach to physical processes in atmospheres library in C plus

AU - Campoli, l.

AU - Oblapenko, G.P.

AU - Kustova, E.V.

PY - 2019/3/1

Y1 - 2019/3/1

N2 - KAPPA, an open-source software library for the computation of thermodynamic and transport properties in non-equilibrium gas flows and species production rates, is presented. Thermodynamic properties rely on custom databases which describe the characteristics of atoms and molecules and interaction features. Mixture thermodynamic properties are formulated from species quantities. Species production rates are based on elementary chemical reactions and vibrational energy transitions. Transport properties are derived from kinetic theory which provides relationships for transport coefficients depending on the flow model. Several levels of non-equilibrium flow description are implemented: the detailed state-to-state (STS) approach, multi-temperature and one-temperature models. Sets of transport coefficients depend on the deviation from equilibrium; in the state-to-state model, they include state-resolved diffusion coefficients for each pair of vibrational states. A highly modular, object-oriented application program interface (API) has been developed. The adopted object-oriented programming paradigm (OOP), along with the implemented models of state-resolved physico-chemical relaxation rates, is presented. The design of the library allows it to be easily included in existing CFD codes and is aimed at code reusability and readability. Program Title: KAPPA Program Files doi: http://dx.doi.org/10.17632/mrx9n35bvs.1 Licensing provisions: GNU General Public Licence, version 3. Programming language: C++; developed and tested with Intel Compiler v. 18.x and GNU. External routines/libraries: KAPPA must be linked to yaml-cpp [1] in order to read human-readable database files and to Armadillo [2] for solving algebraic linear systems. Nature of problem: Numerical computation of transport properties and rate exchange coefficients for non-equilibrium reacting flows. Solution method: Non-equilibrium reacting flow is treated by a rigorous state-to-state (STS) kinetic theory approach. Restrictions: At present, KAPPA is validated for computing transport properties and rate exchange coefficients using the state-to-state (STS) approach; 1- and 2-temperature models have still to be validated, but they are already implemented. C++ compiler is mandatory. Unusual features: KAPPA is an open-source object-oriented highly modular and easy-to-maintain C++ software library which implements rigorous mathematical kinetic theory models. Additional comments: KAPPA project adopts Git [3], a free and open source distributed version control system. A public repository dedicated to KAPPA project [4] has been created on github, a web-based hosting service for software development projects using git versioning system. Finally, a comprehensive documentation [5] is provided parsing source code comments by means of doxygen software [6]. References: [1] Yaml-cpp is a YAML parser and emitter in C++ matching the YAML 1.2 specification. https://github.com/jbeder/yaml-cpp. [2] Armadillo is a fast C++ matrix library with easy to use functions and syntax, deliberately similar to Matlab which uses template meta-programming techniques. https://sourceforge.net/projects/arma/files/armadillo-8.500.1.tar.zx. [3] Git, a free and open source distributed version control system. http://git-scm.com. [4] Github, a web-based hosting service for software development projects using git versioning system. https://github.com. [5] Official KAPPA documentation. https://github.com/lkampoli/kappa. [6] Doxygen, a documentation system for many programming languages. http://www.stack.nl/ dimitri/doxygen.

AB - KAPPA, an open-source software library for the computation of thermodynamic and transport properties in non-equilibrium gas flows and species production rates, is presented. Thermodynamic properties rely on custom databases which describe the characteristics of atoms and molecules and interaction features. Mixture thermodynamic properties are formulated from species quantities. Species production rates are based on elementary chemical reactions and vibrational energy transitions. Transport properties are derived from kinetic theory which provides relationships for transport coefficients depending on the flow model. Several levels of non-equilibrium flow description are implemented: the detailed state-to-state (STS) approach, multi-temperature and one-temperature models. Sets of transport coefficients depend on the deviation from equilibrium; in the state-to-state model, they include state-resolved diffusion coefficients for each pair of vibrational states. A highly modular, object-oriented application program interface (API) has been developed. The adopted object-oriented programming paradigm (OOP), along with the implemented models of state-resolved physico-chemical relaxation rates, is presented. The design of the library allows it to be easily included in existing CFD codes and is aimed at code reusability and readability. Program Title: KAPPA Program Files doi: http://dx.doi.org/10.17632/mrx9n35bvs.1 Licensing provisions: GNU General Public Licence, version 3. Programming language: C++; developed and tested with Intel Compiler v. 18.x and GNU. External routines/libraries: KAPPA must be linked to yaml-cpp [1] in order to read human-readable database files and to Armadillo [2] for solving algebraic linear systems. Nature of problem: Numerical computation of transport properties and rate exchange coefficients for non-equilibrium reacting flows. Solution method: Non-equilibrium reacting flow is treated by a rigorous state-to-state (STS) kinetic theory approach. Restrictions: At present, KAPPA is validated for computing transport properties and rate exchange coefficients using the state-to-state (STS) approach; 1- and 2-temperature models have still to be validated, but they are already implemented. C++ compiler is mandatory. Unusual features: KAPPA is an open-source object-oriented highly modular and easy-to-maintain C++ software library which implements rigorous mathematical kinetic theory models. Additional comments: KAPPA project adopts Git [3], a free and open source distributed version control system. A public repository dedicated to KAPPA project [4] has been created on github, a web-based hosting service for software development projects using git versioning system. Finally, a comprehensive documentation [5] is provided parsing source code comments by means of doxygen software [6]. References: [1] Yaml-cpp is a YAML parser and emitter in C++ matching the YAML 1.2 specification. https://github.com/jbeder/yaml-cpp. [2] Armadillo is a fast C++ matrix library with easy to use functions and syntax, deliberately similar to Matlab which uses template meta-programming techniques. https://sourceforge.net/projects/arma/files/armadillo-8.500.1.tar.zx. [3] Git, a free and open source distributed version control system. http://git-scm.com. [4] Github, a web-based hosting service for software development projects using git versioning system. https://github.com. [5] Official KAPPA documentation. https://github.com/lkampoli/kappa. [6] Doxygen, a documentation system for many programming languages. http://www.stack.nl/ dimitri/doxygen.

KW - CFD

KW - KAPPA

KW - Non-equilibrium reacting flow

KW - OOP C++

KW - Transport properties

KW - RATE COEFFICIENTS

KW - TRANSPORT-PROPERTIES

KW - HEAT-TRANSFER

KW - REACTING GAS-MIXTURE

KW - STATE

KW - MODEL

KW - RATES

KW - VIBRATIONAL-RELAXATION

KW - DISSOCIATION

KW - FLOWS

KW - OOP C plus

UR - http://www.scopus.com/inward/record.url?scp=85056655877&partnerID=8YFLogxK

UR - https://elibrary.ru/item.asp?id=38633067

UR - http://www.mendeley.com/research/kappa-kinetic-approach-physical-processes-atmospheres-library-c

U2 - 10.1016/j.cpc.2018.10.016

DO - 10.1016/j.cpc.2018.10.016

M3 - Article

VL - 236

SP - 244

EP - 267

JO - Computer Physics Communications

JF - Computer Physics Communications

SN - 0010-4655

ER -