Exemple #1
0
from amuse.community import *

import sys
sys.path.append('../../twobodymp')
from interface import twobodympInterface
from interface import twobodymp
import numpy

if __name__ == '__main__':
    instance = twobodympInterface()
    instance.initialization(20)

    result = instance.new_particle([0.99, 0.01], [0.1, 0.1], [0.0, .2],
                                   [0.0, 0.0], [0.0, 0.0], [0.0, 0.0],
                                   [0.0, 1.0], [0.0, 0.0])
    instance.commit_particles()

    for i in numpy.arange(0.01, 5.0, 0.1):
        instance.evolve_system(i)
        pos = instance.get_position(1)
        vel = instance.get_velocity(1)
        print "{0} {1} {2} {3} {4} {5}".format(pos.x_, pos.y_, pos.z_, vel.vx_,
                                               vel.vy_, vel.vz_)

    instance.stop()
Exemple #2
0
    vz0 += dt_kick / 2 * az0

    vx1 += dt_kick / 2 * ax1
    vy1 += dt_kick / 2 * ay1
    vz1 += dt_kick / 2 * az1

    instance.set_velocity_mp(0, nstr(vx0, 100), nstr(vy0, 100), nstr(vz0, 100))
    instance.set_velocity_mp(1, nstr(vx1, 100), nstr(vy1, 100), nstr(vz1, 100))
    print x0, y0, z0, x1, y1, z1


if __name__ == '__main__':

    perturber = tidal = tidal_field_from_file('tideseq-1013801.dat')

    instance = twobodympInterface(redirection='none')
    instance.initialization(PRECISION)
    mp.dps = PRECISION

    mu = 1.
    rinit = .2
    vinit = 2.95

    energy = 0.5 * vinit**2 - mu / rinit
    a = -mu / (2 * energy)
    ecc = 1 - rinit / a
    rmax = a * (1 + ecc)
    print a, ecc, rmax
    tperiod = 2 * numpy.pi / numpy.sqrt(mu) * a**(3. / 2)

    tidal = tidal_field_from_file('tideseq-1013801.dat')