1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70
| import cmath
from mst.GUM.complex.gum import *
C = Context()
_J_ = C.constant(0+1j)
A = C.gaussian(1.52e-3,uAbsolute(0.02e-3)) # Petit diamètre
B = C.gaussian(3.50e-3,uAbsolute(0.02e-3)) # Grand diamètre
deltaL = C.gaussian(1e-3,uAbsolute(0.5e-3)
a = A/2 # Petit rayon
b = B/2 # Grand rayon
c = 299792458 # Célérité
µ = 4*cmath.pi*1e-7 # Perméabilité
E0 = 1/µ/c**2 # Permittivité dans le vide
E = 1.000649*E0 # Permittivité dans le matériau
rho = 22e-9 # Résistivité
r = b/a # Rapport des rayons
F1 = (r**2-1)/(2*log(r))
F2 = (r)*log(r)/(r+1)
F0 = F1-F2-0.5*(r+1)
L0 = µ*log(r)/2/cmath.pi # Inductance linéique sans perte
C0 = 2*cmath.pi*E/log(r) # Capacité linéique sans perte
startF = 18e9
stopF= 26.5e9
numberP = 21
print "Calcul des caractéristiques d'une ligne à air"
print "valeur de a = ", result(a)
print "valeur de b = ", result(b)
print "valeur de µ = ", result(µ)
print "valeur de E = ", result(E)
print "valeur de r = ", result(r)
print "C0 =", result(C0)
print "L0 =", result(L0)
gammeF = range(1,numberP,1)
for i in gammeF:
print 'i=',i
#f = 18e9
f = startF + (i-1)*(stopF-startF)/(numberP-1)
print 'f=',f
w = 2*cmath.pi*f #pulsation
print 'w =',w
k = w*sqrt(L0*C0) #nombre d'onde angulaire
print 'k =',value(k)
d1 = 2*rho/w/µ
print 'd1 =', d1
d2 = cmath.sqrt(d1)
print d2
ds = cmath.sqrt(2*rho/w/µ) #épaisseur de peau
print 'épaisseur de peau de ligne : ds=',result(ds)
d0 = ds*(1+r)/(4*b*log(r))
print "d0 = ", result(d0)
R = 2*w*L0*d0*(1-k**2*a**2*F0/2) #résistance linéique
print 'Résistance linéique R =', result(R)
L = L0*(1+2*d0*(1-k**2*a**2*F0/2)) #inductance linéique
print 'Inductance linéique L =',result(L)
G = w*C0*d0*k**2*a**2*F0 #conductance linéique
print 'Conductance linéique G =',result(G)
C = C0*(1+d0*k**2*a**2*F0) #capacité linéique
print 'Capacité linéique C=',result(C)
Zc = sqrt((R+(L*w)*_J_)/(G+(C*w)*_J_)) #impédance caractéristique
print 'Impédance caractéristique Z =',result(Zc)
gamma = sqrt((R+(L*w)*_J_)*(G+(C*w)*_J_)) #constante de propagation
print 'Constante de propagation Gamma =',result(gamma)
#Calcul de la matrice ABCD
coef = gamma*deltaL
print result(coef) |
Partager