Returns the internal energy of an adsorbed molecule.

        Parameters
        ----------
        temperature : numeric
           temperature in K
        electronic_energy : numeric
           energy in eV
        pressure : numeric
           pressure in mbar

        Returns
        -------
        internal_energy : numeric
           Internal energy in eV

def get_free_energy(self, temperature, pressure = 'Default', electronic_energy = 'Default', overbinding = True):
        """Returns the internal energy of an adsorbed molecule.

        Parameters
        ----------
        temperature : numeric
           temperature in K
        electronic_energy : numeric
           energy in eV
        pressure : numeric
           pressure in mbar

        Returns
        -------
        internal_energy : numeric
           Internal energy in eV
        """

        if not temperature or not pressure: # either None or 0
            return(0)
        else:
            if electronic_energy == 'Default':
                electronic_energy = molecule_dict[self.name]['electronic_energy']
                if overbinding == True:
                    electronic_energy += molecule_dict[self.name]['overbinding']
            else:
                pass
            if pressure == 'Default':
                pressure = molecule_dict[self.name]['pressure']
            else:
                pass
            pressure = pressure * 100  # gives Pa
            ideal_gas_object = IdealGasThermo(vib_energies=self.get_vib_energies(),
                                              potentialenergy=electronic_energy,
                                              atoms=self.atom_object,
                                              geometry=molecule_dict[self.name]['geometry'],
                                              symmetrynumber=molecule_dict[self.name]['symmetrynumber'],
                                              spin=molecule_dict[self.name]['spin'])
            # Returns the Gibbs free energy, in eV, in the ideal gas
            # approximation at a specified temperature (K) and pressure (Pa).
            energy = ideal_gas_object.get_gibbs_energy(temperature=temperature,
                                                       pressure=pressure, verbose=False)
            self.free_energy = energy
            return(self.free_energy)