def MakeBaseIntegrals(self, Smh=True, MakeS=False):
    'Invoke bfint to calculate CoreEnergy (scalar), CoreH (nOrb x nOrb),\n      Int2e_Frs (nFit x nOrb x nOrb), and overlap matrix (nOrb x nOrb)'
    Args = []
    if Smh:
        Args.append('--orb-trafo=Smh')
    Outputs = []
    Outputs.append(('--save-coreh', 'INT1E'))
    Outputs.append(('--save-fint2e', 'INT2E'))
    Outputs.append(('--save-overlap', 'OVERLAP'))
    (CoreH, Int2e, Overlap) = self._InvokeBfint(Args, Outputs)
    nOrb = CoreH.shape[0]
    Int2e = Int2e.reshape((Int2e.shape[0], nOrb, nOrb))
    CoreEnergy = self.Atoms.fCoreRepulsion()
    if MakeS:
        return (CoreEnergy, CoreH, Int2e, Overlap)
    else:
        return (CoreEnergy, CoreH, Int2e)
Invoke bfint to calculate CoreEnergy (scalar), CoreH (nOrb x nOrb),
Int2e_Frs (nFit x nOrb x nOrb), and overlap matrix (nOrb x nOrb)
def MakeBaseIntegrals(self, Smh=True, MakeS=False):
    'Invoke bfint to calculate CoreEnergy (scalar), CoreH (nOrb x nOrb),\n      Int2e_Frs (nFit x nOrb x nOrb), and overlap matrix (nOrb x nOrb)'
    Args = []
    if Smh:
        Args.append('--orb-trafo=Smh')
    Outputs = []
    Outputs.append(('--save-coreh', 'INT1E'))
    Outputs.append(('--save-fint2e', 'INT2E'))
    Outputs.append(('--save-overlap', 'OVERLAP'))
    (CoreH, Int2e, Overlap) = self._InvokeBfint(Args, Outputs)
    nOrb = CoreH.shape[0]
    Int2e = Int2e.reshape((Int2e.shape[0], nOrb, nOrb))
    CoreEnergy = self.Atoms.fCoreRepulsion()
    if MakeS:
        return (CoreEnergy, CoreH, Int2e, Overlap)
    else:
        return (CoreEnergy, CoreH, Int2e)