atomic_numbers_dict = {
    Hydrogen: 1,
    Nitrogen: 7,
    Oxygen: 8,
    Fluorine: 9,
    Chlorine: 17
}

bond_lenghts = [0.6, 0.8, 1.0, 1.2, 1.4, 1.6, 1.8, 2.0]

total_energies = []
atomic_numbers = []

for element in atomic_numbers_dict:
    molecule = MoleculeConfiguration(
        elements=[element, element],
        cartesian_coordinates=[[0, 0, 0], [1, 0, 0]] * Angstrom,
        padding_length=5 * Angstrom
    )
    molecule.setCalculator(LCAOCalculator())
    atomic_numbers.append(atomic_numbers_dict[element])

    for bond_lenght in bond_lenghts:
        molecule.setCartesianCoordinates(
            [[bond_lenght, 0, 0]] * Angstrom,
            indices=[1]
        )
        total_energy = TotalEnergy(molecule)
        total_energies.append(total_energy.evaluate())

grid = GridData.fromSequence(
        values=('Total energy', total_energies),
        axes=[
            ('Atomic number', atomic_numbers),
            ('Bond lenght', bond_lenghts),
        ]
    )
