Exemple #1
0
def main():
	for iq,Q in enumerate( Qs ):
		FF = FFLJ + FFel * Q
		PP.setFF_Pointer( FF )
		for ik,K in enumerate( Ks ):
			dirname = "Q%1.2fK%1.2f" %(Q,K)
			os.makedirs( dirname )
			PP.setTip( kSpring = np.array((K,K,0.0))/-PP.eVA_Nm )
			fzs = relaxedScan3D( xTips, yTips, zTips )
			PP.saveXSF( dirname+'/OutFz.xsf', headScan, lvecScan, fzs )
			for iA,Amp in enumerate( Amps ):
				AmpStr = "/Amp%2.2f" %Amp
				print "Amp= ",AmpStr
				os.makedirs( dirname+AmpStr )
				dfs = PP.Fz2df( fzs, dz = dz, k0 = PP.params['kCantilever'], f0=PP.params['f0Cantilever'], n=Amp/dz )
				plotImages( dirname+AmpStr+"/df", dfs, slices = range( 0, len(dfs) ) )
xsfLJ = False
recomputeLJ = True

if (xsfLJ and os.path.isfile('FFLJ_x.xsf')):
    recomputeLJ = False
if ((not xsfLJ) and os.path.isfile('FFLJ_y.npy')):
    recomputeLJ = False

if recomputeLJ:
    FFparams = PP.loadSpecies('atomtypes.ini')
    C6, C12 = PP.getAtomsLJ(PP.params['probeType'], iZs, FFparams)
    PP.setFF(FFLJ, cell)
    PP.setFF_Pointer(FFLJ)
    PP.getLenardJonesFF(Rs, C6, C12)
    if xsfLJ:
        PP.saveXSF('FFLJ_x.xsf', head, lvec, FFLJ[:, :, :, 0])
        PP.saveXSF('FFLJ_y.xsf', head, lvec, FFLJ[:, :, :, 1])
        PP.saveXSF('FFLJ_z.xsf', head, lvec, FFLJ[:, :, :, 2])
    else:
        np.save('FFLJ_x.npy', FFLJ[:, :, :, 0])
        np.save('FFLJ_y.npy', FFLJ[:, :, :, 1])
        np.save('FFLJ_z.npy', FFLJ[:, :, :, 2])
else:
    if xsfLJ:
        FFLJ[:, :, :, 0], lvec, nDim, head = PP.loadXSF('FFLJ_x.xsf')
        FFLJ[:, :, :, 1], lvec, nDim, head = PP.loadXSF('FFLJ_y.xsf')
        FFLJ[:, :, :, 2], lvec, nDim, head = PP.loadXSF('FFLJ_z.xsf')
    else:
        FFLJ[:, :, :, 0] = np.load('FFLJ_x.npy')
        FFLJ[:, :, :, 1] = np.load('FFLJ_y.npy')
        FFLJ[:, :, :, 2] = np.load('FFLJ_z.npy')
xsfLJ       = False
recomputeLJ = True

if (     xsfLJ  and os.path.isfile('FFLJ_x.xsf')):
	recomputeLJ = False
if ((not xsfLJ) and os.path.isfile('FFLJ_y.npy')):
	recomputeLJ = False

if recomputeLJ:
	FFparams = PP.loadSpecies        ( 'atomtypes.ini'  )
	C6,C12   = PP.getAtomsLJ( PP.params['probeType'], iZs, FFparams )
	PP.setFF( FFLJ, cell  )
	PP.setFF_Pointer( FFLJ )
	PP.getLenardJonesFF( Rs, C6, C12 )
	if xsfLJ:
		PP.saveXSF('FFLJ_x.xsf', head, lvec, FFLJ[:,:,:,0] )
		PP.saveXSF('FFLJ_y.xsf', head, lvec, FFLJ[:,:,:,1] )
		PP.saveXSF('FFLJ_z.xsf', head, lvec, FFLJ[:,:,:,2] )
	else:
		np.save('FFLJ_x.npy', FFLJ[:,:,:,0] )
		np.save('FFLJ_y.npy', FFLJ[:,:,:,1] )
		np.save('FFLJ_z.npy', FFLJ[:,:,:,2] )
else:
	if xsfLJ:
		FFLJ[:,:,:,0],lvec,nDim,head=PP.loadXSF('FFLJ_x.xsf')
		FFLJ[:,:,:,1],lvec,nDim,head=PP.loadXSF('FFLJ_y.xsf')
		FFLJ[:,:,:,2],lvec,nDim,head=PP.loadXSF('FFLJ_z.xsf')
	else:
		FFLJ[:,:,:,0] = np.load('FFLJ_x.npy' )
		FFLJ[:,:,:,1] = np.load('FFLJ_y.npy' )
		FFLJ[:,:,:,2] = np.load('FFLJ_z.npy' )