Ejemplo n.º 1
0
    def __init__(self, steps, obj=None, start_step=0):
        self.start_step = start_step
        self.current_step = start_step
        self.stop_step = steps
        if isinstance(obj, Box):
            # # when box is loaded from file
            self.box = obj
            Lattice.box_size = obj.box_size
            settings.BOX_SIZE = obj.box_size
        elif isinstance(obj, Chain):
            self.box = Box(settings.BOX_SIZE, localT=settings.LOCAL_T)
            self.box.add_chain(obj)
        elif isinstance(obj, list):
            self.box = Box(settings.BOX_SIZE, localT=settings.LOCAL_T)
            for c in obj:
                self.box.add_chain(c)

        # # load some specific settings
        Lattice.NEIGHBOURS_POSITION = tools.load_file(settings.ROOT_DIR + "neighbours.dump", {})

        if self.box.localT in settings.EXP_TABLES:
            settings.EXP_TABLE = settings.EXP_TABLES[self.box.localT]
        else:
            settings.EXP_TABLE = tools.load_file(settings.ROOT_DIR + \
                settings.FILES_TEMPLATE['exp'] % self.box.localT, {})
            settings.EXP_TABLES[self.box.localT] = settings.EXP_TABLE
Ejemplo n.º 2
0
import sys
from lib import tools
import cPickle, gzip
import os

box_dir = sys.argv[1]
out_file = sys.argv[2]

out_file = open(out_file, 'w+')

for box_file in os.listdir(box_dir):
    box = tools.load_file(box_dir + "/" +box_file)
    
    for c in box.chain_list:
        out_file.writelines(["%s\n" % ";".join(map(str, c.calculate_rdf()))])

out_file.close()

Ejemplo n.º 3
0
from lib.tools import load_file
from lib.Box import Box

import sys

print "Basic information in Box file"
print "<box_file_name>"


f_box = sys.argv[1]
box = load_file(f_box)

print "Box size", box.box_size
print "Number of chains", len(box.chain_list)
print "Local T", box.localT
Ejemplo n.º 4
0
from lib import Box, Chain, tools
from lib import tools

import os
import sys

try:
    box_file = sys.argv[2]
    xyz_file = sys.argv[3]
    
    cmd = sys.argv[1]
except:
    print "Convert box to xyz and vs."
    print "box2xyz|xyz2box box_file xyz_file"
    print "For xyz2box also: (box_size) and <localT>"


if cmd is "xyz2box":
    box_size = eval(sys.argv[4])
    localT = float(sys.argv[5])
    xyz = open(os.path.realpath(xyz_file)).readlines()[2:]


elif cmd is "box2xyz":
    b = tools.load_file(box_file)
    b.jmol_snapshot(xyz_file)
Ejemplo n.º 5
0
            mc = MC(steps = settings.MC_STEPS, obj = chain)
            if not temp:
                mc.box._localT = temp
            settings.MC_MODULE = mc
            mc.run()
        
    elif cmd == 'start': ## start from some configuration
        print "start start_step temp box_file" 
        start_step = int(sys.argv[4])
        temp = float(sys.argv[5])
        if "jmol" in sys.argv[6]:
            box = Box(settings.BOX_SIZE, localT = temp)
            box.add_chain(chain)
            box.load_jmol_conf(sys.argv[6])
        else:
            box = tools.load_file(sys.argv[6])
        box.localT = temp
        mc = MC(steps = settings.MC_STEPS, obj = box)
        settings.MC_MODULE = mc
        mc.run()
    elif cmd == "start-box-file":
        box_file = sys.argv[3]
        try:
            start_step = int(sys.argv[4])
            print "Start step: ", start_step
        except:
            start_step = 0

        box = tools.load_file(box_file)
        box.localT = settings.LOCAL_T
        mc = MC(steps = settings.MC_STEPS+start_step, obj = box, start_step = start_step)