--- rpl/examples/obele.rpl 2010/01/26 15:23:06 1.1 +++ rpl/examples/obele.rpl 2010/02/08 19:26:31 1.2 @@ -1,4 +1,4 @@ -#!/usr/local/bin/rpl -cs +#!/usr/local/bin/rpl -sp /* ================================================================================ @@ -15,12 +15,12 @@ OBELE << - rad 31 cf + rad 31 sf erase "" disp "Algorithme de l'obèle" disp - "{\Large\sl Algorithme de l'obèle}" pr1 drop + "{\\Large\\sl Algorithme de l'obèle}" pr1 drop { "standard*(*)" } @@ -62,9 +62,9 @@ OBELE DISPERSION EQUIPUISSANCE TRACE_UN_MOBILE << "" disp - "\vskip 3ex\noindent" pr1 drop + "\\vskip 3ex\\noindent" pr1 drop "Configuration" pr1 drop - "\hrule\vskip 1ex" pr1 drop + "\\hrule\\vskip 1ex" pr1 drop cr "Nombre d'antennes : " N_ANTENNES ->str + pr1 disp cr "Nombre de mobiles : " N_MOBILES ->str + pr1 disp cr "Type de canal : " MODELE_CANAL ->str + pr1 disp @@ -75,6 +75,7 @@ OBELE PAQUETS DISPERSION DIST EQUIPUISSANCE N_ANTENNES N_MOBILES MODELE_CANAL INITIALISATION_R 'DIRECTIONS' sto 'REPARTITION' sto + if ALGORITHME_BRUITE then @@ -85,7 +86,7 @@ OBELE INITIALISATION_OMNIDIRECTIONNELLE then N_ANTENNES 1 2 ->list 0 con { 1 1 } 1 put - N_MOBILES 1 - dupn N_MOBILES ->list + 1 N_MOBILES 1 - start dup next N_MOBILES ->list else dup FACTEUR_ETALEMENT ALGORITHME_BRUITE SEUIL OPTIMISATION_SIMPLE @@ -143,9 +144,9 @@ OBELE end 2 sci - "\vskip 3ex\noindent" pr1 drop + "\\vskip 3ex\\noindent" pr1 drop " Rapports C/I initiaux" pr1 disp - "\hrule\vskip 1ex" pr1 drop + "\\hrule\\vskip 1ex" pr1 drop "" disp dup array-> 1 get ->list 1 @@ -216,11 +217,11 @@ OBELE /* Boucle principale */ - "\vskip 3ex\noindent" pr1 drop + "\\vskip 3ex\\noindent" pr1 drop " Minimisation de la plus grande valeur propre Lambda" disp " Minimisation de la plus grande valeur propre $\lambda$" pr1 drop - "\hrule\vskip 1ex" pr1 drop + "\\hrule\\vskip 1ex" pr1 drop "" disp std while @@ -356,7 +357,7 @@ OBELE "" disp " Pondérations optimales" pr1 disp - "\hrule\vskip 1ex" pr1 drop + "\\hrule\\vskip 1ex" pr1 drop "" disp 1 N_MOBILES for J @@ -368,9 +369,9 @@ OBELE /* Calcul des puissances par mobile nécessaires */ "" disp - "\vskip 3ex\noindent" pr1 drop + "\\vskip 3ex\\noindent" pr1 drop " Calcul des puissances par mobile nécessaires" pr1 disp - "\hrule\vskip 1ex" pr1 drop + "\\hrule\\vskip 1ex" pr1 drop "" disp if @@ -464,7 +465,7 @@ OBELE drop "absurde" end - "\vskip 3ex\noindent" pr1 drop + "\\vskip 3ex\\noindent" pr1 drop " Rapports C/I finaux " "(amélioration de la puissance émise : " + swap ->str + ")" + pr1 disp @@ -480,7 +481,7 @@ OBELE N_MOBILES FACTEUR_ETALEMENT CALCUL_RAPPORTS_SIGNAUX_INTERFERENCE - "\hrule\vskip 1ex" pr1 drop + "\\hrule\\vskip 1ex" pr1 drop "" disp pr1 disp "" disp @@ -611,9 +612,9 @@ INITIALISATION_R " Initialisation des matrices d'autocorrélation du canal" disp "" disp - "\vskip 3ex\noindent" pr1 drop + "\\vskip 3ex\\noindent" pr1 drop "Positions et puissances des différents récepteurs" pr1 drop - "\hrule\vskip 1ex" pr1 drop + "\\hrule\\vskip 1ex" pr1 drop { } dup -> PAQUETS DISPERSION DIST EQUIPUISSANCE NA NM MODELE DIRECTIONS @@ -767,7 +768,7 @@ INITIALISATION_R rclf std "Répartition : " REPARTITION_INTERNE ->str + pr1 - "\hrule\vskip 1ex" pr1 drop + "\\hrule\\vskip 1ex" pr1 drop disp "" disp stof // Boucle sur les paquets de mobiles @@ -779,7 +780,7 @@ INITIALISATION_R ANGLES_MOYENS P 1 ->list get + DIRECTIONS over 1 ->list + 'DIRECTIONS' sto "Azimut : " over ->hms ->str + dup " ° (HMS)" + disp - "\degre (HMS)" + cr pr1 drop + "\\degre (HMS)" + cr pr1 drop NA COEFF size 2 get 2 ->list 0 con COEFF size 2 get dup 2 ->list 0 con 0