Example #1
0
if MPI:
    nxcpu = 2
    num_mpi = 8
    num_cpus = multiprocessing.cpu_count()
    os.environ['OMP_NUM_THREADS'] = str(int(np.max([2, num_cpus / num_mpi])))
else:
    nxcpu = 1

util.make_dir(TMP_DIR)
os.chdir('../prob/mhdmodes3d/')

copyfile('build.py', TMP_BUILD)
# COMPILE CODE AT MULTIPLE RESOLUTIONS USING SEPARATE BUILD FILE

for n in range(len(RES)):
    util.change_cparm('N1TOT', RES[n], TMP_BUILD)
    util.change_cparm('N2TOT', RES[n], TMP_BUILD)
    util.change_cparm('N3TOT', RES[n], TMP_BUILD)
    util.change_cparm('N1CPU', nxcpu, TMP_BUILD)
    util.change_cparm('N2CPU', nxcpu, TMP_BUILD)
    util.change_cparm('N3CPU', nxcpu, TMP_BUILD)
    util.change_cparm('OPENMP', 'True', TMP_BUILD)
    args = [sys.executable, TMP_BUILD, '-dir', TMP_DIR]
    if TABLE:
        args.append('-table')
    call(args)
    call([
        'cp',
        os.path.join(os.getcwd(), TMP_DIR, 'bhlight'),
        '../../test/' + TMP_DIR + '/bhlight_' + str(RES[n])
    ])
Example #2
0
AUTO = False
for arg in sys.argv:
  if arg == '-auto':
    AUTO = True

RES = [16, 32, 64]#, 128]

util.make_dir(TMP_DIR)
os.chdir('../prob/mhdmodes2d/')

copyfile('build.py', TMP_BUILD)
# COMPILE CODE AT MULTIPLE RESOLUTIONS USING SEPARATE BUILD FILE

for n in xrange(len(RES)):
  util.change_cparm('N1TOT', RES[n], TMP_BUILD)
  util.change_cparm('N2TOT', RES[n], TMP_BUILD)
  call(['python', TMP_BUILD, '-dir', TMP_DIR])
  call(['cp', os.path.join(os.getcwd(), TMP_DIR, 'bhlight'),
        '../../test/' + TMP_DIR + '/bhlight_' + str(RES[n])])
copyfile(os.path.join(os.getcwd(), TMP_DIR, 'param_template.dat'), '../../test/' + 
         TMP_DIR + '/param_template.dat')
util.safe_remove(TMP_BUILD)
util.safe_remove(TMP_DIR)
os.chdir('../../test/')

# LOOP OVER EIGENMODES
MODES = [3]
NAMES = ['ENTROPY', 'SLOW', 'ALFVEN', 'FAST']
NVAR = 8
VARS = ['rho', 'u', 'u1', 'u2', 'u3', 'B1', 'B2', 'B3']
Example #3
0
        AUTO = True
if '-idim' in sys.argv:
    IDIM = int(sys.argv[sys.argv.index('-idim') + 1])
else:
    IDIM = 1

RES = [64, 128, 256, 512]

util.make_dir(TMP_DIR)
os.chdir('../prob/mhdmodes1d/')

copyfile('build.py', TMP_BUILD)
# COMPILE CODE AT MULTIPLE RESOLUTIONS USING SEPARATE BUILD FILE

for n in range(len(RES)):
    util.change_cparm('N{}TOT'.format(IDIM), RES[n], TMP_BUILD)
    #util.change_cparm('RECONSTRUCTION', 'PARA', TMP_BUILD)
    call(['python', TMP_BUILD, '-dir', TMP_DIR, '-idim', str(IDIM)])
    call([
        'cp',
        os.path.join(os.getcwd(), TMP_DIR, 'bhlight'),
        '../../test/' + TMP_DIR + '/bhlight_' + str(RES[n])
    ])
copyfile(os.path.join(os.getcwd(), TMP_DIR, 'param_template.dat'),
         '../../test/' + TMP_DIR + '/param.dat')
util.safe_remove(TMP_BUILD)
util.safe_remove(TMP_DIR)
os.chdir('../../test/')

# LOOP OVER EIGENMODES
MODES = [0, 1, 2, 3]
Example #4
0
    IDIM = 1

RES = [128, 256, 512]

kwave = 2 * np.pi
amp = 1.0
kcenter = 0.5
cadv = 0.5

util.make_dir(TMP_DIR)
os.chdir('../prob/' + PROBLEM)
copyfile('build.py', TMP_BUILD)

