Au secours le python est de retour

Il y a super longtemps que je n’ai pas fais un peu de python, enfin vraiment un peu vu mon niveau. Avec le soleil le voici qui ressort 😉

Bon rassurez vous! avec mon niveau en programmation, ça ne vole pas haut …

 

Le projet

 

Les vacances approchant, avec les copains du coin nous avons reparlé aérien portable.

L’idée de base est une verticale quart d’onde sur 20 mètres, et ma question de débutant est : comment calculer

la longueur des radians ? ….

Hop une petite recherche sur internet et je suis tombé sur l’article de TK5EP (c’est marrant, vacances en corse, OM Corse 😉 )

http://www.tk5ep.tk/

Après la lecture de cet excelent article, j’ai calculé la longueur des radians qu’il me fallait …

Et hop l’idée de me refaire le calcul en python est apparue (faut dire que je me sert d’une console python 2.7 comme calculatrice 😉 )

me voici donc lancé dans une partie de codage… Alors oui on peut surement faire mieux, plus rapide, avec la gestion des erreurs mais bon ça fait ce que je lui demande 😉

Le but

Déjà me faire plaisir, ensuite montrer qu’avec peu de compétences on peut, grâce a python, faire des petits programmes de calcul 😉

 

Le code source

# -*- coding: cp1252 -*-
from math import *
from decimal import Decimal, getcontext

coef_gaine=5
coef=0

def Long_Ond(var1):
    return 300/var1

def Quart_Ond (var2):
    return var2/4
   
def Rad(var3):
    return coefficient * var3

def Rad_gaine (var4,var5):
    return var4-((var4/100)*var5)

def arrondi (var6):
    getcontext().prec = 2 #précision voulue
    return Decimal (str(var6))

def quitter():
    #exit()
    print « Merci et au revoir ….. »

def accueil():
    print « Calcul pour antenne verticale 1/4 d’ondes mono bande »
def saisie_frequence():
    return input(« Entrez la fréqence (en MHZ, par exemple 14.1) : « )

def saisie_nb_radian ():
    return input(« Entrez le nombre de radians (4/12/16/24/48/96/120) : « )

def coefficien_nb_radian(var0):
    if (var0==4):
        return 0.1
    elif (var0==12):
        return 0.15
    elif (var0==16):
        return 0.125
    elif (var0==24):
        return 0.25
    elif (var0==48):
        return 0.35
    elif (var0==96):
        return 0.45
    elif (var0==120):
        return 0.50
    else:
        print « mauvais choix, retente ta chance une autre fois 😉 »
        exit()

Frequence = saisie_frequence()
Nb_Radians = saisie_nb_radian()
coefficient = coefficien_nb_radian(Nb_Radians)   
Longueur_Onde = Long_Ond(Frequence)
Quart_Onde = Quart_Ond (Longueur_Onde)
Radian = Rad(Longueur_Onde)
Radian_Gaine = Rad_gaine (Radian,coef_gaine)

print « ———————————————————-« 
print « Frequence____________________________:  » + str(Frequence) +  » MHz »
print « Longueur onde________________________:  » + « %.2f » %Longueur_Onde +  » Mètres »
print « Quart onde___________________________:  » + « %.2f » %Quart_Onde+  » Mètres »
print « Nombres radians______________________:  » + str(Nb_Radians) + « ==> Coefficient = « +str(coefficient)
print « Longueur radian (conducteur dénudé)__:  » + « %.2f » %Radian +  » Mètres »
print « Longueur radian isolé________________:  » + « %.2f » %Radian_Gaine +  » Mètres »
print « ———————————————————-« 

Le programme

Je lance le programme via l’IDLE de python 2.7 voici la copie d’écran du calcul :

 

Calcul radian pour verticale 1/4 d'onde sur 20M

Calcul radian pour verticale 1/4 d’onde sur 20M

 

Conclusion

 

Et voilà, comme je le dis tout le temps,  je n’ai rien inventé, mon code est loin d’être parfait, optimisé,…. mais je me suis fais plaisir en écrivant a nouveau quelques lignes de code et c’était là le but.

Après si vous voulez mon code faite un copier coller, ou envoyez moi un e-mail je vous le ferais parvenir 😉 …

ATTENTION PAS COMPATIBLE PYTHON 3 A PREMIERE VU

 

Bon trafic, bon calcul et amusez bien ….

Fred F4EED

Publicités
Tagged with: , , , , , , , , , , , ,
Publié dans Divers montages, Fabrication d’antenne, Open Source, logiciels libres, Petits tuto ...., Promotion du logiciel libre, Promotion Radioamateur, python, Radio (Radioamateur et Ecouteur)

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s