Note
Go to the end to download the full example code.
Phase Example: Quartz (Pure Phase)#
Demonstrates phase properties that can be called by the ThermoEngine package.
This code was originally written by Mark Ghiorso and modified by Suzanne Birner in 2025.
Open this code in an executable MyBinder instance (MyBinder links may be slow to load– please be patient!):
Initialization#
Import necessary packages.
import thermoengine
from thermoengine import model
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
Import a quartz phase object.
db = model.Database()
Quartz = db.get_phase('Qz')
print(Quartz.phase_name)
Quartz
T_array = np.linspace(250.0, 1200.0, 100, endpoint=True)
Cp_array = Quartz.heat_capacity(T_array, 1000.0)
plt.plot(T_array, Cp_array)
plt.ylabel('Cp J/K-m')
plt.xlabel('T K')
plt.show()

Total running time of the script: (0 minutes 0.043 seconds)