Using the valence electron concentration

Using the valence electron concentration#

A property that is often used in studies of metallic compounds is the valence electron concentration (VEC). It has proven useful in determining the phase stability of intermetallic compounds and in predicting the crystal structure of metallic compounds. The VEC is defined as the number of valence electrons per atom in a compound.

It’s formula is given by:

\[\text{VEC} = \sum_{i=1}^{n} c_{i}(\text{VEC})_{i}\]

where \(c_{i}\) is the concentration of the \(i\)-th element in the compound and \((\text{VEC})_{i}\) is the valence electron concentration of the \(i\)-th element.

smact has a built-in function to calculate the VEC of a compound. Let’s see how to use it.

import smact.properties  # Importing the SMACT properties module

# List of chemical formulas for which VEC will be calculated
formulas = ["Cu0.5NiAlCoCrFeSi", "WNbMoTa", "AlCoCrCu0.5FeNi3", "Ca65Mg15Zn20"]

# Calculate VEC for each formula using a list comprehension
valence_electron_concentrations = [smact.properties.valence_electron_count(formula) for formula in formulas]

# Print the VEC for each formula
for formula, vec in zip(formulas, valence_electron_concentrations):
    print(f"{formula} has a VEC of {vec:.2f}")
Cu0.5NiAlCoCrFeSi has a VEC of 7.00
WNbMoTa has a VEC of 5.50
AlCoCrCu0.5FeNi3 has a VEC of 8.20
Ca65Mg15Zn20 has a VEC of 4.00