Exemplo n.º 1
0
def test_init_circ():
    bc.bash_command('rm archive*')
    bc.bash_command(
        'python ../end_aleksey_config.py --keep_bins --config config2')
    name = bc.bash_command("echo archive*bin").replace('\n', '')
    sa = rebound.SimulationArchive(name)
    sim = sa[0]
    ##100 particles by default + central mass...
    assert len(sim.particles) == 201
    ms = np.array([pp.m for pp in sim.particles[1:]])
    assert np.all(ms == 5e-4)
    odat = sim.calculate_orbits(primary=sim.particles[0])
    eccs = np.array([oo.e for oo in odat])
    assert np.allclose(eccs, 0.)
Exemplo n.º 2
0
# e1=sys.argv[1]
# a1=sys.argv[2]
# ang=sys.argv[3]

dd = 1.0
i = 0
m = 2.5e-7
No = 1001
while (dd > 0.05) and (i < 11):
    # bc.bash_command('/projects/alge9397/code/c/torque2_touma/torque_integ --etest {0} --atest {1} -o {2} -n {3} -f {4} -b {5} -q {6} --ein {7}'\
    # 	.format(args.etest, args.atest, args.pomega, No, 0, args.b, args.q, args.ein))
    # sys.stdout.flush()
    # bc.bash_command('/projects/alge9397/code/c/torque2_touma/torque_integ --etest {0} --atest {1} -o {2} -n {3} -f {4} -b {5} -q {6} --ein {7}'\
    # 	.format(args.etest, args.atest, args.pomega, No, 1, args.b, args.q, args.ein))
    bc.bash_command('/projects/alge9397/code/c/torque2_touma/torque_integ --etest {0} --atest {1} -o {2} -n {3} -f {4} -b {5} -q {6} --ein {7}'\
     .format(args.etest, args.atest, args.pomega, No, 0, args.b, args.q, args.ein))
    sys.stdout.flush()
    bc.bash_command('/projects/alge9397/code/c/torque2_touma/torque_integ --etest {0} --atest {1} -o {2} -n {3} -f {4} -b {5} -q {6} --ein {7}'\
     .format(args.etest, args.atest, args.pomega, No, 1, args.b, args.q, args.ein))
    sys.stdout.flush()

    tdot1 = np.genfromtxt('tau_a_e{0}_a{1}_o{2}_q{3}_ein{4}'.format(
        args.etest, args.atest, args.pomega, args.q, args.ein))
    tdot2 = np.genfromtxt('tau_a_e{0}_a{1}_o{2}_q{3}_ein{4}'.format(
        args.etest, args.atest, args.pomega, args.q, args.ein))
    dd = abs((tdot1 - tdot2) / tdot1)
    idot1 = np.genfromtxt('i_a_e{0}_a{1}_o{2}_q{3}_ein{4}'.format(
        args.etest, args.atest, args.pomega, args.q, args.ein))
    idot2 = np.genfromtxt('i_b_e{0}_a{1}_o{2}_q{3}_ein{4}'.format(
        args.etest, args.atest, args.pomega, args.q, args.ein))
    dd = abs((idot1 - idot2) / idot1)
import glob
import numpy as np
from bash_command import bash_command as bc
import shlex

import json

tags = glob.glob("[it]*ein*")
tags = np.sort(tags)
print tags
prec_rate = {}
for tag in tags:
    x = bc.bash_command("cat {0}".format(tag))
    x = float(x)
    prec_rate[tag] = x

js = json.dumps(prec_rate)
with open("prec_rate.json", "w") as outfile:
    json.dump(js, outfile)
Exemplo n.º 4
0
import numpy as np

a_bin = 3.0e-3
inc_bin = np.pi / 3.
e_bin = 0.1
tol = 1.0e-5

sim2 = rebound.Simulation()
sim2.G = 1.

sim2.add(m=1.)  # Star
sim2.add(m=3e-6, a=1., inc=0.)  #Planet
sim2.add(m=3e-10, a=a_bin, e=e_bin, inc=inc_bin,
         primary=sim2.particles[1])  #Moon

bc.bash_command('rm test.bin')
sim2.integrate(1.0e-10)
sim2.simulationarchive_snapshot('test.bin')


def test_bin_props():
    x = bin_analysis.bin_props(sim2.particles[1], sim2.particles[2])
    assert abs(x[1] - a_bin) / a_bin < tol
    assert abs(x[2]**0.5 - e_bin) / e_bin < tol
    print x[-2] * np.pi / 180.
    assert abs(x[-2] * np.pi / 180. - inc_bin) / inc_bin < tol


def test_bin_find():
    bins = bin_analysis.bin_find([1.0e-10, 'test.bin'])
    print bins