Ejemplo n.º 1
0
 print_options(magn_file, options)
 domain_file.write('T domain_sizes\n')
 print_options(domain_file, options)
 for T in (float(T_str) for T_str in options.T.split(',')):
     if options.verbose > 0:
         sys.stderr.write('# computing T = {0:.4f}\n'.format(T))
     ising = ising_module.IsingSystem(options.N, options.J, options.H, T)
     ising.init_random(seed)
     runner = DomainSizeRunner(ising=None, steps=options.steps,
                               is_verbose=options.verbose - 2,
                               burn_in=options.burn_in,
                               sample_period=options.sample_period,
                               window=options.window)
     averager = Averager(runner, ising, is_verbose=options.verbose - 1)
     averager.average(options.runs)
     M_values = averager.get('M mean')
     M_str = val_fmt.format(**M_values)
     E_values = averager.get('E mean')
     E_str = val_fmt.format(**E_values)
     deltaE2_values = averager.get('deltaE^2')
     deltaE2_str = val_fmt.format(**deltaE2_values)
     magn_file.write(val_line_fmt.format(T=T, M=M_str, E=E_str,
                                         deltaE2=deltaE2_str))
     magn_file.flush()
     domains = averager.get('domains')
     distrubtion = ','.join(['{0:d}:{1:.8e}'.format(k, v)
                                 for k, v in domains.items()])
     domain_file.write('{0:.4f} {1:s}\n'.format(T, distrubtion))
     domain_file.flush()
 magn_file.close()
 domain_file.close()
Ejemplo n.º 2
0
 print_options(magn_file, options)
 domain_file.write('T domain_sizes\n')
 print_options(domain_file, options)
 for T in (float(T_str) for T_str in options.T.split(',')):
     if options.verbose > 0:
         sys.stderr.write('# computing T = {0:.4f}\n'.format(T))
     ising = ising_module.IsingSystem(options.N, options.J, options.H, T)
     ising.init_random(seed)
     runner = DomainSizeRunner(ising=None, steps=options.steps,
                               is_verbose=options.verbose - 2,
                               burn_in=options.burn_in,
                               sample_period=options.sample_period,
                               window=options.window)
     averager = Averager(runner, ising, is_verbose=options.verbose - 1)
     averager.average(options.runs)
     M_values = averager.get('M mean')
     M_str = val_fmt.format(**M_values)
     E_values = averager.get('E mean')
     E_str = val_fmt.format(**E_values)
     deltaE2_values = averager.get('deltaE^2')
     deltaE2_str = val_fmt.format(**deltaE2_values)
     magn_file.write(val_line_fmt.format(T=T, M=M_str, E=E_str,
                                         deltaE2=deltaE2_str))
     magn_file.flush()
     domains = averager.get('domains')
     distrubtion = ','.join(['{0:d}:{1:.8e}'.format(k, v)
                             for k, v in domains.items()])
     domain_file.write('{0:.4f} {1:s}\n'.format(T, distrubtion))
     domain_file.flush()
 magn_file.close()
 domain_file.close()