# COMPILE CODE AT MULTIPLE RESOLUTIONS USING SEPARATE BUILD FILE
for n, res in enumerate(RES):
    util.change_cparm('N{}TOT'.format(IDIM), res, TMP_BUILD)
    call([sys.executable, TMP_BUILD, '-dir', TMP_DIR, '-idim', str(IDIM)])
    call([
        'cp',
        os.path.join(os.getcwd(), TMP_DIR, 'bhlight'),
        '../../test/' + TMP_DIR + '/bhlight_' + str(res)
    ])
copyfile(os.path.join(os.getcwd(), TMP_DIR, 'param_template.dat'),
         '../../test/' + TMP_DIR + '/param.dat')
util.safe_remove(TMP_BUILD)
util.safe_remove(TMP_DIR)
os.chdir('../../test/')
os.chdir(TMP_DIR)


def phi1_true(t, x):
Example #5
0
util.make_dir(TMP_DIR)
os.chdir('../prob/' + PROBLEM)
copyfile('build.py', TMP_BUILD)

# Since this test is designed to run on a single machine (no batch scripts)
# set openmpi to only use a few threads. Let MPI handle the rest.
if MPI:
    num_mpi = 8
    num_cpus = multiprocessing.cpu_count()
    os.environ['OMP_NUM_THREADS'] = str(int(np.max([2, num_cpus / num_mpi])))

# COMPILE CODE AT MULTIPLE RESOLUTIONS USING SEPARATE BUILD FILE
for n, res in enumerate(RES):
    for d in [1, 2, 3]:
        util.change_cparm('N{}TOT'.format(d), res, TMP_BUILD)
    if MPI:
        for d in [1, 2, 3]:
            util.change_cparm('N{}CPU'.format(d), 2, TMP_BUILD)
    call([sys.executable, TMP_BUILD, '-dir', TMP_DIR])
    parm_src = os.path.join(os.getcwd(), TMP_DIR, 'param_template.dat')
    parm_dest = '../../test/' + TMP_DIR + '/param.dat'
    call([
        'cp',
        os.path.join(os.getcwd(), TMP_DIR, 'bhlight'),
        '../../test/' + TMP_DIR + '/bhlight_' + str(res)
    ])
    copyfile(parm_src, parm_dest)
    if BIGRUN:
        util.change_rparm('tf', 0.1, parm_dest)
        util.change_rparm('DTd', 0.05, parm_dest)
Example #6
0
import shutil

shocks = [0, 1, 2, 3]  #,4,5,6]

TMP_DIR = 'TMP'
util.safe_remove(TMP_DIR)
PROBLEM = 'kshocks'
AUTO = False
for arg in sys.argv:
    if arg == '-auto':
        AUTO = True

os.chdir('../prob/' + PROBLEM)

# COMPILE CODE
util.change_cparm('N1TOT', 512, 'build.py')
call(['python', 'build.py', '-dir', TMP_DIR])
os.chdir('../../test/')
call(['mv', '../prob/' + PROBLEM + '/' + TMP_DIR, './'])

# RUN EXECUTABLE
os.chdir(TMP_DIR)
for shock in shocks:
    util.change_rparm('shock', str(shock), 'param_template.dat')
    call(['./bhlight', '-p', 'param_template.dat'])
    shutil.move('dumps', 'dumps_%d' % shock)
os.chdir('../')

# HIGH RESOLUTION VETTED SOLUTION
soln = np.loadtxt('data/kshocks.txt')
Example #7
0
cgs = units.get_cgs()

TMP_BUILD = 'build_tmp.py'
TMP_DIR = 'TMP'
util.safe_remove(TMP_DIR)
PROBLEM = 'bhtherm'
AUTO = False
for arg in sys.argv:
    if arg == '-auto':
        AUTO = True

os.chdir('../prob/' + PROBLEM)

# SET RESOLUTION
copyfile('build.py', TMP_BUILD)
util.change_cparm('N1TOT', 128, TMP_BUILD)
util.change_cparm('N2TOT', 1, TMP_BUILD)
util.change_cparm('N3TOT', 1, TMP_BUILD)
util.change_cparm('N1CPU', 1, TMP_BUILD)
util.change_cparm('N2CPU', 1, TMP_BUILD)
util.change_cparm('N3CPU', 1, TMP_BUILD)

# COMPILE CODE
call(['python', TMP_BUILD, '-dir', TMP_DIR])
os.remove(TMP_BUILD)
call(['cp', 'init.txt', TMP_DIR])
os.chdir('../../test/')
call(['mv', '../prob/' + PROBLEM + '/' + TMP_DIR, './'])

# RUN EXECUTABLE
os.chdir(TMP_DIR)