예제 #1
0
파일: test_ksp.py 프로젝트: jgrot/grotlib
 def falpha( t, y, flyer ) :
     r = y[1]
     if r < (flyer.R+30.0E3) :
         n = (1.0, 0.0)
     else :
         v, n = mpm.v_and_dir(y)
     return n
예제 #2
0
파일: test_ksp.py 프로젝트: jgrot/grotlib
 def falpha( t, y, flyer ) :
     m, r, th, vr, om = y
     vth = om/r
     if r < (flyer.R+7.5E3) :
         n = (1.0, 0.0)
     elif vth == 0.0 :
         n = (1.0, 0.0)
     else :
         v,n = mpm.v_and_dir(y)
     return n
예제 #3
0
    def fthrottle(t, y):
        m, r, th, vr, om = y

        v, n = mpm.v_and_dir(y)

        h = r - 200E3

        vtarget = h / 10.0

        if t < 5.0:
            # Initial kick out of circ orbit
            return 0.1
        else:
            return min(1.0, 0.01 * (max(v - vtarget, 0.0)))
예제 #4
0
파일: run.py 프로젝트: jgrot/grotlib
    def falpha_s3(t, y, flyer):
        m, r, th, vr, om = y
        # vth = om/r
        v, n = mpm.v_and_dir(y)

        return n
예제 #5
0
 def fthustdir(t, y, fs):
     v, n = mpm.v_and_dir(y)
     retro = (-n[0], -n[1])
     return retro