Forum de Programmation en langage PANORAMIC
Rechercher
 
 

Résultats par :
 


Rechercher Recherche avancée

Mots-clés

Derniers sujets
» Automate cellulaire : simulation de feu de forêt
Sam 9 Déc - 2:56 par Admin

»  Exécution des fichiers CPL
Mar 28 Nov - 19:18 par Admin

» Quelques fonctions de la user32.dll
Sam 25 Nov - 1:43 par Admin

» Copier vers une FORM définie l’image de fond du bureau.
Ven 24 Nov - 2:38 par Admin

»  Capture d’écran de Windows
Ven 17 Nov - 0:27 par Admin

»  Courbes de Bézier cubiques
Mer 8 Nov - 2:28 par Admin

» Harmonographe
Mer 8 Nov - 2:22 par Admin

»  Simuler l’appui d'une touche ou combinaison de touches
Sam 16 Sep - 13:58 par Admin

» Régalez-vous !
Sam 29 Juil - 11:42 par Admin

Décembre 2017
LunMarMerJeuVenSamDim
    123
45678910
11121314151617
18192021222324
25262728293031

Calendrier Calendrier


Orbite géostationnaire autour de la Terre

Voir le sujet précédent Voir le sujet suivant Aller en bas

Orbite géostationnaire autour de la Terre

Message par Admin le Jeu 13 Oct - 13:44

Code:

rem ============================================================================
rem         Orbite
rem ============================================================================
rem Paramètres pour une orbite géostationnaire autour de la Terre
rem ============================================================================
Init()
boucle()
Fin()
end
rem ============================================================================
SUB Init()
    dim hauteur,speed,radius,time,scale,dt,g,x,y,px,py,xspeed,yspeed
    hauteur = 36000000 : speed = 3070 : radius = 6371000
    time = 0 : scale = 400000 :dt = 40 :g = 9.81
    x = 0 : y = radius + hauteur : px = 0 : py = 0 : xspeed = speed : yspeed = 0
    height 0,350 : caption 0," <CLICK> pour arrêter ...."
    color 0,255,255,255 : font_name 0,"arial" : font_bold 0  : font_size 0,12
    2d_fill_on : 2d_pen_width 20 : 2d_fill_color 255,255,255
END_SUB
rem ============================================================================
SUB Boucle()
    dim_local dist,gravity,dx,dy,xac,yac
    repeat
        dist = sqr((x-px)*(x-px) + (y-py)*(y-py))
        gravity = g * (radius/dist) * (radius/dist)
        dx = x - px : dy = y - py
        xac = (dx/dist) * gravity : yac = (dy/dist) * gravity
        xspeed = xspeed - xac * dt : yspeed = yspeed - yac * dt
        x = x + xspeed * dt : y = y + yspeed * dt

        print_locate 150 + x/scale,150 + y/scale : print "[]o[]"
        2d_circle 150+px, 150+py, radius/scale -10
        time = time + dt
        speed = int(sqr(xspeed*xspeed + yspeed*yspeed))
        print_locate 50,10 : print "Paramètres pour une orbite géostationnaire autour de la Terre"
        print_locate 300,50 : print "Height = " + str$(dist/radius) + " radius"
        print_locate 300,70 : print "Speed  = " + str$(speed) + " m/s"
        print_locate 300,90 : print "Time     = " + str$(int(time/3600)) + " h"
        print_locate 300,110 : print "Grav-acc   = " + str$((radius/dist)*(radius/dist)) + " g"
        print_locate 300,130 : print "Centri-acc = " + str$((speed*speed/dist)/g)+ " g"
        display
    until scancode <> 0
END_SUB
rem ============================================================================
SUB Fin()
    dim_local h
    for h = height(0) to 10 step -1 : height 0,h : next h
    terminate
    end : ' Ce END après TERMINATE élimine le désagréable bip
END_SUB
rem ============================================================================

_________________
Invité, merci d'être passé par ici.
avatar
Admin
Admin

Messages : 75
Date d'inscription : 08/09/2015
Age : 67
Localisation : MOKNINE (Tunisie)

Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com

Revenir en haut Aller en bas

Voir le sujet précédent Voir le sujet suivant Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum