Exemplo n.º 1
0
    def __init__(self,
                 filename="",
                 run_dir="",
                 verbose=False,
                 raiseErrors=True):
        """ Extract relevant data from resum_scaling function in xupy
        """
        from xupy import resum_scaling
        self.resolution = []
        self.CChalf = []
        self.s = []
        self.vector = []
        self.HighResCChalf = float()
        self.HighRes = float()

        if not run_dir:
            run_dir = "./"
        self.run_dir = run_dir
        #
        full_filename = os.path.join(self.run_dir, filename)
        #
        if filename:
            try:
                fp = open(full_filename, "r")
                self.lp = fp.read()
                fp.close()
            except:
                raise IOError, "Can't read file: %s" % full_filename
        else:
            self.lp = ""

        if full_filename.count("CORRECT.LP"):
            self.s = resum_scaling(lpf=os.path.join(run_dir, "CORRECT.LP"))
            self.get_XDS_CChalf()
        else:
            if filename:
                raise IOError, "Don't know how to parse file: %s" % \
                               full_filename
Exemplo n.º 2
0
Arquivo: xscale2.py Projeto: RAPD/RAPD
f = open("XSCALE.INP","w")
f.write(template_str % refdic)
f.write("    MERGE=FALSE\n\n")

for file in xds_input_files:
    hklf = XDSReflectionFile(file)
    f.write("   INPUT_FILE= %s\n" % file)
    f.write("      INCLUDE_RESOLUTION_RANGE= %s\n" % hklf.header["INCLUDE_RESOLUTION_RANGE"])
    f.write("      FRIEDEL'S_LAW=            %s\n" % hklf.header["FRIEDEL'S_LAW"])
    f.write("      ! CORRECTIONS= DECAY MODULATION ABSORPTION\n")

f.close()


exec_prog("%s" % (xscale_exec), stdout=None, stderr="xupy.stderr")
s = resum_scaling(lpf="XSCALE.LP")
if not s:
    print "\nERROR while running XSCALE"
    sys.exit()
    #else:
    #    print s
print _fmt_final_stat % vars(s)
if s.absent:
   print _fmt_AbsIav % vars(s)
if ["FRIEDEL'S_LAW"] == "FALSE":
   print _fmt_anomal % vars(s)
            
            
sys.exit()

Exemplo n.º 3
0
    f.write("   INPUT_FILE= %s\n" % hklf.fileName)
    if resolution:
        res_range = "100 %.3f" % (resolution)
        f.write("      INCLUDE_RESOLUTION_RANGE= %s\n" % res_range)
    elif "INCLUDE_RESOLUTION_RANGE" in hklf.header:
        f.write("      INCLUDE_RESOLUTION_RANGE= %s\n" % \
                hklf.header["INCLUDE_RESOLUTION_RANGE"])
    f.write("      FRIEDEL'S_LAW=        %s\n" % hklf.header["FRIEDEL'S_LAW"])
    if scale == 0:
        f.write("      CORRECTIONS= NONE\n")
    else:
        f.write("      ! CORRECTIONS= DECAY MODULATION ABSORPTION\n")
f.close()

exec_prog("%s" % (xscale_exec), stdout=None, stderr="xupy.stderr")
s = resum_scaling(lpf="XSCALE.LP")
if not s:
    print "\nERROR while running XSCALE"
    sys.exit()
    #else:
    #    print s
print _fmt_final_stat % vars(s)
if s.absent:
    print _fmt_AbsIav % vars(s)
if ["FRIEDEL'S_LAW"] == "FALSE":
    print _fmt_anomal % vars(s)

sys.exit()

#### Default values
float_arg = []
Exemplo n.º 4
0
    result.sort()
    return result


if __name__ == '__main__':
    digit_template = ".???"
    if "-old" in sys.argv:
        digit_template = ".*"
        sys.argv.remove("-old")

    facteur_names = "    "
    for a in facteur_repr:
        fmt = a[2].split(".")[0].replace("d", "") + "s"
        facteur_names += ((fmt % a[0]) + " ")
    print facteur_names
    if len(sys.argv) >= 2:
        file_list = sys.argv[1:]
    else:
        file_list = list_lp("CORRECT.LP" + digit_template)

    #print "   "+len(facteur_names)*"%7s" % tuple(facteur_names)
    for lp in file_list:
        stat = xupy.resum_scaling(lpf=lp)
        print "%3s" % (lp.split(".")[-1]),
        if not stat:
            print "Error in CORRECT."
            continue
        for k in facteur_repr:
            print k[2] % stat[k[1]],
        print
Exemplo n.º 5
0
    for name in names:
            if fnmatch.fnmatch(name, pattern) and os.path.isfile(name):
                    result.append(name)
    result.sort()
    return result
    
if __name__ == '__main__':
    digit_template = ".???"
    if "-old" in sys.argv:
        digit_template = ".*"
        sys.argv.remove("-old")
    
    facteur_names = "    "
    for a in facteur_repr:
        fmt = a[2].split(".")[0].replace("d","")+"s"
        facteur_names += ((fmt % a[0]) + " ")
    print facteur_names
    if len(sys.argv) >= 2:
        file_list = sys.argv[1:]
    else:
        file_list = list_lp("CORRECT.LP"+digit_template)
        
    #print "   "+len(facteur_names)*"%7s" % tuple(facteur_names)
    for lp in file_list:
        stat = xupy.resum_scaling(lpf=lp)
        print "%3s" % (lp.split(".")[-1]),
        if not stat: print "Error in CORRECT."; continue
        for k in facteur_repr:
            print k[2] % stat[k[1]],
        print