Thermoelastic properties of solid phases: C++ object oriented library SolidEOS ?
A new object-oriented C++ library (SolidEOS) for calculating the thermoelastic properties of solids is presented. The implementation is based on the MieGrneisenDebye equation of state (EOS) augmented by lowest order correction for anharmonicity. Several commonly used static EOS like BirchMurnaghan and Vinet models are available. Although some widely used approximation for the DebyeGrneisen parameter and static EOS are implemented, the final behaviour of the EOS can be easily modified by overloading predefined virtual functions. The article provides a basic physical background of the modern theory of high-pressure EOS. The detailed documentation of the class hierarchy is summarized in the appendix, which accompanies the source. Several examples of practical use are given in the appendix as well. The library is appropriate for applications in geophysics, petrology, material science or any other field where thermodynamic and elastic properties of solids are relevant. The source code is available from the Computers & Geoscience software archive.
equation of state thermoelastic properties of minerals earth's mantle object-oriented programming