import sys import pyMoleCuilder as mol if len(sys.argv) < 13: sys.stderr.write("Usage: "+sys.argv[0]+" \n") sys.exit(255) FILE=sys.argv[1] ORDER=sys.argv[2] LONGRANGE=sys.argv[3] VALENCEONLY=sys.argv[4] LEVEL=sys.argv[5] NEAR_FIELD_CELLS=sys.argv[6] SERVERADDRESS=sys.argv[7] CONTROLLERPORT=sys.argv[8] BASISNAME=sys.argv[9] INTERORDER=sys.argv[10] DISTANCE=sys.argv[11] STEPS=int(sys.argv[12]) BONDTABLE=sys.argv[13] # load bond table file mol.CommandBondLengthTable(BONDTABLE) # Load molecule mol.MoleculeLoad(FILE) # Set parser parameter for mpqc mol.ParserSetParserParameters("mpqc", "theory=CLHF;basis="+BASISNAME+";") # set boundary mol.WorldSetBoundaryConditions("Ignore Ignore Ignore") # update molecule graph as first step setting does not change anything mol.GraphUpdateMolecules() # set box mol.WorldChangeBox("8,0,0,8,0,8") for i in range(0,STEPS): # set current time mol.WorldSetWorldTime(str(i)) # fragment system mol.SelectionAllAtoms() mol.FragmentationFragmentation("", DISTANCE, ORDER, "1", "1", "", "0.", LEVEL, INTERORDER, "0", "0") mol.FragmentationFragmentationAutomation(SERVERADDRESS, CONTROLLERPORT, "mpqc", "0.", LEVEL, NEAR_FIELD_CELLS, "3", LONGRANGE, "", VALENCEONLY, "0") mol.FragmentationAnalyseFragmentationResults("1", "", "0") # save homologies mol.PotentialSaveHomologies("homology.dat") mol.PotentialSaveAtomFragments("atomfragments.dat") # exit sys.exit(0)