Exemplo n.º 1
0
def run():
    
    from os import listdir

    system_sets  =  get_sys_sets() 
    
    for system_set in system_sets:
        
        system                          =   system_set[0] 
        [nr, nphi], phiperiod           =   system_set[1:3]
        moldy                           =   system_set[3]
        print nr,nphi, moldy
        
        gc.enable()
        
        input_file_folder_consts        =   '/space/tohekorh/Spiral/bender_input/calc/%s/' %moldy \
                                               + '%s/phiper=%.2f/nr-nphi=%i-%i/'  \
                                                %(system, phiperiod, nr, nphi)
            #input_file_folder_moldy     =   '/space/tohekorh/Spiral/bender_input/calc/moldy/'
        
        path_log    =   '/space/tohekorh/Spiral/bender_output/%s/' %system   
        
        if not exists(path_log):
            makedirs(path_log)

        
        for input_folder in listdir(input_file_folder_consts):
            input_file_folder   = input_file_folder_consts + input_folder + '/'
            
            if input_folder != 'store':
                for input_file in listdir(input_file_folder):
                    if input_file[-3:] == 'txt':
                        if not has_been_calculated(input_file_folder + input_file, 'read'):
                            logfile     =   open(path_log + 'logfile.txt', 'a')
                            in_file     =   input_file_folder + input_file
                            logfile.write(str(datetime.now()) + ' \n') 
                            logfile.write(str(system_set) + ' \n')
                            try:   
                            #if query_yes_no('system = %s, moldy = %s' %(system, moldy) + " run this " + input_file, 'no'):
                                param_set   =   parse_input(input_file_folder + input_file)
                                
                                run_bender(param_set, in_file)
                                
                                unreached   = gc.collect()
                                del gc.garbage[:]
                                print 'in collect there was %i unreached objects' %unreached
                                logfile.write(input_file + ' SUCCESS! \n\n')
                                has_been_calculated(in_file, 'write_ok')
                                
                            except Exception as e:
                                logfile.write(str(e) + ' \n')
                                logfile.write(input_file + ' ERROR! \n\n')
                                has_been_calculated(in_file, 'write_not_ok')
                                
                            logfile.close()
        
        if system != 'spiral':
            write_total_synopsis(nr, nphi, phiperiod, system, input_file_folder_consts)
            study_total_synopsis(nr, nphi, phiperiod, system)
Exemplo n.º 2
0
def run_tests():
    
    from os import listdir
    
    input_file_folder_consts    =   '/space/tohekorh/Spiral/bender_input/tests/'
        
    for input_file in listdir(input_file_folder_consts):
        if input_file[-3:] == 'txt':
            
            param_set   =   parse_input(input_file_folder_consts + input_file)
            nr, nphi    =   param_set["nr"],    param_set["nphi"]
    
            tests_a     =   tests(nr, nphi)
            tests_a.tests(param_set)
Exemplo n.º 3
0
def parse_u_from_file(in_file):  
    
    from bender_rw import parse_input
    from surface import surf
    
    param_set           =   parse_input(in_file)
    system              =   param_set["system"]
    nr, nphi            =   param_set["nr"],    param_set["nphi"]
    rmin, rmax          =   param_set["rmin"],  param_set["rmax"]
    phimin, phi_period  =   param_set["phimin"],param_set["phiperiod"] 
    height              =   param_set["height"]
    #moldy_opm           =   param_set["moldy_opm"]
    
    hangle              =   height / 2 / pi   
    asurf               =   surf(rmin, rmax, nr, phimin, phi_period, nphi)
    ue                  =   u(hangle, phi_period, asurf.get_all_surf(), \
                              system = system)
    
    return ue