Skip to content

A software package for calculating isobaric specific heat capacity based on sound velocity method

License

Notifications You must be signed in to change notification settings

JunPei-China/SoundForCp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SoundForCp

SoundForCp is a software package for calculating specific heat capacity based on sound velocity method. A detailed description is available in https://onlinelibrary.wiley.com/doi/10.1002/inf2.12372.

If you have used SoundForCp, please cite the following article.

  1. Pei, J., Li, H., Zhuang, H.-L., Dong, J., Cai, B., Hu, H., Li, J.-W., Jiang, Y., Su, B., Zhao, L.-D., & Li, J.-F. A sound velocity method for determining isobaric specific heat capacity. InfoMat, n/a(n/a), e12372. https://doi.org/10.1002/inf2.12372

Requirement

SoundForCp requires Python 3 and several third-party libraries that are used by SoundForCp.

  • Numpy - The fundamental package for scientific computing with Python. (>=1.20)
  • Scipy - Fundamental algorithms for scientific computing in Python for scientific computing with Python. (>=1.7)
  • PyYaml - A full-featured YAML framework for the Python programming language.(>=6.0)
  • Python (>=3.6)

As an example, on Ubuntu Linux some of the required software can be installed using

sudo apt-get install python3 python3-numpy python3-scipy python3-yaml

Before you go any further, make sure you have Python and that the expected version is available from your command line. You can check this by running:

Unix/MacOS:

python3 --version

Windows:

py --version

You should get some output like Python 3.6.3. If you do not have Python, please install the latest 3.x version from python.org or refer to the Installing Python section of the Hitchhiker’s Guide to Python.

We recommend to use PyPI which allows to conveniently install SoundForCp and all its software dependencies with a single command. you’ll need to make sure you have pip available. You can check this by running:

Unix/MacOS:

python3 -m pip --version

Windows:

py -m pip --version

If you installed Python from source, with an installer from python.org, or via Homebrew you should already have pip. If you’re on Linux and installed using your OS package manager, you may have to install pip separately, see Installing pip/setuptools/wheel with Linux Package Managers.

If pip isn’t already installed, then first try to bootstrap it from the standard library:

Unix/MacOS:

python3 -m ensurepip --default-pip

Windows:

python3 -m ensurepip --default-pip

To install the remaining packages see the installation instructions at their respective web pages.

Installation

The preferred method is to use pip command to install from the PyPi official/mirrors site.

pip install SoundForCp

SounfForCp can be then started from a terminal (e.g. “Anaconda Prompt” on Windows) by executing the “SoundForCp” program.

If you don’t use pip or prefer to install from sources, make sure the required software is all in place and run:

python setup.py install

By default the files are installed to standard system directories, which may require the use of sudo for write privileges. If administrator (root) access is not available, see the output from python setup.py install --help for options to install as a regular user to user-writable locations. Note that installation to non-standard directories may require adjustments to the PATH and PYTHONPATH environment variables.

Using

SoundForCp can be then started from a terminal (“Anaconda Prompt” on Windows) by executing the “SoundForCp.exe” program. An alternative method on Windows is to start SoundForCp through double-click the executable program “SoundForCP.exe”.

Before running SoundForCp, a input file, named as input.yaml should have been prepared in a certain folder xxxx. Input.yaml follows the rule of YAML language. input.yaml contains SoundForCp settings which are summarized at setting tags.

cd xxxx
SoundForCp.exe

after running successfully, there is an output file named as “out.csv” written in the same folder.

Setting tags

Basic tags

Sample_Name

Sample_Name represents the sample name.

Longitudinal_Sound_Velocity

Longitudinal_Sound_Velocity represents the longitudinal Sound velocity of the specific sample. The unit is m/s.

Transverse_Sound_Velocity

Transverse_Sound_Velocity represents the transverse Sound velocity of the specific sample. The unit is m/s.

Sample_Density

Sample_Density represents the density of the specific sample, which can be measured by Archimedes method. The unit is g/cm3.

Number_Atoms

Number_Atoms represents the atom numbers per unit cell for the specific sample.

Volume_Cell

Volume_Cell represents the lattice volume per unit cell for the specific sample. The unit is A^3.

Temperature

Temperature represents the calculated temperature range for the specific sample. there are 3 sub-tags, i.e. Start_Temperature. End_Temperature, Interval_Temperature. The unit is K.

Relative_Atomic_Mass

Relative_Atomic_Mass represents relative atomic mass for molecular formula. The unit is g/mol.

Atomic_Mole_Quantity

Relative_Atomic_Mass represents relative mole quantity for molecular formula.

Required tags

Elastic_Constants_Condition

Elastic_Constants_Condition represent elastic constants C12 equal C44 or not. Elastic_Constants_Condition=2 represents non-preferred orientation polycrystals. Elastic_Constants_Condition=1 represents C12=C44. For cubic phase, C12 is equal to C44 in preferred-oritention polycrystals or single crystal. For non cubic phase, C12 is unequal to C44 in preferred-oritention polycrystals or single crystal.

Optional tags

Adiabatic_Bulk_Modulus

Adiabatic_Bulk_Modulus represents the adiabatic bulk modulus for the specific sample. It can also be calculated by sound velocity method. The unit is GPa.

Linear_Expansion_Coefficient

Linear_Expansion_Coefficient represents the linear expansion coefficient for the specific sample. It can also be calculated by sound velocity method. The unit is 1/K.

Debye_Temperature

Debye_Temperature represents the Debye temperature for the specific sample. It can also be calculated by sound velocity method. The unit is K.

Poisson_Ratio

Poisson_Ratio represents the Poisson ratio for the specific sample. It can also be calculated by sound velocity method. The unit is dimensionless.

Gruneisen_Constant

Gruneisen_Constant represents the Gruneisen constant for the specific sample. It can also be calculated by sound velocity method. The unit is dimensionless.

Development

SoundForCp is an open-source software available on GitHub https://github.com/JunPei-China/SoundForCp. Feel free to fork the project and contribute.

Contacts

For more information on SoundForCp, please visit the project web-page or email Dr. Jun Pei (J.Pei@foxmail.com) and Dr. Hezhang Li(lihezhang1202@163.com) directly.

About

A software package for calculating isobaric specific heat capacity based on sound velocity method

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages