# print brentOut optPrcntVolume = brentOut[0] optFreeEnergy = brentOut[1] return optPrcntVolume if __name__ == "__main__": qecalc = QECalc("config.ini") voluPhon = VoluPhon("config.ini", prcntVol) voluPhon.setA(a_range[indexRange], 'polynom', 1, True) c_range = a_range * c_a_range voluPhon.setC(c_range[indexRange], 'polynom', 1, True) # Generate phonon doses from different fc files for i in indexRange: os.system('cp ' + str(i) + '_' + fc_name + ' ' + fc_name) qecalc.matdynLauncher() os.system('cp ' + matdynfldos + ' ' + str(i) + '_' + matdynfldos) #plot free energies: for temperature in temperatures: lines = '' phonon = [] for i, v in zip(indexRange, prcntVol): axis, dos = qecalc.getPhononDOS(str(i) + '_' + matdynfldos) phonTherm = PhononThermodynamics(axis, dos) Cv = phonTherm.Cv(temperature) phonon.append(phonTherm.freeEnergy(temperature)) totalFreeEnergy = e_total[i] + phonon[-1] lines = lines + '%f %f %f %f %f\n'%(v, \ totalFreeEnergy, e_total[i], phonon[-1], Cv) file = open(str(temperature) + '_free_energy.out', 'w')