Está en la página 1de 3

# -*- coding: utf-8 -*-

"""
Created on Sun May 26 13:25:39 2019

@author: Johanna Iza


"""

import math
import numpy as np
from matplotlib import pyplot as plt

var_t=0.05
t=0
tf=0.65
tmax=1
lg=0 #contador_longitud
Ea=1.03
Eb=1
x1=0.4
x2=1.1
x3=0.5
H=2.76
f=60
M=H/(180*f)
k=(var_t**2)/M
P_act=20
P_base=25
Pm=P_act/P_base
d=math.asin(Pm*x1/(Ea*Eb))
av=int(tmax/var_t)+5
a=np.zeros([av,8],float)

print ('\n t(sg) Cte. Sen d P P(ace) 9.76*Pa Aang ang')

tf1=np.array([0.2,0.4,0.6,0.65,0.7])
for i in range(0,5,1):
tf=tf1[i]
lg=0
t=0
for i in range(0,av,1):
if i==0:
a[i,7]=d*180/math.pi
c=(Ea*Eb/x1)
a[i,1]=c
sen=math.sin(d)
a[i,2]=sen
a[i,3]=Pm
a[i,5]=9.76*a[i,4]

elif i==1:#condiciones justo en la falla


a[i,7]=d*180/math.pi
c=(Ea*Eb/x2)
a[i,1]=c
sen=math.sin(d)
a[i,2]=sen
Pe=c*sen
a[i,3]=Pe
Pa=Pm-Pe
a[i,4]=Pa
a[i,5]=9.76*a[i,4]

1
elif i==2: # average
a[i,7]=d*180/math.pi
a[i,4]=Pa/2
incd=a[i,6]+k*a[i,4]
a[i,6]=incd

elif 0<i<((tf/var_t)+3):
t=t+var_t
a[i,0]=t
a[i,7]=a[i-1,7]+a[i-1,6]
c=(Ea*Eb/x2)
a[i,1]=c
a[i,2]=math.sin((a[i,7])*(np.pi/180.0))
Pe=c*a[i,2]
a[i,3]=Pe
a[i,4]=Pm-Pe
a[i,5]=9.76*a[i,4]
incd=a[i-1,6]+k*a[i,4]
a[i,6]=incd #hasta aqui, se calcula los datos antes del despeje de la falla, el valo

elif i==((tf/var_t)+3):
a[i,0]=t
a[i,7]=a[i-1,7]
c=(Ea*Eb/x3)
a[i,1]=c
a[i,2]=math.sin((a[i,7])*(np.pi/180.0))
Pe=c*a[i,2]
a[i,3]=Pe

elif i==((tf/var_t)+4):
a[i,0]=t
a[i,7]=a[i-1,7]
c=(Ea*Eb/x3)
a[i,1]=c
a[i,2]=math.sin((a[i,7])*(np.pi/180.0))
Pe=(a[i-2,3]+a[i-1,3])/2
a[i,3]=Pe
a[i,4]=Pm-Pe
a[i,5]=9.76*a[i,4]
incd=a[i-3,6]+k*a[i,4]
a[i,6]=incd

elif i>((tf/var_t)+4):
t=t+var_t
a[i,0]=t
a[i,7]=a[i-1,7]+a[i-1,6]
c=(Ea*Eb/x3)
a[i,1]=c
a[i,2]=math.sin((a[i,7])*(np.pi/180.0))
Pe=c*a[i,2]
a[i,3]=Pe
a[i,4]=Pm-Pe
a[i,5]=9.76*a[i,4]
incd=a[i-1,6]+k*a[i,4]
a[i,6]=incd

lg=lg+1

2
print ('lg',lg)

for i in range(av):
for j in range(8):
print('{dato:6.3f}|'.format(dato=a[i,j]),end=' ')
print('')

#extarer columna tiempo y columna angulo delta

x=np.zeros(lg)

y=np.zeros(lg)

for i in range(0,av,1):
x[i]=a[i,0]

for i in range(0,av,1):
y[i]=a[i,7]
print('x=',x)
print('y=',y)
#grafico
plt.ion()
plt.plot(x,y)
plt.grid(True)

También podría gustarte