Beispiel #1
0
print("\n")
print("CCD")
trueCCD = cc.CCSD(mf)
old_update_amps = trueCCD.update_amps


def update_amps(t1, t2, eris):
    t1, t2 = old_update_amps(t1, t2, eris)
    #    print(t1)
    return (np.zeros_like(t1[0]), np.zeros_like(t1[1])), t2


trueCCD.update_amps = update_amps
print(trueCCD.kernel())
t7 = time()
print("CCD time:", t7 - t6)

residual = Tensor("R", ['p', 'p'], ['h', 'h'])
residual.array = contractTensorSum(doublesAmplitudeEquation)
print(residual.array)
print(h2Tensor.diagrams[12].array)
CC.iterateDoublesAmplitudes(t2Tensor, residual, fockTensor.array)
t5 = time()
print("Time for MP2 calculation:", t5 - t7)
print(contractTensorSum(energyEquation))
print(t2Tensor.array)

CC.convergeDoublesAmplitudes(t2Tensor, energyEquation,
                             doublesAmplitudeEquation, fockTensor)
t2 = time()
print("Time for CCD calculation:", t2 - t5)