def RG_dfi(n): maxn = (max_fillingfraction_handled+0.0001)/sphere_volume # warning: Forte defines x as a density, we define it # as a dimensionless quantity that scales the density. maxx = np.minimum(1,maxn/n-1) if abs(maxx) < 1e-42: print 'maxx is zero' print 'maxx is zero' print 'maxx is zero' print 'maxx is zero' print 'maxx is zero' T=temp # eqn (5) from Forte 2011: IDvalue = ID2(n, maxx) IDvalueStar = ID2star(n, maxx) return -k_B*T*(IDvalue-IDvalueStar)/RG.VD(fn) # eqn (7), Forte 2011
def integrand_ID2star(n,maxpower,x): argument = np.exp(-maxpower-RG.VD(fn)/k_B/temp*fbarD(temp,n,x,fn)) return argument
def integrand_ID2(n,maxpower,x): argument = np.exp(-maxpower-RG.VD(fn)/k_B/temp*(fbarD(temp,n,x,fn) + ubarD(temp,n,x,fn))) ## integrandIDlistn.append(n) ## integrandIDlistx.append(x) ## integrandIDlistarg.append(argument) return argument
def onlyPowerStar(n,x,i): return (-RG.VD(i)/k_B/temp*fbarD(temp,n,x,i))
def onlyPower(n,x,i): return (-RG.VD(i)/k_B/temp*(fbarD(temp,n,x,i) + ubarD(temp,n,x,i)))