SlideShare una empresa de Scribd logo
1 de 125
” Año de la Promoción de la Industria Responsable y Compromiso
Climático
UNIVERSIDAD NACIONAL
DEL CALLAO
FACULTAD DE CIENCIAS
NATURALES Y MATEMÁTICA
FÍSICA TEÓRICA COMPUTACIONAL I
“MÉTODOS NUMÉRICOSCON FORTRAN 90”
ALUMNO:
MARCO ANTONIO ALPACA CHAMBA
ESCUELA PROFESIONAL:
FÍSICA
TEMAS:
ADAMS-BASHFORTH CON CAMBIO DE VARIABLE
ADAMS-BASHFORTH
ADAMS-MOULTON
DDNGB (U DIFERENTE=0)
DDST (U DIFERENTE DE 0)
DDST (U=0)
NFB
DNGB (U=0)
DNGF u diferente de 0
DST (U DIFERENTE 0)
DST (U=0)
INVERSA APLICACIÓN
JACOBI-RGS
NGB
NUMEROV
STORMER
SOBRE RELAJACIÓN SUCESIVA-INVERSA Y DETERMINANTE
EIGENVALORES Y EGENVECTORES
24 de Noviembre del 2014
PROGRAMADE TODOS LOS EIGENVALORES
En la vibración natural de tres masas, m, 2 m, y m, conectados por los cuatro resortes que se
muestran en la Figura 1, determinar el polinomio característico, los valores propios, que
corresponden a las frecuencias naturales de vibración, y los vectores propios, que dan la
amplitudes de movimiento de las masas. Las constantes elásticas de los cuatro resortes son k,
2k, 2k, y k. Los desplazamientos de las tres masas están definidos por las coordenadas x1, x2, y
x3, respectivamente, como se muestran. Tomar k / m = 1,0.
FIGURA 1
Sistema de masa y resorte de vibración.
SOLUCIÓN
La extensión en el primer resorte, desde la izquierda, es x1 y la del segundo resorte es (x2 – x1).
Puesto que la fuerza dirigida hacia el interior debido a la extensión está dado por un producto
de la constante de resorte y la extensión, la fuerza neta que actúa sobre la primera masa en la
dirección positiva de x1 es | 2K (x2 - x1) - Kx1 |. Por lo tanto, de la segunda ley de Newton,
(1a), donde x dos puntos, es la segunda derivada de x, con
respecto al tiempo t y es, por lo tanto, la aceleración de la masa. Del mismo modo, para las
otras masas,
(1b),
(1c).
A partir de la teoría de las vibraciones, la solución a las ecuaciones anteriores se puede tomar
como
(2), donde x1, x2, y x3 son las amplitudes de movimiento y ω es la
frecuencia natural en radianes/segundo. Si estas ecuaciones son sustituidas en las ecuaciones
de movimiento, de las ecuaciones 1, obtenemos el siguiente sistema de ecuaciones lineales
homogéneas para k/m = 1.0:
(3).
Este sistema puede escribirse en forma matricial como AX= λX (4), donde λ=ω2
(5) y
(6).
Una solución no trivial de la ecuación 3 sólo puede obtenerse si el determinante de la matriz de
coeficientes (A - λ) es cero. Por lo tanto,
(7).
Obtenemos el polinomio característico para este problema de valores propios mediante la
ampliación de este determinante como
-λ3
+8λ2
-17λ +6 =0 (8a).
USANDO FORTRAN PARA OBTENER TODOS LOS EIGENVALORES Y EIGENVECTORES
TENEMOS:
PROGRAM ALL_THE_EIGEIVALUES
PARAMETER (IDM=10)
DIMENSION A(IDM,IDM),RT(IDM,IDM)
REAL LAMBDA(IDM)
PRINT *,'NUMBER OF EQUATIONS ARE:'
READ(5,*)N
PRINT*,''
PRINT*,'INGRESAR ELEMENTOS DE LA MATRIZ A POR FILAS'
READ(5,*)((A(I,J),J=1,N),I=1,N)
PRINT*,''
PRINT*,('*',I=1,79)
PRINT '(5X,"RESULTADOS")'
PRINT*,('*',I=1,79)
DO 20 I=1,N
DO 10 J=1,N
RT(I,J)=0.0
10 CONTINUE
RT(I,I) = 1.0
20 CONTINUE
NSWEEP= 0
30 NRSKIP= 0
NMIN1=N-1
DO 130 I=1,NMIN1
IP1=I+1
DO 120 J=IP1,N
AV=0.5*(A(I,J)+A(J,I))
DIFF=A(I,I)-A(J,J)
RAD=SQRT(DIFF*DIFF+4.0*AV*AV)
IF(RAD.EQ.0.0) GO TO 80
IF(DIFF.LT.0.0) GO TO 60
IF(ABS(A(I,I)).EQ.ABS(A(I,I))+100.*ABS(AV)) GO TO 40
GO TO 40
40 IF( ABS(A(J,J)).EQ.ABS(A(J,J))+100.*ABS(AV)) GO TO 80
50 COSINE=SQRT((RAD+DIFF)/(2.0*RAD))
SINE=AV/(RAD*COSINE)
GO TO 70
60 SINE = SQRT((RAD-DIFF)/(2.0*RAD))
IF(AV.LT.0.0) SINE=-SINE
COSINE=AV/(RAD*SINE)
70 IF(1.0.LT.1.0+ABS(SINE)) GO TO 90
80 NRSKIP=NRSKIP+1
GO TO 120
90 DO 100 K=1,N
Q=A(I,K)
A(I,K)=COSINE*Q+SINE*A(J,K)
A(J,K)=-SINE*Q+COSINE*A(J,K)
100 CONTINUE
DO 110 K=1,N
Q=A(K,I)
A(K,I)= COSINE*Q+SINE*A(K,J)
A(K,J)= -SINE*Q+COSINE*A(K,J)
Q = RT(K,I)
RT(K,I)=COSINE*Q+SINE*RT(K,J)
RT(K,J)=-SINE*Q+COSINE*RT(K,J)
110 CONTINUE
120 CONTINUE
130 CONTINUE
NSWEEP=NSWEEP+1
IF(NSWEEP.GT.50) GO TO 140
IF(NRSKIP.LT.N*(N-1)/2) GO TO 30
140 CONTINUE
DO 150 J=1,N
LAMBDA(J)=A(J,J)
150 CONTINUE
PRINT*,''
PRINT '(2X,"LOS VALORES PROPIOS APROXIMADOS SON:")'
PRINT '(/F9.3)',(LAMBDA(I),I=1,N)
PRINT '(/2X,"LOS VECTORES FILAS ASOCIADOS APROXIMADAMENTE SON:")'
PRINT '(/3F9.3/)',((RT(I,J),I=1,N),J=1,N)
STOP
END
” Año de la Promoción de la Industria Responsable y Compromiso
Climático
UNIVERSIDAD NACIONAL
DEL CALLAO
FACULTAD DE CIENCIAS
NATURALES Y MATEMÁTICA
FÍSICA TEÓRICA COMPUTACIONAL I
“APLICACIÓN CON EL MÉTODO DE ADAMS-
BASHFORTH CON CAMBIO DE VARIABLE EN EDO
DE ORDEN SUPERIOR”
ALUMNO:
MARCO ANTONIO ALPACA CHAMBA
ESCUELA PROFESIONAL:
FÍSICA
FORTRAN 90
Ciudad universitaria, 20 de Noviembre del 2014
SOLUCIÓN BASADA EN LA INTEGRACIÓN NUMÉRICA (MÉTODO DE ADAMS-
BASHFORTH) AL PROBLEMA DE UN SISTEMA VIBRATORIO AMORTIGUADO.
Enunciado del problema: Un sistema vibratorio que consiste de una masa (m=1/5 de
slug o kilogramo) unida a un resorte (k=2 lb/pie o N/m). La masa se libera inicialmente
desde el reposo ½ unidad (pie o metro) debajo de la posiciónde equilibrio. El movimiento
es amortiguado y está siendo impulsado por una fuerza periódica externa (T=ӆ/2 s) f=
5cos4t comenzando en t=0 con β=2. Calcular la posición en t=0.4
Movimiento vertical oscilatorio de apoyo
Solución:
La formulación de la segunda ley de Newton da lugar a la ecuación diferencial de
movimiento forzado:
Reemplazando los datos tenemos:
Cuya solución es:
Evaluando:
= 0.996051
Usando Euler:
𝑌𝑛+1 = 𝑌𝑛 + ∆𝑥 𝐹(𝑋 𝑛, 𝑌𝑛)
Usando Adams-Bashforth:
𝑌𝑛+1 = 𝑌𝑛 +
∆𝑋
24
[55𝐹𝑛 − 59𝐹𝑛−1 + 37𝐹𝑛−2 − 9𝐹𝑛−3 ]
Usando fortran tenemos:
PROGRAM ADAMS_ BASHFORTH
PARAMETER (IDM=150)
DIMENSION
D(IDM,IDM),X(IDM),Y(IDM),F(IDM),Z(IDM),SUM1(IDM),VAL(IDM),VAL1(IDM),SUM2(I
DM),R(IDM,IDM)
REAL(4) H,P,P1
DIMENSION CP(4)
REAL ,PARAMETER::CP=(/55.0,-59.0,37.0,-9.0/)
!REAL ,PARAMETER::CC=(/9.0,19.0,-5.0,1.0/)
PRINT*,
'==================================================================
='
PRINT*,'METHOD DE ADAMS-BASHFORTH PARA EDO DE LA FORMA
y''=F(x,y(x),z) '
PRINT*,'============================================================
========'
PRINT*,''
PRINT*,'INGRESAR EL VALOR DE N'
READ(5,*)N
PRINT*,''
PRINT*, 'INGRESAR LOS VALORES INICIALES X0 E Y0 Y Z(0)'
READ*, X(0),Y(0),Z(0)
PRINT*,''
PRINT*, 'INGRESAR H'
READ*, H
PRINT*,''
PRINT*,('*',I=1,79)
PRINT '(5X,"RESULTADOS")'
PRINT*,('*',I=1,79)
!APLICANDO EULER- CAUCHY
PRINT 90
90 FORMAT(3X,'EULER-CAUCHY APROXIMATION :'/)
PRINT 100
100 FORMAT(4X,'ITERATION',5X ,'X',16X,'Y',18X,'Z')
DO I=0,N
X(I+1)=X(I)+H
ENDDO
DO J=0,N
F(J)=-6*(Z(J))-10*(Y(J))+25*(COS(4*(X(J))))
IF (J.EQ.N) GOTO 10
Z(J+1)=Z(J)+H*F(J)
Y(J+1)=Y(J)+H*Z(J)
PRINT*,J+1,X(J+1),Y(J+1),Z(J+1)
10 ENDDO
PRINT 110
110 FORMAT(/3X,'ADAMS-BASHFORTH APROXIMATION:'/)
DO 6 L=0,N
D(0,L)=F(L)
WRITE (*,9)L,D(0,L)
9 FORMAT (2X,'F(',I3,')=',F12.4)
6 CONTINUE
PRINT*,''
DO I=0,N
K=I+1
IF(K.GE.5) GOTO 1
IF(I.EQ.0) THEN
SUM1(I)=0.0
ENDIF
SUM1(I+1)=(SUM1(I)+(CP(K)*H/24*D(0,N-I)))
WRITE (*,112)I+1,CP(K)
112 FORMAT (2X,'CP(',I2,')=',F12.4)
VAL(N+1)=Z(N)+SUM1(I+1)
1 ENDDO
PRINT*,''
P=VAL(N+1)
PRINT 115
115 FORMAT(/3X,'LA PREDICTOR FORMULA DA:'/)
WRITE (*,116)N+1,P
116 FORMAT (2X,'ZP(',I3,')=',F12.4)
PRINT 117
117 FORMAT(/3X,'ADAMS-BASHFORTH APROXIMATION:'/)
DO L=0,N
R(0,L)=Z(L)
ENDDO
DO I=0,N
K=I+1
IF(K.GE.5)GOTO 2
IF(I.EQ.0) THEN
SUM1(I)=0.0
ENDIF
SUM2(I+1)=(SUM2(I)+(CP(K)*H/24*R(0,N-I)))
VAL1(N+1)=Y(N)+SUM2(I+1)
2 ENDDO
P1=VAL1(N+1)
PRINT 119
119 FORMAT(/3X,'LA PREDICTOR FORMULA DA:'/)
WRITE (*,120)N+1,P1
120 FORMAT (2X,'YP(',I3,')=',F12.4)
PRINT*,''
PRINT*,'POR LO TANTO,LUEGO DE',N,'-ITERACIONES OBTENEMOS:'
PRINT*,''
WRITE (*,121) X(N+1),P1
PRINT*,''
121 FORMAT (10X,'Y(',F7.2,')=',F12.4)
PRINT*,''
STOP
END PROGRAM
” Año de la Promoción de la Industria Responsable y Compromiso
Climático
UNIVERSIDAD NACIONAL
DEL CALLAO
FACULTAD DE CIENCIAS
NATURALES Y MATEMÁTICA
FÍSICA TEÓRICA COMPUTACIONAL I
“APLICACIÓN CON EL MÉTODO DE ADAMS-
BASHFORTH PARA EDO DE PRIMER ORDEN”
ALUMNO:
MARCO ANTONIO ALPACA CHAMBA
ESCUELA PROFESIONAL:
FÍSICA
Ciudad universitaria, 20 de Noviembre del 2014
IMPACTO DE UN COCHE CONTRA UNA BARRERA DE PROTECCIÓN.
Una barrera de protección se sitúa al final de un
circuito con el objeto de parar coches que han
perdido el control. Esta barrera se ha diseñado
de forma que la fuerza que la barrera aplica al
coche viene dada en función de la velocidad v y
del desplazamiento x de la parte frontal de la
barrera, según la expresión:
Donde k=30 s-kg/m5 es una constante.
Un coche, con una masa m de 1500 kg, impacta contra la barrera de protección a una
velocidad de 90 km/h. Calcular y representar la velocidad del coche en función de su
posición para 0 ≤ x ≤ 3 m.
SOLUCIÓN:
La desaceleración del coche, una vez que éste ha impactado contra la barrera, se puede
calcular utilizando la segunda Ley de Newton:
Esta ecuación se puede resolver para la aceleración a en función de v y x:
La velocidad, en función de x, se puede calcular sustituyendo la aceleración en la
ecuación:
, lo que resulta:
Esta última ecuación es una ecuación diferencial ordinaria de primer orden, que se
resolverá en el intervalo 0 ≤ x ≤ 3.0 m con la condición inicial v=90 km/h en x=0
Usando Euler:
𝑌𝑛+1 = 𝑌𝑛 + ∆𝑥 𝐹(𝑋 𝑛, 𝑌𝑛)
Usando Adams-Bashforth:
𝑌𝑛+1 = 𝑌𝑛 +
∆𝑋
24
[55𝐹𝑛 − 59𝐹𝑛−1 + 37𝐹𝑛−2 − 9𝐹𝑛−3 ]
Por lo tanto, haciendo 14 iteraciones resulta:
TAMBIÉN SE VISUALIZA EL GRÁFICO:
PROGRAM ADAMS_BASHFORTH
PARAMETER (IDM=100)
DIMENSION D(IDM,IDM),X(IDM), Y(IDM),F(IDM), Z(IDM),T(IDM)
REAL H,P,P1,P2,S,S1,S2,VAL,VAL1,VAL2,U1,U2,U,H1,SUM
REAL,PARAMETER:: A=0.0; B=1.0; M=60
PRINT*, '=========================================================='
PRINT*,'METHOD DE ADAMS-BASHFORTH PARA EDO DE LA FORMA
DY/DX=F(X,Y)'
PRINT*,'============================================================
'
PRINT*,''
PRINT*,'INGRESAR EL VALOR DE N'
READ(5,*)N
PRINT*,''
PRINT*, 'INGRESAR LOS VALORES INICIALES X0 E Y0'
READ*, X(0),Y(0)
PRINT*,''
PRINT*, 'INGRESAR H'
READ*, H
PRINT*,''
PRINT*,('*',I=1,79)
PRINT '(5X,"RESULTADOS")'
PRINT*,('*',I=1,79)
!APLICANDO EULER- CAUCHY
PRINT 90
90 FORMAT(/3X,'EULER-CAUCHY APROXIMATION:'/)
PRINT 100
100 FORMAT(4X,'ITERATION',5X ,'X',16X,'Y')
DO I=0,N
X(I+1)=X(I)+H
ENDDO
DO J=0,N
F(J)=(-0.02)*(Y(J)**2)*((X(J)+1)**3)
Z(J+1)=Y(J)+H*F(J)
T(J)=(-0.02)*(Z(J+1)**2)*((X(J+1)+1)**3)
IF (J.EQ.N) GOTO 10
Y(J+1)=Y(J)+((H*0.5)*(F(J)+T(J)))
PRINT*,J+1,X(J+1),Y(J+1)
10 ENDDO
PRINT 110
110 FORMAT(/3X,'ADAMS-BASHFORTH APROXIMATION:'/)
DO 6 L=0,N
D(0,L)=F(L)
6 CONTINUE
DO 11 I=1,N
DO 12 J=0,N-I
D(I,J)=D(I-1,J+1)-D(I-1,J)
12 CONTINUE
11 CONTINUE
! PRINT*,''
! DO I=0,N
! PRINT '(I3,10F9.3)',I+1,X(I),(D(I,K),K=0,N-I)
! ENDDO
! PRINT*,''
U1=A
S1=0.0
P1=1.0
DO I=1,N
P1=P1*(U1+I-1)/I
S1=S1+P1*D(I,N-I)
ENDDO
VAL1=S1+D(0,N)
U2=B
S2=0.0
P2=1.0
DO I=1,N
P2=P2*(U2+I-1)/I
S2=S2+P2*D(I,N-I)
ENDDO
VAL2=S2+D(0,N)
H1=(B-A)/REAL(M)
SUM=0.5*(VAL1+VAL2)
DO J=1,M-1
U=A+J*H1
S=0.0
P=1.0
DO 15 I=1,N
P=P*(U+I-1)/I
S=S+P*D(I,N-I)
15 CONTINUE
VAL=S+D(0,N)
SUM =SUM+ VAL
END DO
SUM = H1*SUM
PRINT 115
115 FORMAT(/3X,'LA INTEGRAL RESULTA:'/)
PRINT*,SUM
PRINT*,''
Y(N+1)=Y(N)+H*SUM
PRINT*,''
PRINT*,'POR LO TANTO,LUEGO DE',N,'-ITERACIONES LA VELOCIDAD ES:'
PRINT*,''
WRITE (*,120) X(N+1),Y(N+1)
PRINT*,''
120 FORMAT (10X,'Y(',F7.3,')=',F12.4)
PRINT*,''
STOP
END PROGRAM
” Año de la Promoción de la Industria Responsable y Compromiso
Climático
UNIVERSIDAD NACIONAL
DEL CALLAO
FACULTAD DE CIENCIAS
NATURALES Y MATEMÁTICA
FÍSICA TEÓRICA COMPUTACIONAL I
“APLICACIÓN CON EL MÉTODO DE ADAMS-
MOULTON PARA EDO DE PRIMER ORDEN”
ALUMNO:
MARCO ANTONIO ALPACA CHAMBA
ESCUELA PROFESIONAL:
FÍSICA
Ciudad universitaria, 15 de Noviembre del 2014
SOLUCIÓN BASADA EN LA INTEGRACIÓN NUMÉRICA (MÉTODO DE ADAMS-
MOULTON).
Enunciado del problema: Al modelar la velocidad de los aviones y la pérdida de altitud
cuando se emerge de un picado, las leyes básicas de la física dan lugar a la ecuación
diferencial
, donde θ denota el ángulo de picado (en radianes), V =
V (θ) es la velocidad del avión, g = 9,8 m/s2 es la constante de aceleración, y k es una
constante relacionada con el área de superficie del ala. Para un avión concreto, k =
0,00145, θ0 = -0,786, y V (θ0)=V0 = 150 m/s. Utilice h = 0,0524 (que divide θ0 en
segmentos iguales) y n = 15 para estimar, la velocidad del avión a la finalización del
picado, es decir, cuando se endereza hasta θ = 0. (¡Por supuesto, utilice herramientas
tecnológicas!)
SOLUCIÓN:
Usando Euler Mejorado:
𝑌𝑛+1 = 𝑌𝑛 + ∆𝑥 (𝐹( 𝑋 𝑛, 𝑌𝑛) + 𝐹( 𝑋 𝑛+1, 𝑌𝑛+1
∗ )) ∗ 0.5
𝑌𝑛+1
∗
= 𝑌𝑛 + ∆𝑥 (𝐹( 𝑋 𝑛, 𝑌𝑛)
Usando Adams-Moulton:
𝑌𝑛+1 = 𝑌𝑛 +
∆𝑋
24
[9𝐹𝑛+1 − 19𝐹𝑛 − 5𝐹𝑛 −1 + 𝐹𝑛 −2]
Utilizando fortran 90 tenemos:
PROGRAM ADAMS_MOULTON
PARAMETER (IDM=150)
DIMENSION D(IDM,IDM),X(IDM),Y(IDM),F(IDM),Z(IDM),T(IDM)
REAL
H,P,P1,P2,S,S1,S2,VAL,VAL1,VAL2,U1,U2,U,H1,SUM,H2,VAL10,VAL20,VAL30
REAL,PARAMETER:: A=0.0; B=1.0; M=1000 ;E=-1.0 ; G=0.0
PRINT*, '=========================================================='
PRINT*,'METHOD DE ADAMS-MOULTON PARA EDO DE LA FORMA DY/DX=F(X,Y)'
PRINT*,'============================================================
'
PRINT*,''
PRINT*,'INGRESAR EL VALOR DE N'
READ(5,*)N
PRINT*,''
PRINT*, 'INGRESAR LOS VALORES INICIALES X0 E Y0'
READ*, X(0),Y(0)
PRINT*,''
PRINT*, 'INGRESAR H'
READ*, H
PRINT*,''
PRINT*,('*',I=1,79)
PRINT '(5X,"RESULTADOS")'
PRINT*,('*',I=1,79)
!APLICANDO EULER- CAUCHY
PRINT 90
90 FORMAT(/3X,'EULER-CAUCHY APROXIMATION:'/)
PRINT 100
100 FORMAT(4X,'ITERATION',5X ,'X',16X,'Y')
DO I=0,N
X(I+1)=X(I)+H
ENDDO
DO J=0,N
F(J)=-9.8*(Y(J))*SIN(X(J))*(1/(0.00145*(Y(J)**2)-9.8*COS(X(J))))
Z(J+1)=Y(J)+H*F(J)
T(J)=-9.8*(Z(J+1))*SIN(X(J+1))*(1/(0.00145*(Z(J+1)**2)-9.8*COS(X(J+1))))
IF (J.EQ.N) GOTO 10
Y(J+1)=Y(J)+((H*0.5)*(F(J)+T(J)))
PRINT*,J+1,X(J+1),Y(J+1)
10 ENDDO
PRINT 110
110 FORMAT(/3X,'ADAMS-BASHFORTH APROXIMATION:'/)
DO 6 L=0,N+1
D(0,L)=F(L)
6 CONTINUE
DO 11 I=1,N+1
DO 12 J=0,N+1-I
D(I,J)=D(I-1,J+1)-D(I-1,J)
12 CONTINUE
11 CONTINUE
U1=A
S1=0.0
P1=1.0
DO I=1,N
P1=P1*(U1+I-1)/I
S1=S1+P1*D(I,N-I)
ENDDO
VAL1=S1+D(0,N)
U2=B
S2=0.0
P2=1.0
DO I=1,N
P2=P2*(U2+I-1)/I
S2=S2+P2*D(I,N-I)
ENDDO
VAL2=S2+D(0,N)
H1=(B-A)/REAL(M)
SUM=0.5*(VAL1+VAL2)
DO J=1,M-1
U=A+J*H1
S=0.0
P=1.0
DO 15 I=1,N
P=P*(U+I-1)/I
S=S+P*D(I,N-I)
15 CONTINUE
VAL=S+D(0,N)
SUM =SUM+ VAL
END DO
SUM = H1*SUM
WRITE (*,115) SUM
115 FORMAT(/3X,'LA INTEGRAL RESULTA=',F10.5/)
!PREDICTOR FORMULA
F(N+1)=Y(N)+H*SUM
WRITE (*,117) F(N+1)
117 FORMAT(/3X,'DE LA PREDICTOR FORMULA RESULTA Y(P)(N+1)=',F10.5/)
D(0,N+1)=F(N+1)
DO I=1,N
J=N+1-I
D(I,J)=D(I-1,J+1)-D(I-1,J)
ENDDO
! DO I=0,N
! PRINT '(I3,10F9.3)',I,(D(I,K),K=0,N+1-I)
! ENDDO
PRINT 118
118 FORMAT(/3X,'ADAMS-MOULTON APROXIMATION:'/)
U10=E
S10=0.0
P10=1.0
DO I=1,N
P10=P10*(U10+I-1)/I
S10=S10+P10*D(I,N+1-I)
ENDDO
VAL10=S10+D(0,N+1)
U20=G
S20=0.0
P20=1.0
DO I=1,N
P20=P20*(U20+I-1)/I
S20=S20+P20*D(I,N+1-I)
ENDDO
VAL20=S20+D(0,N+1)
H2=(G-E)/REAL(M)
SUM1=0.5*(VAL10+VAL20)
DO J=1,M-1
U30=E+J*H2
S30=0.0
P30=1.0
DO 16 I=1,N
P30=P30*(U30+I-1)/I
S30=S30+P30*D(I,N+1-I)
16 CONTINUE
VAL30=S30+D(0,N+1)
SUM1 =SUM1+ VAL30
END DO
SUM1 = H2*SUM1
WRITE (*,119) SUM1
119 FORMAT(/3X,'LA INTEGRAL RESULTA=',F10.4/)
! CORRECTOR FORMULA
Y(N+1)=Y(N)+H*SUM1
WRITE (*,121) Y(N+1)
121 FORMAT(/3X,'DE LA CORRECTOR FORMULA RESULTA Y(C)(N+1)=',F10.4/)
PRINT*, ' POR LO TANTO,LUEGO DE',N,'-ITERACIONES LA VELOCIDAD ES:'
PRINT*,''
WRITE (*,120) X(N+1),Y(N+1)
PRINT*,''
120 FORMAT (10X,'Y(',F7.3,')=',F12.4)
PRINT*,''
STOP
END PROGRAM
” Año de la Promoción de la Industria Responsable y Compromiso
Climático
UNIVERSIDAD NACIONAL
DEL CALLAO
FACULTAD DE CIENCIAS
NATURALES Y MATEMÁTICA
FÍSICA TEÓRICA COMPUTACIONAL I
“APLICACIÓN CON EL MÉTODO DE ADAMS-
MOULTON PARA EDO DE PRIMER ORDEN”
ALUMNO:
MARCO ANTONIO ALPACA CHAMBA
ESCUELA PROFESIONAL:
FÍSICA
Ciudad universitaria, 20 de Noviembre del 2014
SOLUCIÓN BASADA EN LA INTEGRACIÓN NUMÉRICA (MÉTODO DE ADAMS-
MOULTON).
Enunciado del problema: Al modelar la velocidad de los aviones y la pérdida de altitud
cuando se emerge de un picado, las leyes básicas de la física dan lugar a la ecuación
diferencial
, donde θ denota el ángulo de picado (en radianes), V =
V (θ) es la velocidad del avión, g = 9,8 m/s2 es la constante de aceleración, y k es una
constante relacionada con el área de superficie del ala. Para un avión concreto, k =
0,00145, θ0 = -0,786, y V (θ0)=V0 = 150 m/s. Utilice h = 0,006 (que divide θ0 en segmentos
iguales) y n = 130 para estimar, la velocidad del avión a la finalización del picado, es
decir, cuando se endereza hasta θ = 0. (¡Por supuesto, utilice herramientas
tecnológicas!)
SOLUCIÓN:
Usando Euler Mejorado:
𝑌𝑛+1 = 𝑌𝑛 + ∆𝑥 (𝐹( 𝑋 𝑛, 𝑌𝑛) + 𝐹( 𝑋 𝑛+1, 𝑌𝑛+1
∗ )) ∗ 0.5
𝑌𝑛+1
∗
= 𝑌𝑛 + ∆𝑥 (𝐹( 𝑋 𝑛, 𝑌𝑛)
Usando Adams-Moulton:
𝑌𝑛+1 = 𝑌𝑛 +
∆𝑋
24
[9𝐹𝑛+1 − 19𝐹𝑛 − 5𝐹𝑛 −1 + 𝐹𝑛 −2]
Utilizando fortran 90 tenemos:
PROGRAM ADAMS_MOULTON
PARAMETER (IDM=150)
DIMENSION D(IDM,IDM),X(IDM), Y(IDM),F(IDM), Z(IDM),T(IDM),SUM1(IDM)
,VAL(IDM),VAL1(IDM),SUM2(IDM)
REAL(4) H,P,P1
DIMENSION CP(4),CC(4)
REAL ,PARAMETER::CP=(/55.0,-59.0,37.0,-9.0/)
REAL ,PARAMETER::CC=(/9.0,19.0,-5.0,1.0/)
PRINT*,''
PRINT*, '=========================================================='
PRINT*,'METHOD DE ADAMS-MOULTON PARA EDO DE LA FORMA DY/DX=F(X,Y)'
PRINT*,'============================================================
'
PRINT*,''
PRINT*,'INGRESAR EL VALOR DE N'
READ(5,*)N
PRINT*, 'INGRESAR LOS VALORES INICIALES X0 E Y0'
READ*, X(0),Y(0)
PRINT*, 'INGRESAR H'
READ*, H
PRINT*,''
PRINT*,('*',I=1,79)
PRINT '(5X,"RESULTADOS")'
PRINT*,('*',I=1,79)
!APLICANDO EULER- CAUCHY
PRINT 90
90 FORMAT(3X,'EULER-CAUCHY APROXIMATION MEJORADA:'/)
PRINT 100
100 FORMAT(4X,'ITERATION',5X ,'X',16X,'Y')
DO I=0,N
X(I+1)=X(I)+H
ENDDO
DO J=0,N
F(J)=-9.8*(Y(J))*SIN(X(J))*(1/(0.00145*(Y(J)**2)-9.8*COS(X(J))))
Z(J+1)=Y(J)+H*F(J)
T(J)=-9.8*(Z(J+1))*SIN(X(J+1))*(1/(0.00145*(Z(J+1)**2)-9.8*COS(X(J+1))))
IF (J.EQ.N) GOTO 10
Y(J+1)=Y(J)+((H*0.5)*(F(J)+T(J)))
PRINT*,J+1,X(J+1),Y(J+1)
10 ENDDO
PRINT 110
110 FORMAT(/3X,'ADAMS-BASHFORTH APROXIMATION:'/)
DO 6 L=0,N
D(0,L)=F(L)
WRITE (*,9)L,D(0,L)
9 FORMAT (2X,'F(',I3,')=',F12.4)
6 CONTINUE
PRINT*,''
DO I=0,N
K=I+1
IF(K.GE.5) GOTO 1
IF(I.EQ.0) THEN
SUM1(I)=0.0
ENDIF
SUM1(I+1)=(SUM1(I)+(CP(K)*H/24*D(0,N-I)))
WRITE (*,112)I+1,CP(K)
112 FORMAT (2X,'CP(',I2,')=',F12.4)
VAL(N+1)=Y(N)+SUM1(I+1)
1 ENDDO
PRINT*,''
P=VAL(N+1)
PRINT 115
115 FORMAT(/3X,'LA PREDICTOR FORMULA DA:'/)
WRITE (*,116)N+1,P
116 FORMAT (2X,'YP(',I3,')=',F12.4)
PRINT 117
117 FORMAT(/3X,'ADAMS-MOULTON APROXIMATION:'/)
DO I=0,N
K=I+1
IF(K.GE.5)GOTO 2
IF(I.EQ.0) THEN
SUM1(I)=0.0
D(0,N+1-I)=P
ENDIF
SUM2(I+1)=(SUM2(I)+(CC(K)*H/24*D(0,N+1-I)))
WRITE (*,118)I+1,CC(K)
118 FORMAT (2X,'CC(',I2,')=',F12.4)
VAL1(N+1)=Y(N)+SUM2(I+1)
2 ENDDO
P1=VAL1(N+1)
PRINT 119
119 FORMAT(/3X,'LA CORRECTOR FORMULA DA:'/)
WRITE (*,120)N+1,P1
120 FORMAT (2X,'YC(',I3,')=',F12.4)
PRINT*,''
PRINT*,'POR LO TANTO,LUEGO DE',N,'-ITERACIONES OBTENEMOS:'
PRINT*,''
WRITE (*,121) X(N+1),P1
PRINT*,''
121 FORMAT (10X,'Y(',F7.2,')=',F12.4)
PRINT*,''
STOP
END PROGRAM
PROGRAM ADAMS_MOULTON
REAL :: Z(0:150,0:150),X(0:150),H,I,NP,ZF(160),TOL,R(0:150,0:150)
DIMENSION CC(4)
REAL ,PARAMETER::CC=(/9.0,19.0,-5.0,1.0/)
PRINT*,''
PRINT*, '=========================================================='
PRINT*,'METHOD DE ADAMS-MOULTON PARA EDO DE LA FORMA DY/DX=F(X,Y)'
PRINT*,'============================================================
'
PRINT*,''
PRINT*,'INGRESAR EL NUMBER DE PUNTOS (NP)'
READ(5,*)NP
PRINT*, 'INGRESAR LOS VALORES INICIALES X0 E Y0'
READ*, X(0),Z(0,0)
PRINT*, 'INGRESAR H'
READ*, H
PRINT*, 'INGRESAR TOLERANCIA'
READ*, TOL
PRINT*,('*',I=1,79)
PRINT '(5X,"RESULTADOS")'
PRINT*,('*',I=1,79)
!APLICANDO EULER- CAUCHY
PRINT 90
90 FORMAT(3X,'EULER-CAUCHY APROXIMATION MEJORADA:'/)
PRINT 100
100 FORMAT(4X,'ITERATION',5X ,'X',16X,'Y')
ZF(0)=Z(0,0) !NOS SIRVE COMO PUNTO DE PARTIDA
DO L=1,NP
X(L)=X(0)+L*H
ENDDO
PRINT*,0,X(0),Z(0,0)
DO N=1,3
R(0,N)= Z(0,N-1)+H*F(X(N-1),Z(0,N-1))
Z(0,N)=Z(0,N-1)+(0.5)*H*(F(X(N-1),Z(0,N-1))+F(X(N),R(0,N)))
ZF(N)=Z(0,N)
PRINT*,N,X(N),Z(0,N)
END DO
PRINT*,''
PRINT 111
111 FORMAT(/3X,'ADAMS-MOULTON APROXIMATION:'/)
DO J=1,4
WRITE (*,112)J,CC(J)
112 FORMAT (2X,'CC(',I2,')=',F12.4)
ENDDO
PRINT 113
113 FORMAT(9X ,'X',19X,'Y')
DO N=3,NP
I=0
10 I=I+1
Z(I,N)=ZF(N-1)+h/24*(9*F(X(N),ZF(N))+19*F(X(N-1),ZF(N-1))-5*F(X(N-2),ZF(N-
2))+F(X(N-3),ZF(N-3)))
ZF(N)=Z(I,N)
!CALCULAMOS LA CONVERGENCIA
EE=ABS(Z(I,N)-Z(I-1,N)) !ERROR ENCONTRADO
IF (EE.GT.TOL) THEN
GOTO 10
END IF
ZF(N+1)=Z(I,N)
PRINT*, X(N),ZF(N)
ENDDO
PRINT*,''
PRINT*,' POR LO TANTO,LUEGO DE LAS ITERACIONES OBTENEMOS:'
PRINT*,''
WRITE (*,121) X(NP),ZF(N)
121 FORMAT (10X,'Y(',F7.2,')=',F12.4)
PRINT*,''
END PROGRAM
FUNCTION F(X,Y)
!F=4*Y+COS(X**2)
F=-9.8*Y*SIN(X)/(0.00145*(Y**2)-9.8*COS(X))
RETURN
END FUNCTION
” Año de la Promoción de la Industria Responsable y Compromiso
Climático
UNIVERSIDAD NACIONAL
DEL CALLAO
FACULTAD DE CIENCIAS
NATURALES Y MATEMÁTICA
FÍSICA TEÓRICA COMPUTACIONAL I
“APLICACIÓN CON LA FÓRMULA DE
APROXIMACIÓN DDNGB (U≠ 0)”
ALUMNO:
MARCO ANTONIO ALPACA CHAMBA
ESCUELA PROFESIONAL:
FÍSICA
Ciudad universitaria, 30 de Octubre del 2014
Una varilla está girando en un plano. La tabla muestra el ángulo Θ (radianes) a través
del cual la varilla toma varios valores en el instante t en segundos.
Encontrar la velocidad angular y la aceleración angular de la varilla cuando t = 0.7
segundos.
SOLUCIÓN:
Utilizando las fórmulas:
𝐹𝑚
′ ( 𝑢) =
1
∆𝑥
∑ ∇𝑡
𝑓𝑘 ( 𝑢 + 𝑡 − 1
𝑡
)
𝑚
𝑡=1
∑
1
𝑢 + 𝑖
+ 𝐸
𝑡−1
𝑖=0
𝐹𝑚
" ( 𝑢) =
1
∆𝑥2
∑ ∇𝑡
𝑓𝑘 ( 𝑢 + 𝑡 − 1
𝑡
) ∑ ∑
1
(𝑢 + 𝑖) (𝑢 + 𝑗)
𝑡−1
𝑗=0
𝑗≠𝑖
𝑡−1
𝑖=0
+ 𝐸
𝑚
𝑡=2
Por lo tanto la velocidad angular y la aceleración angular en t = 0,6 segundos son 4.496
rad/s y 6.82 rad/s2 respectivamente.
PROGRAM DNGB
!U≠0
PARAMETER (IDM=10)
DIMENSION D(IDM,IDM),X(IDM), F(IDM)
REAL Z,S,P,VAL,H,L
INTEGER N
PRINT*, '====================================================='
PRINT*,' INTERPOLATION DE LA PRIMERA DERIVADA DNGB '
PRINT*,' BACKWARD '
PRINT*,' PARA UN VALOR INTERMEDIO QUE NO ESTA EN LA TABLA'
PRINT*, '===================================================== '
PRINT*,'INGRESAR EL VALOR DE N'
READ(5,*)N
PRINT*,''
DO 5 I=0,N
PRINT*,'INGRESAR EL PUNTO',I+1
READ(5,*)X(I),F(I)
5 CONTINUE
DO 6 J=0,N
D(0,J)=F(J)
6 CONTINUE
PRINT*,''
WRITE (*,*)'INGRESE EL VALOR A INTERPOLAR'
READ(5,*) Z
PRINT*,''
PRINT*,('*',I=1,79)
PRINT '(5X,"RESULTADOS")'
PRINT*,('*',I=1,79)
H=(X(1)-X(0))
U=(Z-X(N))/H
PRINT 100
100 FORMAT(11x,'H',12X ,'Z',12x,'U')
PRINT*,H,Z,U
PRINT*,''
S=0.0
DO 11 I=1,N
DO 12 J=0,N-I
D(I,J)=D(I-1,J+1)-D(I-1,J)
12 CONTINUE
11 CONTINUE
DO I=0,N
PRINT '(I3,10F9.3)',I+1,X(I),(D(I,K),K=0,N-I)
ENDDO
PRINT*,''
P=1.0
DO 15 I=1,N
P=P*(U+I-1)/I
L=0
DO J=0,I-1
L=L+(1/(U+J))
ENDDO
S=S+P*D(I,N-I)*L
15 CONTINUE
VAL=S/H
PRINT*,'LA INTERPOLATION DE (',Z,')=',VAL
PRINT*,''
STOP
END
PROGRAM DDNGB
!U≠0
PARAMETER (IDM=10)
DIMENSION D(IDM,IDM),X(IDM), F(IDM)
REAL Z,S1,S2,P1,P2,VAL1,VAL2,VAL,H,U
INTEGER N
PRINT*, '====================================================='
PRINT*,' INTERPOLATION DE LA SEGUNDA DERIVADA DNGB '
PRINT*,' BACKWARD '
PRINT*,' PARA UN VALOR INTERMEDIO, ES DECIR U DIFERENTE 0 '
PRINT*, '===================================================== '
PRINT*,'INGRESAR EL VALOR DE N'
READ(5,*)N
PRINT*,''
DO 5 I=0,N
PRINT*,'INGRESAR EL PUNTO',I+1
READ(5,*)X(I),F(I)
5 CONTINUE
DO 6 J=0,N
D(0,J)=F(J)
6 CONTINUE
PRINT*,''
WRITE (*,*)'INGRESE EL VALOR A INTERPOLAR'
READ(5,*) Z
PRINT*,''
PRINT*,('*',I=1,79)
PRINT '(5X,"RESULTADOS")'
PRINT*,('*',I=1,79)
H=(X(1)-X(0))
U=(Z-X(N))/H
PRINT 100
100 FORMAT(11x,'H',12X ,'Z',12X,'U')
PRINT*,H,Z,U
PRINT*,''
S1=0.0
S2=0.0
P1=1.0
DO 11 I=1,N
DO 12 J=0,N-I
D(I,J)=D(I-1,J+1)-D(I-1,J)
12 CONTINUE
11 CONTINUE
DO I=0,N
PRINT '(I3,10F9.3)',I+1,X(I),(D(I,K),K=0,N-I)
ENDDO
PRINT*,''
DO 15 I=2,N
DO J=0,I-1
P1=P1*(U+J)/(J+1)
ENDDO
S1=S1+P1*D(I,N-I)
15 CONTINUE
VAL1=S1
DO I=0,N-1
P2=1.0
DO J=0,N-1
IF(J.EQ.I) GOTO 20
P2=P2*(1/((U+I)*(U+J)))
20 ENDDO
S2=S2+P2
ENDDO
VAL2=S2
VAL=(VAL1*VAL2)/(H**2)
PRINT*,''
PRINT*,'LA INTERPOLATION DE (',Z,')=',VAL
PRINT*,''
STOP
END
” Año de la Promoción de la Industria Responsable y Compromiso
Climático
UNIVERSIDAD NACIONAL
DEL CALLAO
FACULTAD DE CIENCIAS
NATURALES Y MATEMÁTICA
FÍSICA TEÓRICA COMPUTACIONAL I
“APLICACIÓN CON LA FÓRMULA DE
APROXIMACIÓN DDST (U≠0)”
ALUMNO:
MARCO ANTONIO ALPACA CHAMBA
ESCUELA PROFESIONAL:
FÍSICA
Ciudad universitaria, 20 de Noviembre del 2014
La manivela AB de longitud R= 90 mm está rotando a rapidez angular constante de
dθ/dt = 5000 rev/min. La posición del pistón C se puede demostrar que varía con el
ángulo θ como:
Calcular la aceleración del pistón en θ = 36°, por diferenciación numérica.
SOLUCIÓN:
El mecanismo de un pistón conectado mediante una varilla a una manivela es un
problema clásico utilizado frecuentemente en aplicaciones de ingeniería. La manivela va
rotando con rapidez angular constante, utilizando la ecuación de la posición para ciertos
valores de θ, obtenemos los siguientes datos:
Calculando la segunda derivada tenemos:
La posición del pistón viene dada por:
La derivada de x con respecto al tiempo nos da la velocidad del pistón:
La segunda derivada de x con respecto al tiempo nos da la aceleración del pistón:
Reemplazando los datos tenemos:
Resultando
Por lo tanto la aceleración en θ =16° es -322.523 m/s2
PROGRAM DDST
PARAMETER (IDM=10)
DIMENSION D(IDM,IDM),X(IDM), Y(IDM)
REAL Z,S1,S2,P1,P2,P3,VAL,VAL1,Q,Q1,Q2,Q3,P,U,H,S,R1,R2,S21,S3,S31
INTEGER N,K
PRINT*, '====================================================='
PRINT*,' DDST FORMULA DE STIRLING (U DIFERENTE DE 0) '
PRINT*,'===================================================== '
PRINT*,'INGRESAR EL VALOR DE N=4'
READ(5,*)N
PRINT*,''
DO I=0,N
PRINT*,'INGRESAR EL PUNTO',I+1
READ(5,*)X(I),Y(I)
ENDDO
PRINT*,''
DO 6 J=0,N
D(0,J)=Y(J)
6 CONTINUE
PRINT*,''
WRITE (*,*)'INGRESE EL VALOR A INTERPOLAR'
READ (5,*) Z
PRINT*,''
PRINT*,('*',I=1,79)
PRINT '(5X,"RESULTADOS")'
PRINT*,('*',I=1,79)
DO 12 I=1,N
DO 13 J=0,N-I
D(I,J)=D(I-1,J+1)-D(I-1,J)
13 CONTINUE
12 CONTINUE
PRINT*,''
PRINT*,'TABLA DE DIFERENCIAS CON H UNIFORME'
PRINT*,''
DO I=0,N
PRINT '(I3,10F9.3)',I+1,X(I),(D(I,J),J=0,N-I)
ENDDO
PRINT*,''
H=((X(2)- X(1))*(3.141592/180))
K=((N+2)/2)-1
U=((Z-X(K))/H )*(3.141592/180)
PRINT 100
100 FORMAT(5X,'H',19X ,'Z',17X,'K', 8X,'U')
PRINT*,H,Z,K,U
S1=0.0
P1=1.0
P1=P1*U
DO L=2,K
P=((D(2*(L-1)+1,K-L)+D(2*(L-1)+1,K -(L-1)))/2)
P1=P1*(((U**2)-((L-1)**2))/((2*(L-1)+1)*(2*(L-1))))
S=P1*P
R1=0.0
DO I=1,(2*L-1)
Q1=0.0
DO J=1,(2*L-1)
IF (I.EQ.J) GOTO 10
QI=Q1+(1/((U-L+I)*(U-L+J)))
10 ENDDO
R1=R1+Q1
ENDDO
S1=S1+S*R1
ENDDO
S2=0.0
P2=((U**2)/2)
DO 30 M=2,K
Q=(D(2*M,K-M))
P2=P2*(((U**2)-((M-1)**2))/((2*(M-1)+2)*(2*(M-1)+1)))
S21=P2*Q
R2=0.0
DO I=1,(2*M-1)
Q2=0.0
DO J=1,(2*M-1)
IF (I.EQ.J) GOTO 20
Q2=Q2+(1/((U-M+I)*(U-M+J)))
20 ENDDO
R2=R2+Q2
ENDDO
S2=S2+S21*R2
30 CONTINUE
S3=0.0
P3=(U)
DO 40 J=2,K
Q3=(D(2*J,K-J))
P3=P3*(((U**2)-((J-1)**2))/((2*(J-1)+2)*(2*(J-1)+1)))
S31=P3*Q
R3=0.0
DO I=1,(2*J-1)
R3=R3+(1/(U-J+I))
ENDDO
S3=S3+S31*R3
40 CONTINUE
VAL=(D(K,1)+S1+S2+S3)*(1/(H**2))
VAL1=((52.3598)**2)*VAL
PRINT*,''
PRINT*,'LA ACCELERATION EN (',Z,')=',VAL1
PRINT*,''
STOP
END
” Año de la Promoción de la Industria Responsable y Compromiso
Climático
UNIVERSIDAD NACIONAL
DEL CALLAO
FACULTAD DE CIENCIAS
NATURALES Y MATEMÁTICA
FÍSICA TEÓRICA COMPUTACIONAL I
“APLICACIÓN CON LA FÓRMULA DE
APROXIMACIÓN DDST (U=0)”
ALUMNO:
MARCO ANTONIO ALPACA CHAMBA
ESCUELA PROFESIONAL:
FÍSICA
Ciudad universitaria, 20 de Noviembre del 2014
La tabla adjunta corresponde a la posición de un móvil. Determinar si este móvil sigue
un movimiento uniforme acelerado.
SOLUCIÓN:
Para contestar a esta pregunta se pueden seguir diferentes caminos de solución:
- una opción sería ver si un polinomio de segundo grado se ajusta a la tabla de datos.
- la segunda opción sería determinar la segunda derivada para cada punto de la tabla y
comprobar que ésta es constante.
Siguiendo esta segunda opción, ya que la tabla es equiespaciada y que se pretende
determinar la segunda derivada de la posición respecto al tiempo(la aceleración),se
utilizará el método DDST con u=0.
Los resultados de la segunda derivada para cada punto resultan ser:
La aceleración es constante y, por lo tanto, se trata de un movimiento uniforme
acelerado.
PROGRAM DDST
PARAMETER (IDM=10)
DIMENSION D(IDM,IDM),X(IDM), Y(IDM)
REAL Z,S2,P2,VAL,Q,U,H
INTEGER N,K
PRINT*, '====================================================='
PRINT*,' DDST FORMULA DE STIRLING U=0 '
PRINT*,'===================================================== '
PRINT*,'INGRESAR EL VALOR DE N , MULTIPLO DE 2'
READ(5,*)N
PRINT*,''
DO I=0,N
PRINT*,'INGRESAR EL PUNTO',I+1
READ(5,*)X(I),Y(I)
ENDDO
PRINT*,''
DO 6 J=0,N
D(0,J)=Y(J)
6 CONTINUE
PRINT*,''
WRITE (*,*)'INGRESE EL VALOR A INTERPOLAR'
READ (5,*) Z
PRINT*,''
PRINT*,('*',I=1,79)
PRINT '(5X,"RESULTADOS")'
PRINT*,('*',I=1,79)
DO 12 I=1,N
DO 13 J=0,N-I
D(I,J)=D(I-1,J+1)-D(I-1,J)
13 CONTINUE
12 CONTINUE
PRINT*,''
PRINT*,'TABLA DE DIFERENCIAS CON H UNIFORME'
PRINT*,''
DO I=0,N
PRINT '(I3,10F9.3)',I+1,X(I),(D(I,J),J=0,N-I)
ENDDO
PRINT*,''
H=(X(2)- X(1))
K=((N+2)/2)-1
U=(Z-X(K))/H
PRINT 100
100 FORMAT(5X,'H',19X ,'Z',17X,'K', 8X,'U')
PRINT*,H,Z,K,U
S2=0.0
P2=1.0
DO 30 M=1,K
Q=(D(2*M,K-M))
S2=S2+P2*Q
P2=P2*((-((M-1)**2))/((2*(M-1)+2)*(2*(M-1)+1)))
30 CONTINUE
VAL=S2*(1/(H**2))
PRINT*,''
PRINT*,'LA INTERPOLATION DE (',Z,')=',VAL
PRINT*,''
STOP
END
” Año de la Promoción de la Industria Responsable y Compromiso
Climático
UNIVERSIDAD NACIONAL
DEL CALLAO
FACULTAD DE CIENCIAS
NATURALES Y MATEMÁTICA
FÍSICA TEÓRICA COMPUTACIONAL I
“APLICACIÓN DE INTERPOLACIÓN NFB.”
ALUMNO:
MARCO ANTONIO ALPACA CHAMBA
ESCUELA PROFESIONAL:
FÍSICA
Ciudad universitaria, 25 de Septiembre del 2014
Dos partículas tienen una fuerza de interacción que varía de acuerdo a la distancia entre
ellas
Hallar la fuerza de interacción en x=4.15
Solución:
Usando la interpolación NGB tenemos:
PROGRAM NGB
REAL,DIMENSION(:), ALLOCATABLE::X,FX, T(:,:)
CHARACTER(2)::RPTA
PRINT*,'INGRESAR EL NUMBER DE PUNTOS'
READ*,M
ALLOCATE(X(0:M),FX(0:M),T(0:M,0:M))
N=M-1
DO I=0,N
PRINT*,'INGRESAR EL PUNTO',I+1
READ*,X(I),FX(I)
END DO
DO
10 PRINT*,'INGRESAR UN PUNTO A INTERPOLAR'
READ*,XA
IF(XA<X(0).OR.XA>X(N)) THEN
PRINT*,'ADVERTENCIA:X,ESTA FUERA DE RANGO:(',X(0),X(N),')'
GOTO 10
ENDIF
I=0
DO WHILE (I<=N-1)
T(I,0)=(FX(I+1)-FX(I))/(X(I+1)-X(I))
I=I+1
ENDDO
J=1
DO WHILE (J<=N-1)
I=J
DO WHILE (I<=N-1)
T(I,J)=(T(I,J-1)-T(I-1,J-1))/(X(I+1)-X(I))
I=I+1
ENDDO
J=J+1
ENDDO
DO J=0,N-1
ENDDO
FXINT=FX(0)
I=0
DO WHILE (I<=N-1)
P=1
J=0
DO WHILE (J<=I)
P=P*(XA-X(J))
J=J+1
ENDDO
FXINT=FXINT+T(I,I)*P
I=I+1
ENDDO
PRINT*,('*',I=1,78)
PRINT*,'EL RESULTADO DE LA INTERPOLACION (',XA,')=',FXINT
PRINT*,('*',I=1,78)
PRINT*,'CONTINUAR:(SI O NO)'
READ*, RPTA
IF(RPTA=='NO')EXIT
ENDDO
DEALLOCATE(X,FX,T)
STOP
END
” Año de la Promoción de la Industria Responsable y Compromiso
Climático
UNIVERSIDAD NACIONAL
DEL CALLAO
FACULTAD DE CIENCIAS
NATURALES Y MATEMÁTICA
FÍSICA TEÓRICA COMPUTACIONAL I
“APLICACIÓN CON LA FÓRMULA DE
APROXIMACIÓN DNGB (U=0) ”
ALUMNO:
MARCO ANTONIO ALPACA CHAMBA
ESCUELA PROFESIONAL:
FÍSICA
Ciudad universitaria, 30 de Octubre del 2014
Aplicación en la Ingeniería
Se requiere la diferenciación numérica en muchas aplicaciones de la ingeniería. Por
ejemplo, la caída de tensión en la inductancia es dada como,
.
Aquí la diferenciación numérica de i da la caída de tensión en la inductancia. La
corriente en el condensador se da como,
.
Aquí la diferenciación numérica de v da la corriente a través del condensador.
La corriente que fluye a través de la inductancia como una función del tiempo se da
continuación:
tiempo, t 0 0.1 0.2 0.3 0.5 0.7
Corriente,
i 0 0.15 0.3 0.55 0.8 1.9
Determinar la caída de tensión con una inductancia de 4H en t = 0,3.
Solución.
Los datos no están espaciados de manera uniforme. Por lo tanto podemos usar los
métodos de diferenciación para los puntos nodales no uniformes. Se requiere la
derivada en t = 0.3. Por lo tanto, vamos a considerar la parte siguiente de los datos.
tiempo, x x 2 = 0.3 X1= 0.5 X0=0.7
corriente, y y2= 0.55 y1 = 0.8 y 0 = 1.9
𝐹𝑚
′ ( 𝑥 𝑘
) =
1
∆𝑥
∑
∇ 𝑡
𝑡
𝑓𝑘 + 𝐸𝑚
𝑡=1 (1)
La ecuación (1) da la derivada mediante interpolación DNGB con u=0, es decir, en xk,
.
Así di/dt en t = 0.3 es – 0.875. Por lo tanto la caída de tensión en una inductancia
es,
= - 3.5 voltios en t = 0.3 segundos
Del mismo modo, la caída de tensión en otros instantes de tiempo se puede
obtener.
PROGRAM DNGB
!U=0
PARAMETER (IDM=10)
DIMENSION D(IDM,IDM),X(IDM), F(IDM)
REAL Z,S,P,H ,VAL
INTEGER N
PRINT*,'INRESAR EL VALOR DE N'
READ(5,*)N
PRINT*,''
DO I=0,N
PRINT*,'INGRESAR EL PUNTO',I+1
READ(5,*)X(I),F(I)
END DO
DO J=0,N
D(0,J)=F(J)
ENDDO
PRINT*,''
PRINT*,'INGRESE EL VALOR A INTERPOLAR'
READ(5,*)Z
PRINT*,''
PRINT*,('*',I=1,79)
PRINT '(5X,"RESULTADOS")'
PRINT*,('*',I=1,79)
H=(X(1)-X(0))
S=0.0
DO 11 I=1,N
DO 12 J=0,N-I
D(I,J)=D(I-1,J+1)-D(I-1,J)
12 CONTINUE
11 CONTINUE
PRINT 100
100 FORMAT(11x,'Z',12X ,'H')
PRINT*,Z,H
DO I=1,N
P=1.0
DO J=0,I-1
P=P/(J+1)
ENDDO
S=S+D(I,N-I)*P
ENDDO
VAL=S/H
PRINT*,''
PRINT*,'INTERPOLATION de (',Z,')=',VAL
PRINT*,''
STOP
END
” Año de la Promoción de la Industria Responsable y Compromiso
Climático
UNIVERSIDAD NACIONAL
DEL CALLAO
FACULTAD DE CIENCIAS
NATURALES Y MATEMÁTICA
FÍSICA TEÓRICA COMPUTACIONAL I
“APLICACIÓN CON LA APROXIMACIÓN NUMÉRICA
DE LA DERIVADA DNGF.”
ALUMNO:
MARCO ANTONIO ALPACA CHAMBA
ESCUELA PROFESIONAL:
FÍSICA
Ciudad universitaria, 30 de Octubre del 2014
Una varilla está girando en un plano sobre uno de sus extremos. Si la tabla siguiente da
los ángulos ϴ en radianes a través del cual la varilla toma diferentes valores en el
instante de t segundos, encontrar su velocidad angular en t= 0.7 segundos.
k
t
segundos
ɵ
radianes
0 0 0
1 0.2 0.12
2 0.4 0.48
3 0.6 1
4 0.8 2
5 1 3.2
6 1.2 4.666
SOLUCIÓN:
USANDO LA APROXIMACIÓN DNGF TENEMOS:
Por lo tanto la Velocidad angular = 4,93 radian/sec
PROGRAM PRIMERA_DERIVADA_DNGF
REAL:: X(0:10),F(0:10),XI,H,U,M,K,DFI
PRINT*, '====================================================='
PRINT*,' INTERPOLATION DE LA PRIMERA DERIVADA DNGF '
PRINT*,' HACIA ADELANTE '
PRINT*,' PARA UN VALOR INTERMEDIO QUE NO ESTA EN LA TABLA'
PRINT*, '====================================================='
PRINT*,'INGRESE EL VALOR DE M'
READ*,M
PRINT*,''
PRINT*,'INGRESE LOS VALORES DE XI'
DO I=0,M
READ*,X(I)
END DO
PRINT*,''
PRINT*,"INGRESE LOS VALORES DE FI"
DO I=0,M
READ*,F(I)
END DO
PRINT*,''
PRINT*,'INGRESAR EL VALOR A EVALUAR'
READ*,XI
PRINT*,''
PRINT*,('*',I=1,79)
PRINT '(5X,"RESULTADOS")'
PRINT*,('*',I=1,79)
H=X(1)-X(0)
U=(XI-X(0))/H
WRITE (*,9) H
9 FORMAT (2X,'H=',F12.2)
WRITE (*,10) U
10 FORMAT (2X,'U=',F12.2/)
SUMA1=0
IF(M.EQ.2)THEN
GOTO 11
K=0
11 SUMA1=SUMA1+(F(K+1)-F(K))+((F(K+2)-2*F(K+1)+F(K))*((U**2-U)/2)*(1/U+1/(U-
1)))
END IF
IF(M.EQ.3)THEN
GOTO 20
K=0
20 SUMA1=SUMA1+(F(K+1)-F(K))+((F(K+2)-2*F(K+1)+F(K))*((U**2-
U)/2)*(1/U+1/(U-1)))+(F(K+3)-3*F(K+2)+3*F(K+1)-F(K))*((U**3-
3*U**2+2*U)/6)*(1/U+1/(U-1)+1/(U-2))
END IF
IF(XI.NE.X(I))THEN
ELSE
END IF
DFI=SUMA1/H
WRITE(*,21)
21 FORMAT(2X,'LA PRIMERA DERIVADA ES:'/)
PRINT '(F20.2/)',DFI
END
” Año de la Promoción de la Industria Responsable y Compromiso
Climático
UNIVERSIDAD NACIONAL
DEL CALLAO
FACULTAD DE CIENCIAS
NATURALES Y MATEMÁTICA
FÍSICA TEÓRICA COMPUTACIONAL I
“APLICACIÓN CON LA FÓRMULA DE
APROXIMACIÓN DST (U≠ 0)”
ALUMNO:
MARCO ANTONIO ALPACA CHAMBA
ESCUELA PROFESIONAL:
FÍSICA
Ciudad universitaria, 13 de Noviembre del 2014
Una barra está girando en un plano. La tabla muestra el ángulo Θ (radianes) a través
del cual la barra toma varios valores en el instante t en segundos.
Encontrar la velocidad angular de la barra cuando t = 0.7 segundos.
SOLUCIÓN:
Utilizando la fórmula:
Por lo tanto la velocidad angular en t = 0.7 segundos es de 4.496 rad/s.
PROGRAM DST
PARAMETER (IDM=10)
DIMENSION D(IDM,IDM),X(IDM), Y(IDM)
REAL Z,S1,S2,P1,P2,VAL,Q,P,U,H,S,R,R1,S21,S3
INTEGER N,K
PRINT*, '====================================================='
PRINT*,' DST FORMULA DE STIRLING '
PRINT*,'===================================================== '
PRINT*,'INGRESAR EL VALOR DE N, MULTIPLO DE 2'
READ(5,*)N
PRINT*,''
DO I=0,N
PRINT*,'INGRESAR EL PUNTO',I+1
READ(5,*)X(I),Y(I)
ENDDO
PRINT*,''
DO 6 J=0,N
D(0,J)=Y(J)
6 CONTINUE
PRINT*,''
WRITE (*,*)'INGRESE EL VALOR A INTERPOLAR'
READ (5,*) Z
PRINT*,''
PRINT*,('*',I=1,79)
PRINT '(5X,"RESULTADOS")'
PRINT*,('*',I=1,79)
DO 12 I=1,N
DO 13 J=0,N-I
D(I,J)=D(I-1,J+1)-D(I-1,J)
13 CONTINUE
12 CONTINUE
PRINT*,''
PRINT*,'TABLA DE DIFERENCIAS CON H UNIFORME'
PRINT*,''
DO I=0,N
PRINT '(I3,10F9.3)',I+1,X(I),(D(I,J),J=0,N-I)
ENDDO
PRINT*,''
H=(X(2)- X(1))
K=((N+2)/2)-1
U=(Z-X(K))/H
PRINT 100
100 FORMAT(5X,'H',19X ,'Z',17X,'K', 8X,'U')
PRINT*,H,Z,K,U
S1=0.0
P1=1.0
P1=P1*U
DO L=1,K
P=((D(2*(L-1)+1,K-L)+D(2*(L-1)+1,K -(L-1)))/2)
S=P1*P
P1=P1*(((U**2)-(L**2))/((2*L+1)*(2*L)))
R1=0.0
DO I=1,(2*L-1)
R1=R1+(1/(U-L+I))
ENDDO
S1=S1+S*R1
ENDDO
S2=0.0
P2=((U**2)/2)
DO 30 M=1,K
Q=(D(2*M,K-M))
S21=P2*Q
P2=P2*(((U**2)-(M**2))/((2*M+2)*(2*M+1)))
R2=0.0
DO J=1,(2*M-1)
R2=R2+(1/(U-M+J))
ENDDO
S2=S2+S21*R2
30 CONTINUE
S3=0.0
P3=(U/2)
DO 40 N=1,K
R=(D(2*N,K-N))
S3=S3+P3*R
P3=P3*(((U**2)-(N**2))/((2*N+2)*(2*N+1)))
40 CONTINUE
VAL=(S1+S2+S3)*(1/H)
PRINT*,''
PRINT*,'LA INTERPOLATION DE (',Z,')=',VAL
PRINT*,''
STOP
END
” Año de la Promoción de la Industria Responsable y Compromiso
Climático
UNIVERSIDAD NACIONAL
DEL CALLAO
FACULTAD DE CIENCIAS
NATURALES Y MATEMÁTICA
FÍSICA TEÓRICA COMPUTACIONAL I
“APLICACIÓN CON LA FÓRMULA DE
APROXIMACIÓN DST (U≠0)”
ALUMNO:
MARCO ANTONIO ALPACA CHAMBA
ESCUELA PROFESIONAL:
FÍSICA
Ciudad universitaria, 20 de Noviembre del 2014
El mecanismo de la figura mostrada tiene las dimensiones a = 100 mm, b = 120
mm, c = 150 mm, y d = 180 mm. Se puede demostrar por geometría que la relación
entre los ángulos α y β es:
Par un valor dado de alfa, puede resolverse esta ecuación trascendental para
beta. Esto se hizo con α= 0°, 5°,10°,…, 30°, los resultados son:
Si el segmento AB gira con una velocidad angular constante de 25 rad /s, al
utilizar aproximaciones por diferencias finitas de O (h2) para tabular la velocidad
angular dβ/dt del segmento BC contra α.
Determinar la rapidez angular de BC en α=15° y en α =16°
Solución.
La rapidez angular de BC es:
, donde dβ/dα se puede calcular a partir de aproximaciones
en diferencias finitas utilizando los datos de la tabla. Tenga en cuenta que el
incremento de α es:
Los cálculos conducen a:
El conjunto completo de resultados es:
Por lo tanto la velocidad de BC cuando α= 15 grados sexagesimales es de -35.44 rad/s
USANDO LA FÓRMULA DE APROXIMACIÓN DST (U=0) TENEMOS:
PROGRAM DST
PARAMETER (IDM=10)
DIMENSION D(IDM,IDM),X(IDM), Y(IDM)
REAL Z,S1,P1,VAL,VAL1,P,U,H
INTEGER N,K
PRINT*, '====================================================='
PRINT*,' DST FORMULA DE STIRLING U=0 '
PRINT*,'===================================================== '
PRINT*,'INGRESAR EL VALOR DE N, MULTIPLO DE 2'
READ(5,*)N
PRINT*,''
DO I=0,N
PRINT*,'INGRESAR EL PUNTO',I+1
READ(5,*)X(I),Y(I)
ENDDO
PRINT*,''
DO 6 J=0,N
D(0,J)=Y(J)
6 CONTINUE
PRINT*,''
WRITE (*,*)'INGRESE EL VALOR A INTERPOLAR'
READ (5,*) Z
PRINT*,''
PRINT*,('*',I=1,79)
PRINT '(5X,"RESULTADOS")'
PRINT*,('*',I=1,79)
DO 12 I=1,N
DO 13 J=0,N-I
D(I,J)=D(I-1,J+1)-D(I-1,J)
13 CONTINUE
12 CONTINUE
PRINT*,''
PRINT*,'TABLA DE DIFERENCIAS CON H UNIFORME'
PRINT*,''
DO I=0,N
PRINT '(I3,10F9.3)',I+1,X(I),(D(I,J),J=0,N-I)
ENDDO
PRINT*,''
H=((X(2)- X(1))*(3.141592/180))
K=((N+2)/2)-1
U=(Z-X(K))/H
PRINT 100
100 FORMAT(5X,'H',19X ,'Z',17X,'K', 8X,'U')
PRINT*,H,Z,K,U
S1=0.0
P1=1.0
DO L=1,K
P=((D(2*(L-1)+1,K-L)+D(2*(L-1)+1,K -(L-1)))/2)
S1=S1+P1*P
P1=P1*((-(L**2))/((2*L+1)*(2*L)))
ENDDO
VAL=(S1)*(1/H)
VAL1=25*VAL
PRINT*,''
PRINT*,'LA VELOCIDAD EN (',Z,')=',VAL1
PRINT*,''
STOP
END
PROGRAM DST
PARAMETER (IDM=10)
DIMENSION D(IDM,IDM),X(IDM), Y(IDM)
REAL Z,S1,S2,P1,P2,VAL,VAL1,Q,P,U,H,S,R,R1,S21,S3
INTEGER N,K
PRINT*, '====================================================='
PRINT*,' DST FORMULA DE STIRLING (U ≠ 0) '
PRINT*,'===================================================== '
PRINT*,'INGRESAR EL VALOR DE N, MULTIPLO DE 2'
READ(5,*)N
PRINT*,''
DO I=0,N
PRINT*,'INGRESAR EL PUNTO',I+1
READ(5,*)X(I),Y(I)
ENDDO
PRINT*,''
DO 6 J=0,N
D(0,J)=Y(J)
6 CONTINUE
PRINT*,''
WRITE (*,*)'INGRESE EL VALOR A INTERPOLAR'
READ (5,*) Z
PRINT*,''
PRINT*,('*',I=1,79)
PRINT '(5X,"RESULTADOS")'
PRINT*,('*',I=1,79)
DO 12 I=1,N
DO 13 J=0,N-I
D(I,J)=D(I-1,J+1)-D(I-1,J)
13 CONTINUE
12 CONTINUE
PRINT*,''
PRINT*,'TABLA DE DIFERENCIAS CON H UNIFORME'
PRINT*,''
DO I=0,N
PRINT '(I3,10F9.3)',I+1,X(I),(D(I,J),J=0,N-I)
ENDDO
PRINT*,''
H=((X(2)- X(1))*(3.141592/180))
K=((N+2)/2)-1
U=((Z-X(K))/H)*(3.141592/180)
PRINT 100
100 FORMAT(5X,'H',19X ,'Z',17X,'K', 8X,'U')
PRINT*,H,Z,K,U
S1=0.0
P1=1.0
P1=P1*U
DO L=1,K
P=((D(2*(L-1)+1,K-L)+D(2*(L-1)+1,K -(L-1)))/2)
S=P1*P
P1=P1*(((U**2)-(L**2))/((2*L+1)*(2*L)))
R1=0.0
DO I=1,(2*L-1)
R1=R1+(1/(U-L+I))
ENDDO
S1=S1+S*R1
ENDDO
S2=0.0
P2=((U**2)/2)
DO 30 M=1,K
Q=(D(2*M,K-M))
S21=P2*Q
P2=P2*(((U**2)-(M**2))/((2*M+2)*(2*M+1)))
R2=0.0
DO J=1,(2*M-1)
R2=R2+(1/(U-M+J))
ENDDO
S2=S2+S21*R2
30 CONTINUE
S3=0.0
P3=(U/2)
DO 40 N=1,K
R=(D(2*N,K-N))
S3=S3+P3*R
P3=P3*(((U**2)-(N**2))/((2*N+2)*(2*N+1)))
40 CONTINUE
VAL=(S1+S2+S3)*(1/H)
VAL1=25*VAL
PRINT*,''
PRINT*,'LA INTERPOLATION DE (',Z,')=',VAL
PRINT*,''
PRINT*,'POR LO TANTO, LA VELOCIDAD ANGUALAR EN(',Z,')=',VAL1
PRINT*,''
STOP
END
” Año de la Promoción de la Industria Responsable y Compromiso
Climático
UNIVERSIDAD NACIONAL
DEL CALLAO
FACULTAD DE CIENCIAS
NATURALES Y MATEMÁTICA
FÍSICA TEÓRICA COMPUTACIONAL I
“APLICACIÓN CON LA FÓRMULA DE
APROXIMACIÓN DST (U=0)”
ALUMNO:
MARCO ANTONIO ALPACA CHAMBA
ESCUELA PROFESIONAL:
FÍSICA
Ciudad universitaria, 20 de Noviembre del 2014
El mercurio se dilata con la temperatura de forma que 135.9508 g de este elemento
ocupan a diferentes temperaturas los volúmenes que se indican en la tabla siguiente.
Sabiendo que el coeficiente de expansión cúbica (α en K-1) se define como:
𝛼 =
1
𝑉
∗ (
𝑑𝑉
𝑑𝑇
)
Determinar dicho coeficiente de expansión cúbica del mercurio a 240 °C
SOLUCIÓN:
EL problema pide calcular una derivada en un punto tabular de una tabla
equiespaciada para obtener el valor de una magnitud, aplicaremos el método de Stirling
de DST (u=0).
𝐹2𝑛
′ ( 𝑥 𝑘) =
1
∆𝑥
∑ 𝜇𝛿2𝑡−1
𝑓𝑘(−1) 𝑡−1
(( 𝑡 − 1)!)2
(2𝑡 − 1)!
𝑛
𝑡=1
Desarrollando obtenemos, que el coeficiente de expansión lineal del mercurio a 240 °C
es 1.82664 10-4.
PROGRAM DST
PARAMETER (IDM=10)
DIMENSION D(IDM,IDM),X(IDM), Y(IDM)
REAL Z,S1,P1,VAL,VAL1,P,U,H
INTEGER N,K
PRINT*, '====================================================='
PRINT*,' DST FORMULA DE STIRLING U=0 '
PRINT*,'===================================================== '
PRINT*,'INGRESAR EL VALOR DE N, MULTIPLO DE 2'
READ(5,*)N
PRINT*,''
DO I=0,N
PRINT*,'INGRESAR EL PUNTO',I+1
READ(5,*)X(I),Y(I)
ENDDO
PRINT*,''
DO 6 J=0,N
D(0,J)=Y(J)
6 CONTINUE
PRINT*,''
WRITE (*,*)'INGRESE EL VALOR A INTERPOLAR'
READ (5,*) Z
PRINT*,''
PRINT*,('*',I=1,79)
PRINT '(5X,"RESULTADOS")'
PRINT*,('*',I=1,79)
DO 12 I=1,N
DO 13 J=0,N-I
D(I,J)=D(I-1,J+1)-D(I-1,J)
13 CONTINUE
12 CONTINUE
PRINT*,''
PRINT*,'TABLA DE DIFERENCIAS CON H UNIFORME'
PRINT*,''
DO I=0,N
PRINT '(I3,10F9.3)',I+1,X(I),(D(I,J),J=0,N-I)
ENDDO
PRINT*,''
H=(X(2)- X(1))
K=((N+2)/2)-1
U=(Z-X(K))/H
PRINT 100
100 FORMAT(5X,'H',19X ,'Z',17X,'K', 8X,'U')
PRINT*,H,Z,K,U
S1=0.0
P1=1.0
DO L=1,K
P=((D(2*(L-1)+1,K-L)+D(2*(L-1)+1,K -(L-1)))/2)
S1=S1+P1*P
P1=P1*((-(L**2))/((2*L+1)*(2*L)))
ENDDO
VAL=(S1)*(1/H)
VAL1=VAL*(1/(D(0,K)))
PRINT*,''
PRINT*,'LA INTERPOLATION DE (',Z,')=',VAL
PRINT*,''
PRINT*,'POR LO TANTO ,EL COEFICIENTE LINEAL ES:',VAL1
PRINT*,''
STOP
END
” Año de la Promoción de la Industria Responsable y Compromiso
Climático
UNIVERSIDAD NACIONAL
DEL CALLAO
FACULTAD DE CIENCIAS
NATURALES Y MATEMÁTICA
FÍSICA TEÓRICA COMPUTACIONAL I
“APLICACIÓN DE LA INVERSA Y DEL
DETERMINANTE DE UNA MATRIZ.”
ALUMNO:
MARCO ANTONIO ALPACA CHAMBA
ESCUELA PROFESIONAL:
FÍSICA
Ciudad universitaria, 25 de Septiembre del 2014
Producción de automóviles
Resolver el problema siguiente mediante el uso de la inversa de la matriz
implicada.
Una fábrica de automóviles produce dos modelos, A y B. El modelo A requiere 1 hora
de mano de obra para pintarlo y 1/2 hora de mano de obra para pulirlo; el modelo B
requiere 1 hora de mano de obra para cada proceso. Durante cada hora en que la línea
de ensamblado está funcionando, existen 100 horas de mano de obra disponibles para
el pintado y 80 horas de mano de obra para el pulido. ¿Cuántos de cada modelo
pueden producirse cada hora si todas las horas de mano de obra han de ser utilizadas?
SOLUCIÓN:
Sea x=el número de automóviles de modelo A, y=el número de automóviles de modelo
B.
El sistema de ecuaciones es:
Sea la matriz A
Por lo tanto 40 del modelo A y 60 del modelo B pueden producirse.
Usando el método de eliminación de Gauss y sustitución regresiva tenemos:
PROGRAM MATRIZ_INVERSA
REAL :: A(100,100),B(100,100)
PRINT*,''
PRINT*,'INVERSA DE UNA MATRIZ POR EL METHOD DE GAUSS ELIMINATION'
PRINT*,'Y SUSTITUCION REGRESIVA'
PRINT*,""
PRINT*,'INGRESE EL ORDEN (N) DEL SISTEMA'
READ*,N
PRINT*,''
PRINT*,'INGRESE LAS COMPONENTES DE LA MATRIZ A'
DO I=1,N
READ*,(A(I,J),J=1,N)
END DO
PRINT*,''
PRINT*,('*',I=1,79)
PRINT '(5X,"RESULTADO")'
PRINT*,('*',I=1,79)
DO 20 I=1,N
DO 10 J=1,N
10 B(I,J)=0.0
20 B(I,I)=1.0
DO 80 K=1,N
C=A(K,K)
IF (C==0.0) PRINT*,K,K
IF (C==0.0)STOP
DO 30 J=K,N
30 A(K,J)=A(K,J)/C
DO 40 J=1,K
40 B(K,J)=B(K,J)/C
DO 70 I=1,N
IF (I==K)GOTO 70
C=A(I,K)
DO 50 J=K,N
50 A(I,J)=A(I,J)-C*A(K,J)
DO 60 J=1,K
60 B(I,J)=B(I,J)-C*B(K,J)
70 CONTINUE
80 CONTINUE
PRINT*,''
PRINT*,'LA MATRIZ INVERSA A^-1 ES'
PRINT*,''
PRINT '(2F9.3)',((B(I,J),J=1,N),I=1,N)
PRINT*,''
END
Resolviendo el mismo problema mediante el uso del determinante de la matriz
implicada.
Resolviendo el sistema siguiente utilizando la regla de Cramer.
Solución
El determinante de la matriz de coeficiente es
Ya que el determinante es diferente de cero, existe una solución única. Si resolvemos para x,
reemplazamos la primera columna de la matriz de coeficientes por la columna de constantes y
obtenemos:
Así 40 del modelo A y 60 del modelo B pueden producirse.
UTILIZANDO EL MÉTODO DE ELIMINACIÓN DE GAUSS PARA CALCULAR EL
DETERMINANTE TENEMOS:
PROGRAM DETERMINANTE
REAL :: A(10,10),E(10,10,10),T
PRINT*,''
PRINT*,'EL NUMBER DE ECUACIONES ES:'
READ*,N
PRINT*,''
PRINT*,'INGRESAR ELEMENTOS DE LA MATRIZ A POR FILAS'
DO J=1,N
READ*,(A(J,I),I=1,N)
END DO
PRINT*,''
PRINT*,('*',I=1,79)
PRINT '(5X,"RESULTADO")'
PRINT*,('*',I=1,79)
M=0
DO J=1,N
DO I=1,N
E(M,J,I)=A(J,I)
END DO
END DO
DO M=1, N-1
DO J=1,M
DO I=1,N
E(M,J,I)=E(M-1,J,I)
END DO
END DO
DO I=M+1,N
DO J=1,N
E(M,I,J)=E(M-1,I,J)-E(M-1,I,M)*E(M-1,M,J)/E(M-1,M,M)
END DO
END DO
END DO
PRINT*,('',I=1,70)
WRITE(*,*)' LA MATRIZ DIAGONALIZADA ES:'
PRINT*,''
PRINT '(2F9.3)',((E(N-1,I,J),J=1,N),I=1,N)
T=E(N-1,1,1)
DO I=2,N
T=T*E(N-1,I,I)
END DO
PRINT*,''
PRINT*,'EL VALOPR DEL DETERMINANTE ES:'
PRINT '(F20.3)',T
PRINT*,''
END
” Año de la Promoción de la Industria Responsable y Compromiso
Climático
UNIVERSIDAD NACIONAL
DEL CALLAO
FACULTAD DE CIENCIAS
NATURALES Y MATEMÁTICA
FÍSICA TEÓRICA COMPUTACIONAL I
“MÉTODO DE JACOBI Y GAUSS SEIDEL.”
ALUMNO:
MARCO ANTONIO ALPACA CHAMBA
ESCUELA PROFESIONAL:
FÍSICA
Ciudad universitaria, 04 de Setiembre del 2014
PROBLEMA
MÉTODO DE JACOBI
En la figura mostrada el instante en que la esfera atada a una
cuerda es soltada. Posteriormente esta esfera choca frontal e
inelásticamente contra de mayor masa en reposo. Hallar el
valor de la velocidad de cada esfera después del choque.
Datos g=10m/s2
L=40cm
E=0,5
M=4m
Solución
Analizando las velocidades:
Antes del choque
vo =velocidad de’ A’ antes del choque
vBi =o , velocidad de B antes del choque
Después del choque
𝑉⃗ 𝐴𝐹 Velocidad de A después del choque
𝑉⃗ 𝐵𝐹 Velocidad de B después del choque, como es un choque inelástico
𝑒 = |
𝑣𝑒𝑙𝑜𝑐𝑖𝑑𝑎𝑑 𝑟𝑒𝑙𝑎𝑡𝑖𝑣𝑎 𝑑𝑒 𝑎𝑙𝑒𝑗𝑎𝑚𝑖𝑒𝑛𝑡𝑜 𝑑𝑒𝑠𝑝𝑢𝑒𝑠 𝑑𝑒𝑙 𝑐ℎ𝑜𝑞𝑢𝑒
𝑣𝑒𝑙𝑜𝑐𝑖𝑑𝑎𝑑 𝑟𝑒𝑙𝑎𝑡𝑖𝑣𝑎 𝑑𝑒 𝑎𝑐𝑒𝑟𝑐𝑎𝑚𝑖𝑒𝑛𝑡𝑜 𝑎𝑛𝑡𝑒𝑠 𝑑𝑒𝑙 𝑐ℎ𝑜𝑞𝑢𝑒
| = 0,5
𝑉𝐴𝐹 + 𝑉𝐵𝐹
𝑉0
= 0,5
𝑉𝐴𝐹 + 𝑉𝐵𝐹 = 0,5𝑉0……(1)
Por conservación de la cantidad de movimiento
𝑝 𝑎.𝑐ℎ⃗⃗⃗⃗⃗⃗⃗⃗⃗ = 𝑝 𝑑.𝑐ℎ⃗⃗⃗⃗⃗⃗⃗⃗⃗
𝑚𝑣0⃗⃗⃗⃗ = 𝑀𝑣 𝐵𝐹⃗⃗⃗⃗⃗⃗ + 𝑚𝑣𝐴𝐹⃗⃗⃗⃗⃗⃗
mvo =4mvBF-mvFA
v0=4vBF-vBA (2)
HALLANDO v0
EM=energía mecánica
EM(A)=EM(B)
mgH= mvo2
Remplazando los datos
vo =2m/s
Entonces (1) y (2)
𝑉𝐴𝐹 + 𝑉𝐵𝐹 = 1𝑚/𝑠
4vBF - vBA = 2m/s
Ordenando
𝑉𝐴𝐹 + 𝑉𝐵𝐹 = 1𝑚/𝑠
−𝑉𝐴𝐹 + 4𝑉𝐵𝐹 = 2𝑚/𝑠
Colocando los datos en forma matricial
(
1 1
−1 4
)(
𝑉𝐴𝐹
𝑉𝐵𝐹
) = (
1
2
)
Sean los vectores prueba
𝑋1
0
= 0,5
𝑋2
0
= 0,4
(
1 1
−1 4
)(
𝑋1
1
𝑋2
1
) = (
1
2
) TOL =0.06
Primera interacción
K=0 N=2
I=1
𝑎𝑖𝑖 𝑥 𝑖
𝑘+1
= 𝑏𝑖 − ∑ 𝑎𝑖𝑗 𝑥𝑗
𝑘
𝑁
𝐽≠𝑖=1
𝑎11 𝑥1=
1
𝑏1 − 𝑎12 𝑥2
0
(1)( 𝑥1
1
)=1-(1) (0,4)
𝑥1
1
=0,6
i=2
𝑎22 𝑥2
1
= 𝑏2 − 𝑎21 𝑥1
0
(4)( 𝑥2
1
) =2-(-1)*(0,5)
𝑥2
1
=0,625
𝑥1
= (
𝑥1
1
= 0,6
𝑥2
1
= 0,625
)
Analizando la convergencia
|
0,6
0,625
−
0,5
0,4
| =
0,1
0,225
> TOL=0,06
Segunda interacción
K=1 N=2
K=1
i=1
𝑎𝑖𝑖 𝑥 𝑖
𝑘+1
= 𝑏𝑖 − ∑ 𝑎𝑖𝑗 𝑥𝑗
𝑘
𝑁
𝐽≠𝑖
𝑎11 𝑥1=
2
𝑏1 − 𝑎12 𝑥2
1
(1)( 𝑥1
2
)=1-(1) (0,625)
𝑥1
2
=0,375
i=2
𝑎22 𝑥2
2
= 𝑏2 − 𝑎21 𝑥1
1
(4)( 𝑥2
1
) =2-(1)(0,6)
𝑥2
2
=0,65
Analizando la convergencia
|
0,375
0,65
−
0,6
0,625
| =
0,225
0,025
> TOL =0,06
Tercera interacción:
K=2 N=2
K=2
i=1
𝑎𝑖𝑖 𝑥 𝑖
𝑘+1
= 𝑏𝑖 − ∑ 𝑎𝑖𝑗 𝑥𝑗
𝑘
𝑁
𝐽≠𝑖
𝑎11 𝑥1=
3
𝑏1 − 𝑎12 𝑥2
2
(1)( 𝑥1
3
)=1-(1) (0,65)
𝑥1
3
=0,35
i=2
𝑎22 𝑥2
3
= 𝑏2 − 𝑎21 𝑥1
2
(4)( 𝑥2
3
) =2-(-1)(0,375)
𝑥2
3
=0,59375
Analizando la convergencia
|
0,35
0,59375
−
0,375
0,65
| =
0,025
0,05625
< TOL=0,06
Por lo tanto los valores finales son
𝑥3
= (
𝑥1
3
= 0,35
𝑥2
3
= 0,59375
)
PROGRAM JACOBI
IMPLICIT NONE
INTEGER:: H,J,I,K,N
CHARACTER(40)::R*30
REAL(4) TOL, A(100,100),B(100),X(100,100)
REAL::SUMA,E
PRINT*,'SOLUTION DE SISTEMAS DE E.L.'
PRINT*,('',H=1,70)
PRINT*,'INGRERSAR ORDEN DEL SISTEMA'
READ*,N
PRINT*,('',H=1,70)
PRINT*,'INGRESAR TOLERANCIA'
READ*, TOL
PRINT*,('',H=1,70)
PRINT*,'INGRESAR ELEMENTOS DE A'
DO I=1,N
READ(*,*)( A(I,J),J=1,N)
ENDDO
PRINT*,('',H=1,70)
PRINT*,'INGRESAR ELEMENTOS DE B'
DO I=1,N
READ(*,*) B(I)
ENDDO
PRINT*,('',I=1,70)
PRINT*,'INGRESAR VECTOR APROXIMADO X'
K=1
DO I=1,N
READ(*,*) X(K,I)
ENDDO
10 DO I=1,N
SUMA=0
DO J=1,N
IF(J.EQ.I)THEN
ELSE
SUMA=SUMA+A(I,J)*X(K,J)
ENDIF
END DO
X(K+1,I)=(B(I)-SUMA)/A(I,I)
ENDDO
!CONVERGENCIA
DO I=1,N
E=ABS(X(K+1,I)-X(K,I))
IF(E.LE.TOL)THEN
ELSE
K=K+1
GOTO 10
ENDIF
ENDDO
PRINT*,('',H=1,70)
!PRESENTACIÓN
R=' RESULTADOS'
PRINT*,('*',H=1,70)
PRINT*,('',H=1,20),R
PRINT*,('*',H=1,70)
PRINT*,'SOLUTION DEL SISTEMA'
DO I=1,N
PRINT*,X(K+1,I)
ENDDO
PRINT*,('',H=1,70)
PRINT*,'APPROACH',E
PRINT*,('',H=1,70)
PRINT*,'NUMBER DE ITERACIONES',K
PRINT*,('',H=1,70)
END
Problema 2
Método de relajación de Gauss -Seidel
En el circuito mostrado; determine el valor de la corriente que pasa por cada malla
En la malla I
∑ 𝜀 = ∑ 𝐼𝑅
(26-8)=I1 *(6) + (I1+I2)*18
4I1 + 3I2=3 ……………… (α)
En la malla II
∑ 𝜀 = ∑ 𝐼𝑅
(26-8)=I2 *(9) + (I1+I2)*18
2I1 + 3I2=2 ……………. (β)
Colocando los datos de forma matricial
(
4 3
2 3
)(
𝑖1
𝑖2
) = (
13
2
) TOL =0,02
𝑋1
0
= 0,6
𝑋2
0
= 0,30
SOLUCIÓN:
(
4 3
2 3
)(
𝑋1
1
𝑋2
1
) = (
3
2
)
Primera interacción:
K=0 N=2
i=1
𝑎𝑖𝑖 𝑥 𝑖
𝑘+1
+ ∑ 𝑎𝑖𝑗 𝑥𝑗
𝑘
𝑁
𝐽 <𝑖
= 𝑏𝑖 − ∑ 𝑎𝑖𝑗 𝑥𝑗
𝑘
𝑁
𝐽>𝑖
𝑎11 𝑥1
1
+ 0 = 𝑏1 − 𝑎12 𝑥2
0
4(𝑥1
1
) =3-(3)*(0.30)
𝑥1
1
=0,525
i=2
𝑎22 𝑥2
1
+ 𝑎21 𝑥1
1
= 𝑏2 − 𝑎21 𝑥1
1
3 (𝑥2
1
) =2-(2)*(0,525)
𝑥2
1
=0,316
𝑥1
= (
𝑥1
1
= 0,525
𝑥2
1
= 0,316
)
Analizando la convergencia
|
0,525
0,316
−
0,6
0,30
| =
0,075
0,016
> TOL=0,02
Segunda interacción
K=1 N=2
K=1
i=1
𝑎𝑖𝑖 𝑥 𝑖
𝑘+1
+ ∑ 𝑎𝑖𝑗 𝑥𝑗
𝑘
𝑁
𝐽 <𝑖
= 𝑏𝑖 − ∑ 𝑎𝑖𝑗 𝑥𝑗
𝑘
𝑁
𝐽>𝑖
𝑎11 𝑥1
2
+ 0 = 𝑏1 − 𝑎22 𝑥2
1
(4)(𝑥1
2
)=3-(3)*(0,316)
𝑥1
2
=0,513
i=2
𝑎22 𝑥2
2
+ 𝑎21 𝑥1
2
= 𝑏2 − 0
(3)(𝑥2
2
) =2-(2)*(0,513)
𝑥2
2
=0,324
Analizando la convergencia
|
0,513
0,324
−
0,525
0,316
| =
0,012
0,008
< TOL=0,02
Por lo tanto los resultados finales son:
𝑥2
= (
𝑥1
2
= 0,513
𝑥2
2
= 0,324
)
! RELAJACION DE GAUSS SEIDEL (GSR)
PROGRAM METODOGSR
IMPLICIT NONE
INTEGER:: H,J,I,K,N
CHARACTER (40)::R*30
REAL (4) TOL, A (100,100), B (100), X(100,100)
REAL:: E,SUMA1,SUMA2
PRINT*,'SOLUTION DE SISTEMAS DE E.L.'
PRINT*,('',H=1,70)
PRINT*,'INGRERSAR ORDEN DEL SISTEMA'
READ*,N
PRINT*,('',H=1,70)
PRINT*,'INGRESAR TOLERANCIA'
READ*, TOL
PRINT*,('',H=1,70)
PRINT*,'INGRESAR ELEMENTOS DE A'
DO I=1,N
READ (*,*)( A(I,J),J=1,N)
ENDDO
PRINT*,('',H=1,70)
PRINT*,'INGRESAR ELEMENTOS DE B'
DO I=1,N
READ(*,*) B(I)
ENDDO
PRINT*,('',I=1,70)
PRINT*,'INGRESAR VECTOR APROXIMADO X'
K=1
DO I=1,N
READ(*,*) X(K,I)
ENDDO
! CÁLCULO NUMERICO
10 DO I=1,N
SUMA1=0
DO J=1,N
IF (J.GT.I) THEN
SUMA1=SUMA1+A(I,J)*X(K,J)
END IF
END DO
SUMA2=0
DO J=1,N
IF(J.LT.I)THEN
SUMA2=SUMA2+A(I,J)*X(K+1,J)
END IF
END DO
X(K+1,I)=(B(I)-SUMA1-SUMA2)/A(I,I)
END DO
!CONVERGENCIA
DO I=1,N
E=ABS(X(K+1,I)-X(K,I))
IF(E.LE.TOL)THEN
ELSE
K=K+1
GOTO 10
ENDIF
ENDDO
PRINT*,('',H=1,70)
! PRESENTACIÓN
R=' RESULTADOS'
PRINT*,('*',H=1,70)
PRINT*,('',H=1,20),R
PRINT*,('*',H=1,70)
PRINT*,('',H=1,70)
! PRESENTACIÓN DE RESULTADOS
WRITE(*,*) 'RESULTADO DE TODAS LAS ORDENES'
DO I=1,K+1
WRITE(*,*) (X(I,J),J=1,N)
END DO
PRINT*,('',H=1,70)
PRINT*,'SOLUTION DEL SISTEMA'
DO I=1,N
PRINT*,X(K+1,I)
ENDDO
PRINT*,('',H=1,70)
PRINT*,'APPROACH',E
PRINT*,('',H=1,70)
PRINT*,'NUMBER DE ITERACIONES',K
PRINT*,('',H=1,70)
END
” Año de la Promoción de la Industria Responsable y Compromiso
Climático
UNIVERSIDAD NACIONAL
DEL CALLAO
FACULTAD DE CIENCIAS
NATURALES Y MATEMÁTICA
CURSO DE FÍSICA TEÓRICA COMPUTACIONAL I
“MODELO DE UNA BARRA CALENTADA CON
INTERPOLACIÓN NGB.”
ALUMNO:
MARCO ANTONIO ALPACA CHAMBA
ESCUELA PROFESIONAL:
FÍSICA
Ciudad universitaria, 23 de Octubre del 2014
MODELO DE UNA BARRA CALENTADA.
Antecedentes.
Las ecuaciones algebraicas lineales pueden surgir cuando modelan sistemas
distribuidos. Por ejemplo, la Figura 1 muestra una barra larga y delgada ubicada entre
dos paredes que se mantienen a temperaturas constantes. El calor fluye a través de la
barra, así como entre la barra y el aire que lo rodea. Para el caso de estado
estacionario, una ecuación diferencial basado en la conservación de calor puede ser
escrito para ese sistema como:
(1), donde T = temperatura (° C), x = distancia a lo largo de la
barra (m), h '= un coeficiente de transferencia de calor entre la barra y el aire que lo
rodea (m-2), y Ta = la temperatura del aire (° C).
FIGURA 1
Una barra uniforme no aislada ubicada entre dos paredes de constante pero distinta
temperatura. En la representación de diferencias finitas se emplean cuatro nodos
interiores.
Dados los valores de los parámetros, de las funciones forzadas, y de las condiciones
de contorno, puede utilizarse el cálculo para desarrollar una solución analítica. Por
ejemplo, si h'= 0,01, Ta = 20, T (0) = 40, y T (10) = 200, la solución es:
(2).
Aunque esto proporciona una solución aquí, el cálculo no funciona para todos estos
problemas. En tales casos, los métodos numéricos proporcionan una alternativa
valiosa. En este caso de estudio, utilizaremos diferencias finitas para transformar esta
ecuación diferencial en un sistema tridiagonal de ecuaciones algebraicas lineales que
puede resolverse fácilmente utilizando los métodos numéricos que se aprendieron en el
curso.
SOLUCIÓN.
La ecuación (1) puede transformarse en un conjunto de ecuaciones algebraicas
lineales al conceptualizar la barra como consistente en una serie de nodos. Por
ejemplo, la barra de la figura. 1 se divide en seis nodos equidistantes. Dado que la
barra tiene una longitud de 10, el espaciado entre nodos es Δx = 2.
El cálculo era necesario para resolver la ecuación. (1) porque incluye una segunda
derivada. Las aproximaciones en diferencias finitas proporcionan un medio para
transformar las derivadas en formas algebraicas. Por ejemplo, la segunda derivada en
cada nodo puede aproximarse como:
, donde Ti designa la temperatura en el nodo i. Esta
aproximación puede ser sustituida en la ecuación. (1) para dar:
.
Agrupando términos y sustituyendo los parámetros se obtiene:
(3).
Por lo tanto, la ecuación. (1) se ha transformado de una ecuación diferencial en una
ecuación algebraica. La ecuación (3) puede ahora ser aplicada a cada uno de los
nodos interiores:
(4).
Los valores de las temperaturas fijas en los extremos, T0 = 40 y T5 = 200, pueden ser
sustituidos y ser movidos a la parte derecha. Los resultados son cuatro ecuaciones con
cuatro incógnitas expresadas en forma matricial como
(5).
Así que nuestra ecuación diferencial original se ha convertido en un sistema
equivalente de ecuaciones algebraicas lineales. En consecuencia, podemos utilizar las
técnicas descritas en clase para resolver las temperaturas. Por ejemplo, usando el
método de sobre relajación sucesiva en FORTRAN.
FIGURA 2
Un gráfico de la temperatura frente a la distancia a lo largo de una barra calentada.
Ambas soluciones numéricas (puntos) como analítica (líneas) se visualizan.
Además de ser un sistema lineal, observe que la ecuación. (5) también es tridiagonal.
Podemos utilizar un esquema de solución eficiente al igual que el método de sobre
relajación sucesiva para obtener la solución:
T (2)= 65.9698
T (4)= 93.7785
T (6)= 124.5382
T (8)= 159.4795
El sistema es tridiagonal porque cada nodo depende sólo de sus nodos adyacentes.
Debido a que son numerados los nodos de forma secuencial, las ecuaciones que
resultan son tridiagonales. Estos casos a menudo ocurren al resolver ecuaciones
diferenciales basadas en leyes de conservación.
USANDO EL MÉTODO DE INTERPOLACIÓN NGB TENEMOS:
! FÓRMULA DE INTERPOLACIÓN DE NEWTON GREGORY BACKWARD (NGB)
PROGRAM INTERNGB
REAL (4) X(-10:0),Y(-10:0),XI,YI,H,U,M,SUMA,FAC1,FAC2,IT,FI,FT,FIT
WRITE (*,*) 'INGRESE EL VALOR DE M'
READ (*,*) M
WRITE (*,*) 'INGRESE LOS VALORES DE XI'
DO I=-M,0
READ(*,*) X(I)
END DO
WRITE (*,*) 'INGRESE LOS VALORES DE YI'
DO I=-M,0
READ(*,*) Y(I)
END DO
WRITE (*,*) 'INGRESE EL VALOR A INTERPOLAR'
READ (*,*) XI
H=X(0)-X(-1)
U=(XI-X(0))/H
SUMA=0
DO I=1,M
FI=1
DO J=1,I
FI=FI*J
END DO
FAC1=U
IF (I.GT.1) THEN
DO J=2,I
FAC1=FAC1*(U+J-1)
END DO
END IF
FAC1=FAC1/FI
FAC2=0
DO T=0,I
IF (T.EQ.0) THEN
FT=1
ELSE
FT=1
DO J=1,T
FT=FT*J
END DO
END IF
FIT=I-T
IF (FIT.EQ.0) THEN
FIT=1
ELSE
FIT=1
DO J=1,(I-T)
FIT=FIT*J
END DO
END IF
IT=FI/(FT*FIT)
IF (I.EQ.1) THEN
FAC2=Y(0)-Y(-1)
ELSE
FAC2=FAC2+(-1)**(T)*IT*Y(T-I)
END IF
END DO
SUMA=SUMA+FAC1*FAC2
END DO
YI=Y(0)+SUMA
WRITE (*,*) YI
END PROGRAM
” Año de la Promoción de la Industria Responsable y Compromiso
Climático
UNIVERSIDAD NACIONAL
DEL CALLAO
FACULTAD DE CIENCIAS
NATURALES Y MATEMÁTICA
FÍSICA TEÓRICA COMPUTACIONAL I
“APLICACIÓN CON EL MÉTODO DE NUMEROV
PARA EDO DE ORDEN SUPERIOR”
ALUMNO:
MARCO ANTONIO ALPACA CHAMBA
ESCUELA PROFESIONAL:
FÍSICA
Ciudad universitaria, 20 de Noviembre del 2014
Enunciado del problema: Si el bloque está sometido a la fuerza impresa F= F0cosωt,
las leyes básicas de la física dan lugar a la ecuación diferencial de movimiento:
, donde F0/m=16, ω=8, k/m=64 e y se mide desde la
posición de equilibrio del bloque, usando el método de Numerov con h=0.1 resolver el
problema de valores iniciales y(0)=0.0,y(0.1) =0.07174, t Є (0,0.3)
SOLUCIÓN:
Reemplazando los datos tenemos:
𝑑2
𝑦
𝑑𝑡2
= −64𝑦 + 16𝑐𝑜𝑠8𝑡
Usando el método de Numerov:
𝑦 𝑛+1 = [2𝑦 𝑛 𝐵 − 𝑦 𝑛−1 𝐶 + 𝐷]
1
𝐴
Siendo g(t)=64+0.0t , s(t)=16cos8t
Usando fortran 90 tenemos:
PROGRAM NUMEROV
PARAMETER (IDM=100)
DIMENSION X(IDM), Y(IDM)
REAL H,NP,A,B,C,D
PRINT*,''
PRINT*,
'==================================================================
==='
PRINT*,'METHOD DE NUMEROV PARA EDOS DE SEGUNDO ORDEN CON
CONDICIONES INICIALES'
PRINT*,'============================================================
=========='
PRINT*,''
PRINT*,'INGRESAR EL NUMERO DE PUNTOS NP'
READ(5,*)NP
PRINT*, 'INGRESAR LOS VALORES INICIALES X0 E Y0'
READ*, X(0),Y(0)
PRINT*, 'INGRESAR LOS VALORES INICIALES X1 E Y1'
READ*, X(1),Y(1)
PRINT*, 'INGRESAR H'
READ*, H
PRINT*,''
PRINT*,('*',I=1,79)
PRINT '(5X,"RESULTADOS")'
PRINT*,('*',I=1,79)
PRINT*,''
PRINT 100
100 FORMAT(11X,'N',12X ,'X(N)',13X,'Y(N)')
DO N=1,NP
X(N+1)=X(N)+H
A=1+(G(X(N+1))*H**2)/12
B=1-(G(X(N))*H**2)*5/12
C=1+(G(X(N-1))*H**2)/12
D=((S(X(N+1))+10*S(X(N))+S(X(N-1)))/12)*H**2
Y(N+1)=(2*Y(N)*B-Y(N-1)*C+D)/A
PRINT*,N+1,X(N+1),Y(N+1)
END DO
PRINT*,''
END PROGRAM
FUNCTION G(X)
G=64+0*X
RETURN
END FUNCTION
FUNCTION S(X)
S=16*COS(8*X)
RETURN
END FUNCTION
” Año de la Promoción de la Industria Responsable y Compromiso
Climático
UNIVERSIDAD NACIONAL
DEL CALLAO
FACULTAD DE CIENCIAS
NATURALES Y MATEMÁTICA
FÍSICA TEÓRICA COMPUTACIONAL I
“APLICACIÓN CON EL MÉTODO DE STORMER
PARA EDO DE ORDEN SUPERIOR”
ALUMNO:
MARCO ANTONIO ALPACA CHAMBA
ESCUELA PROFESIONAL:
FÍSICA
Ciudad universitaria, 20 de Noviembre del 2014
Enunciado del problema: Considere un sistema mecánico de un solo grado de libertad
en el que un resorte con constante de resorte k restaura una masa m desplazada. La
amortiguación se supone que es proporcional a la velocidad, y la función F(t) es una
fuerza externa. La ecuación de movimiento para este sistema puede escribirse como:
, donde m=2 kg, c=5, k=3 y F(t)=45exp(2t) con X(0)=2 y
X(0.05)=2.0875
SOLUCIÓN:
Reemplazando los datos tenemos:
2X”(t)-5X’(t)-3X(t)=45exp(2t) con X(0)=2 y X(0.05)=2.0875
Usando el método de Stormer:
𝑥 𝑛+1 = 2𝑥 𝑛 − 𝑥 𝑛−1 + [45 exp(2𝑡) +
2.5𝑑𝑥
𝑑𝑡
+ 1.5𝑥] (∆𝑡2)
Usando fortran 90 tenemos:
PROGRAM STORMER_VERLET
PARAMETER (IDM=100)
DIMENSION X(IDM), ZF(IDM)
REAL H,NP,DZ,B,EE
PRINT*,''
PRINT*,
'==================================================================
==='
PRINT*,'METHOD DE NUMEROV PARA EDOS DE SEGUNDO ORDEN CON
CONDICIONES INICIALES'
PRINT*,'============================================================
=========='
PRINT*,''
PRINT*,'INGRESAR EL NUMERO DE PUNTOS NP'
READ(5,*)NP
PRINT*, 'INGRESAR LOS VALORES INICIALES X0 E Y(X0)'
READ*, X(0),ZF(0)
PRINT*, 'INGRESAR LOS VALORES INICIALES X1 E Y(X1)'
READ*, X(1),ZF(1)
PRINT*, 'INGRESAR H'
READ*, H
PRINT*, 'INGRESAR LA TOL'
READ*, ER
PRINT*,''
PRINT*,('*',I=1,79)
PRINT '(5X,"RESULTADOS")'
PRINT*,('*',I=1,79)
PRINT*,''
PRINT 100
100 FORMAT(11X,'N',12X ,'X(N)',13X,'ZF(N)')
DO N=1,NP
A=ZF(N)
X(N+1)=X(N)+H
10 DZ=0.5*(A-ZF(N-1))/H
B=F(X(N),ZF(N),DZ)
ZF(N+1)=2*ZF(N)-ZF(N-1)+B*H**2
EE=ABS(ZF(N+1)-A) !ERROR ENCONTRADO
IF (EE.GT.ER) THEN
A=(ZF(N+1)+A)/2
GOTO 10
END IF
WRITE (*,*) N+1,X(N+1),ZF(N+1)
END DO
PRINT*,''
END PROGRAM
FUNCTION F(X,Y,Z)
F=2.5*Z+1.5*Y+22.5*(EXP(2*X))
RETURN
END FUNCTION
” Año de la Promoción de la Industria Responsable y Compromiso
Climático
UNIVERSIDAD NACIONAL
DEL CALLAO
FACULTAD DE CIENCIAS
NATURALES Y MATEMÁTICA
FÍSICA TEÓRICA COMPUTACIONAL I
“SOBRE RELAJACIÓN SUCESIVA
MATRIX INVERSA, DETERMINANTE.”
ALUMNO:
MARCO ANTONIO ALPACA CHAMBA
ESCUELA PROFESIONAL:
FÍSICA
Ciudad universitaria, 11 de Septiembre del 2014
UNA ESFERA MACIZA DE RADIO 𝑹 = 𝟐𝟎 𝒄𝒎 Y MASA 𝑴 = 𝟑𝒌𝒈, ESTÁ EN
REPOSO SOBRE UN PLANO INCLINADO DE ÁNGULO 𝜽 = 𝟑𝟎°, SOSTENIDA POR
UNA CUERDA HORIZONTAL TAL Y COMO MUESTRA LA FIGURA.
SOLUCIÓN:
De las condiciones de equilibrio:
𝑵𝒔𝒆𝒏𝟑𝟎° = 𝑻 + 𝒇 𝒓 𝒄𝒐𝒔𝟑𝟎°…(𝟏)
𝑵𝒄𝒐𝒔𝟑𝟎° + 𝒇 𝒓 𝒔𝒆𝒏𝟑𝟎° = 𝟑𝟎… (𝟐)
Y de la suma de momentos
𝑻. 𝑹 − 𝒇 𝒓. 𝒓 = 𝟎
→ 𝑻 = 𝒇 𝒓 …(𝟑)
Así de (3) en (2) y (1):
√ 𝟑
𝟐
𝑵 +
𝟏
𝟐
𝑻 = 𝟑𝟎
𝟏
𝟐
𝑵 −
𝟐 + √ 𝟑
𝟐
𝑻 = 𝟎
Si resolvemos el sistema de forma analítica obtendremos:
𝒙 𝟏 = 𝑵 = 𝟑𝟎, 𝒙 𝟐 = 𝑻 = 𝟖. 𝟎𝟑𝟖𝟒 .
Ahora resolveremos este sistema de ecuaciones utilizando el método de Sobre Relajación
Sucesiva, cuya fórmula numérica es:
𝒂𝒊𝒊 𝒙𝒊
𝒌+𝟏
= 𝒘𝒃𝒊 − ∑ 𝒂𝒊𝒋 𝒙𝒋
𝒌
𝑵
𝒋>𝒊
− ∑ 𝒂𝒊𝒋 𝒙𝒋
𝒌+𝟏
𝑵
𝒋<𝒊
+ (𝟏 − 𝒘)∑ 𝒂𝒊𝒋 𝒙𝒋
𝒌
𝑵
𝒋=𝟏
De nuestro sistema de ecuaciones identificamos las matrices:
𝔸 = (
𝟎. 𝟖𝟔𝟖𝟓 𝟎. 𝟓
𝟎. 𝟓 −𝟏. 𝟖𝟔𝟔
); 𝔹 = (
𝟑𝟎
𝟎
); 𝕏 𝟎
= (
𝟑𝟎. 𝟖
𝟖. 𝟒
)
Trabajaremos con una tolerancia de 0.005 y w=0.75. Iniciando nuestro proceso de
iteración:
! SOBRE RELAJACIÓN SUCESIVA
PROGRAM METHOD_SRS
IMPLICIT NONE
INTEGER:: J,I,K,N
CHARACTER (40)::R*30
REAL (4) TOL, A (100,100), B (100), X(100,100)
REAL:: E,SUMA1,SUMA2,SUMA3,W
PRINT*,'SOLUTION DE SISTEMAS DE E.L.'
PRINT*,('',I=1,70)
PRINT*,'INGRERSAR ORDEN DEL SISTEMA'
READ*,N
PRINT*,('',I=1,70)
PRINT*,'INGRESAR TOLERANCIA'
READ*, TOL
PRINT*,('',I=1,70)
PRINT*,'INGRESAR ELEMENTOS DE A'
DO I=1,N
READ (*,*)( A(I,J),J=1,N)
ENDDO
PRINT*,('',I=1,70)
PRINT*,'INGRESAR ELEMENTOS DE B'
DO I=1,N
READ(*,*) B(I)
ENDDO
PRINT*,('',I=1,70)
PRINT*,'INGRESAR VECTOR APROXIMADO X'
k=1
DO I=1,N
READ(*,*) X(K,I)
ENDDO
PRINT*,('',I=1,70)
PRINT*,'INGRERSAR EL VALOR DE W'
READ*,W
! CÁLCULO NUMERICO
10 DO I=1,N
SUMA1=0
DO J=1,N
IF (J.GT.I) THEN
SUMA1=SUMA1+A(I,J)*X(K,J)
END IF
END DO
SUMA2=0
DO J=1,N
IF(J.LT.I)THEN
SUMA2=SUMA2+A(I,J)*X(K+1,J)
END IF
END DO
SUMA3=0
DO J=1,N
SUMA3=SUMA3+A(I,J)*X(K,J)
END DO
X(K+1,I)=(W*B(I)-SUMA1-SUMA2+(1-W)*SUMA3)/A(I,I)
END DO
!CONVERGENCIA
DO I=1,N
E=ABS(X(K+1,I)-X(K,I))
IF(E.LE.TOL) THEN
ELSE
K=K+1
GOTO 10
ENDIF
ENDDO
PRINT*,('',I=1,70)
! PRESENTACIÓN DE RESULTADOS
PRINT*,('*',I=1,70)
R=' RESULTADOS'
PRINT*,('',I=1,20),R
PRINT*,('',I=1,70)
PRINT 100
100 FORMAT(2x,'k',17x ,'x1',18x,'x2')
DO I=1,K+1
PRINT '(I3,2F20.3)',(I-1),(X(I,J),J=1,N)
ENDDO
PRINT*,('',I=1,70)
PRINT*,('*',I=1,70)
PRINT*,('',I=1,70)
PRINT*, 'LUEGO DE', K, ' ITERACIONES la solution del sistema es:'
PRINT*,('',I=1,70)
DO I=1,N
PRINT '(2F20.3)',X(K+1,I)
ENDDO
PRINT*,('',I=1,70)
PRINT*,'CON UNA APPROACH DE:'
PRINT '(E20.2)',E
PRINT*,('',I=1,70)
END
ELABORAR LA CODIFICACIÓN EN FORTRAN PARA CALCULAR LA INVERSA DE
LA MATRIZ A:
A= 7 6
5 9
SOLUCIÓN
PROGRAM MATRIZ_INVERSA
IMPLICIT NONE
INTEGER I,K,M,N,J
CHARACTER(40)::R*30
REAL(4) A(10,10),ID(10,10),E(10,10,10,10),B(10,10),SUMA1
PRINT*,('',I=1,70)
WRITE(*,*)'INGRESE EL ORDEN (N) DEL SISTEMA'
READ(*,*)N
WRITE(*,*)'INGRESE LAS COMPONENETES DE LA MATRIZ A'
DO I=1,N
READ(*,*) (A(I,J),J=1,N)
END DO
R=' RESULTADO'
PRINT*,('*',I=1,70)
PRINT*,('',I=1,20),R
PRINT*,('*',I=1,70)
DO K=1,N
DO I=1,N
DO J=1,N
IF (I.EQ.J)THEN
ID(I,J)=1
ELSE
ID(I,J)=0
END IF
END DO
END DO
DO M=1,N-1
DO I=1,N
DO J=1,N+1
IF(J.EQ.N+1)THEN
E(K,M-1,I,J)=ID(K,I)
ELSE
E(K,M-1,I,J)=A(I,J)
END IF
END DO
END DO
DO I=1,N
DO J=1,N+1
E(K,M,I,J)=E(K,M-1,I,J)
END DO
END DO
DO I=M+1,N
DO J=1,N+1
E(K,M,I,J)=E(K,M-1,I,J)-A(I,M)*E(K,M-1,M,J)/A(M,M)
END DO
END DO
END DO
B(N,K)=E(K,N-1,N,N+1)/E(K,N-1,N,N)
DO I=1,N
SUMA1=0
DO J=I+1,N
SUMA1=SUMA1+E(K,N-1,I,J)*B(J,K)
END DO
B(I,K)=(E(K,N-1,I,N+1)-SUMA1)/E(K,N-1,I,I)
END DO
END DO
WRITE(*,*)'LA MATRIZ INVERSA ES:'
DO I=1,N
PRINT '(2F20.2)',(B(I,J),J=1,N)
END DO
PRINT*,('',I=1,70)
END
ELABORAR UNA CODIFICACIÓN PARA CALCULAR EL DETERMINANTE DE LA
MATRIZ CUADRADA A:
A= 3 5 7
2 4 9
6 5 4
SOLUCIÓN:
PROGRAM DETERMINANTE
IMPLICIT NONE
INTEGER I,M,N,J
CHARACTER(40)::R*30
REAL(4) E(10,10,10),DET
PRINT*,('',I=1,70)
WRITE(*,*)'INGRESE EL ORDEN (N) DEL SISTEMA'
READ(*,*)N
PRINT*,('',I=1,70)
WRITE(*,*)'INGRESE LAS COMPONENETES DE LA MATRIZ A'
DO I=1,N
READ(*,*) (E(1,I,J),J=1,N)
END DO
R=' RESULTADOS'
PRINT*,('*',I=1,70)
PRINT*,('',I=1,20),R
PRINT*,('*',I=1,70)
DO M=2,N
DO I=1,N
DO J=1,N
E(M,I,J)=E(M-1,I,J)
END DO
END DO
DO I=M,N
DO J=1,N
E(M,I,J)=E(M-1,I,J)-E(M-1,I,M-1)*E(M-1,M-1,J)/E(M-1,M-1,M-1)
END DO
END DO
END DO
PRINT*,('',I=1,70)
WRITE(*,*)' LA MATRIZ DIAGONALIZADA ES:'
DO I=1,N
PRINT '(3F20.2)',(E(N,I,J),J=1,N)
END DO
DET=1
DO I=1,N
DET=DET*E(N,I,I)
END DO
PRINT*,('',I=1,70)
WRITE(*,*)'EL VALOR DEL DETERMINANTE ES:'
PRINT '(F20.2)',DET
PRINT*,('',I=1,70)
END
” Año de la Promoción de la Industria Responsable y Compromiso
Climático
UNIVERSIDAD NACIONAL
DEL CALLAO
FACULTAD DE CIENCIAS
NATURALES Y MATEMÁTICA
FÍSICA TEÓRICA COMPUTACIONAL I
“APLICACIÓN CON EL MÉTODO DE STORMER
PARA EDO DE ORDEN SUPERIOR”
ALUMNO:
MARCO ANTONIO ALPACA CHAMBA
ESCUELA PROFESIONAL:
FÍSICA
Ciudad universitaria, 20 de Noviembre del 2014
Enunciado del problema: Considere el circuito que se muestra en la figura 1.el cual
consta de un inductor L, un resistor R y un capacitor C. Cuando se aplica un voltaje E(t),
hace que una corriente de magnitud i fluya a través del circuito. Cuando la corriente fluye
más allá del inductor la caída de voltaje es L(di/dt), cuando fluye a través del resistor la
caída es Ri, y cuando llega al capacitor la caída es (1/C)q. Como la corriente no puede
fluir más allá del capacitor, sólo es posible medir la carga q que actúa en el capacitor.
Por lo tanto, las caídas de voltaje que ocurren a través del inductor, resistor y capacitor
son Ld2q/dt2, Rdq/dt, y q//C, respectivamente. De acuerdo con la ley del voltaje de
Kirchhoff, el voltaje aplicado es igual a la suma de caídas de voltaje alrededor del circuito.
Por consiguiente,
, donde E(t)=ωVpcosωt, R=1.0Ω, C=0.08F, L=0.0088H,
Vp=4, f=1Hz, usando el método de Stormer con h=0.05 resolver el problema de valores
iniciales i(0)=1.632 A, i(0.05) =1.813 A, con tol=0.05
Figura1
SOLUCIÓN:
Reemplazando los datos tenemos:
𝑑2
𝑖
𝑑𝑡2
= 2854.55cos(6.283𝑥)− 113.636𝑑𝑖/𝑑𝑡 − 1420.454𝑦
Usando el método de Stormer:
𝑖 𝑛+1 = 2𝑖 𝑛 − 𝑖 𝑛−1 + [2854.55cos(6.283𝑥) − 113.636𝑑𝑖/𝑑𝑡 − 1420.454𝑦](∆𝑡2)
Usando fortran 90 tenemos:
PROGRAM STORMER_VERLET
PARAMETER (IDM=100)
DIMENSION X(IDM), ZF(IDM)
REAL H,NP,DZ,B,EE
PRINT*,''
PRINT*,
'==================================================================
==='
PRINT*,'METHOD DE NUMEROV PARA EDOS DE SEGUNDO ORDEN CON
CONDICIONES INICIALES'
PRINT*,'============================================================
=========='
PRINT*,''
PRINT*,'INGRESAR EL NUMERO DE PUNTOS NP'
READ(5,*)NP
PRINT*, 'INGRESAR LOS VALORES INICIALES X0 E Y(X0)'
READ*, X(0),ZF(0)
PRINT*, 'INGRESAR LOS VALORES INICIALES X1 E Y(X1)'
READ*, X(1),ZF(1)
PRINT*, 'INGRESAR H'
READ*, H
PRINT*, 'INGRESAR LA TOL'
READ*, ER
PRINT*,''
PRINT*,('*',I=1,79)
PRINT '(5X,"RESULTADOS")'
PRINT*,('*',I=1,79)
PRINT*,''
PRINT 100
100 FORMAT(11X,'N',12X ,'X(N)',13X,'ZF(N)')
DO N=1,NP
A=ZF(N)
X(N+1)=X(N)+H
10 DZ=0.5*(A-ZF(N-1))/H
B=F(X(N),ZF(N),DZ)
ZF(N+1)=2*ZF(N)-ZF(N-1)+B*H**2
EE=ABS(ZF(N+1)-A) !ERROR ENCONTRADO
IF (EE.GT.ER) THEN
A=(ZF(N+1)+A)/2
GOTO 10
END IF
WRITE (*,*) N+1,X(N+1),ZF(N+1)
END DO
PRINT*,''
END PROGRAM
FUNCTION F(X,Y,Z)
F=2854.55*COS(6.283*X)-113.636*Z-1420.454*Y
RETURN
END FUNCTION
Métodos numéricos para resolver EDO con Fortran 90

Más contenido relacionado

La actualidad más candente

Corriente eléctrica (1)
Corriente eléctrica (1)Corriente eléctrica (1)
Corriente eléctrica (1)clausgon
 
Formulario de variable compleja
Formulario de variable complejaFormulario de variable compleja
Formulario de variable complejaAlfonso Prado
 
Problema resuleto campo electrico
Problema resuleto campo electricoProblema resuleto campo electrico
Problema resuleto campo electricoERICK CONDE
 
Ejercicios resueltos-bedford
Ejercicios resueltos-bedfordEjercicios resueltos-bedford
Ejercicios resueltos-bedfordJUAN CASAS LAGOS
 
Campo+Electrico23
Campo+Electrico23Campo+Electrico23
Campo+Electrico23efren1985
 
Ecuaciones diferenciales-orden-superior
Ecuaciones diferenciales-orden-superiorEcuaciones diferenciales-orden-superior
Ecuaciones diferenciales-orden-superiorSabena29
 
Ecuacion cauchy euler
Ecuacion cauchy eulerEcuacion cauchy euler
Ecuacion cauchy eulerNena Sofia
 
Solucionario ecuaciones2
Solucionario ecuaciones2Solucionario ecuaciones2
Solucionario ecuaciones2ERICK CONDE
 
Campo electrico distribuciones continuas de carga clase 4 TE
Campo electrico distribuciones continuas de carga clase 4 TECampo electrico distribuciones continuas de carga clase 4 TE
Campo electrico distribuciones continuas de carga clase 4 TETensor
 
COMPARACIÓN DE LOS MÉTODOS ITERATIVOS DE RUNGE KUTTA 2 ORDEN CON RUNGR KUTTA ...
COMPARACIÓN DE LOS MÉTODOS ITERATIVOS DE RUNGE KUTTA 2 ORDEN CON RUNGR KUTTA ...COMPARACIÓN DE LOS MÉTODOS ITERATIVOS DE RUNGE KUTTA 2 ORDEN CON RUNGR KUTTA ...
COMPARACIÓN DE LOS MÉTODOS ITERATIVOS DE RUNGE KUTTA 2 ORDEN CON RUNGR KUTTA ...Marco Antonio
 
Electrostática y magnetismo humberto leyva naveros
Electrostática y magnetismo   humberto leyva naverosElectrostática y magnetismo   humberto leyva naveros
Electrostática y magnetismo humberto leyva naverosJesus Martinez Casella
 
Problemas y ejercicios de mecánica cuántica
Problemas y  ejercicios de mecánica cuánticaProblemas y  ejercicios de mecánica cuántica
Problemas y ejercicios de mecánica cuánticaabraxas69
 
Problemas resueltos separata 3. cap 4
Problemas resueltos separata 3. cap 4Problemas resueltos separata 3. cap 4
Problemas resueltos separata 3. cap 4uni
 
ESFUERZOS Y DEFORMACIONES EN RECIPIENTES A PRESIÓN DE PARED DELGADA, FORMA ES...
ESFUERZOS Y DEFORMACIONES EN RECIPIENTES A PRESIÓN DE PARED DELGADA, FORMA ES...ESFUERZOS Y DEFORMACIONES EN RECIPIENTES A PRESIÓN DE PARED DELGADA, FORMA ES...
ESFUERZOS Y DEFORMACIONES EN RECIPIENTES A PRESIÓN DE PARED DELGADA, FORMA ES...jose luis moreno campos
 
Ecuaciones Diferenciales - Aplicaciones de las Ecuaciones diferenciales de Pr...
Ecuaciones Diferenciales - Aplicaciones de las Ecuaciones diferenciales de Pr...Ecuaciones Diferenciales - Aplicaciones de las Ecuaciones diferenciales de Pr...
Ecuaciones Diferenciales - Aplicaciones de las Ecuaciones diferenciales de Pr...Kike Prieto
 

La actualidad más candente (20)

calculo INTEGRALES TRIPLES
calculo INTEGRALES TRIPLEScalculo INTEGRALES TRIPLES
calculo INTEGRALES TRIPLES
 
Corriente eléctrica (1)
Corriente eléctrica (1)Corriente eléctrica (1)
Corriente eléctrica (1)
 
Formulario de variable compleja
Formulario de variable complejaFormulario de variable compleja
Formulario de variable compleja
 
Funciones bessel
Funciones besselFunciones bessel
Funciones bessel
 
Ejercicios serie de fourier
Ejercicios serie de fourierEjercicios serie de fourier
Ejercicios serie de fourier
 
Problema resuleto campo electrico
Problema resuleto campo electricoProblema resuleto campo electrico
Problema resuleto campo electrico
 
Ejercicios resueltos-bedford
Ejercicios resueltos-bedfordEjercicios resueltos-bedford
Ejercicios resueltos-bedford
 
Campo+Electrico23
Campo+Electrico23Campo+Electrico23
Campo+Electrico23
 
Ecuaciones diferenciales-orden-superior
Ecuaciones diferenciales-orden-superiorEcuaciones diferenciales-orden-superior
Ecuaciones diferenciales-orden-superior
 
Ecuacion cauchy euler
Ecuacion cauchy eulerEcuacion cauchy euler
Ecuacion cauchy euler
 
Solucionario ecuaciones2
Solucionario ecuaciones2Solucionario ecuaciones2
Solucionario ecuaciones2
 
Funciones vectoriales
Funciones vectorialesFunciones vectoriales
Funciones vectoriales
 
Campo electrico distribuciones continuas de carga clase 4 TE
Campo electrico distribuciones continuas de carga clase 4 TECampo electrico distribuciones continuas de carga clase 4 TE
Campo electrico distribuciones continuas de carga clase 4 TE
 
Metodo de Runge Kutta en Matlab
Metodo de Runge Kutta en Matlab Metodo de Runge Kutta en Matlab
Metodo de Runge Kutta en Matlab
 
COMPARACIÓN DE LOS MÉTODOS ITERATIVOS DE RUNGE KUTTA 2 ORDEN CON RUNGR KUTTA ...
COMPARACIÓN DE LOS MÉTODOS ITERATIVOS DE RUNGE KUTTA 2 ORDEN CON RUNGR KUTTA ...COMPARACIÓN DE LOS MÉTODOS ITERATIVOS DE RUNGE KUTTA 2 ORDEN CON RUNGR KUTTA ...
COMPARACIÓN DE LOS MÉTODOS ITERATIVOS DE RUNGE KUTTA 2 ORDEN CON RUNGR KUTTA ...
 
Electrostática y magnetismo humberto leyva naveros
Electrostática y magnetismo   humberto leyva naverosElectrostática y magnetismo   humberto leyva naveros
Electrostática y magnetismo humberto leyva naveros
 
Problemas y ejercicios de mecánica cuántica
Problemas y  ejercicios de mecánica cuánticaProblemas y  ejercicios de mecánica cuántica
Problemas y ejercicios de mecánica cuántica
 
Problemas resueltos separata 3. cap 4
Problemas resueltos separata 3. cap 4Problemas resueltos separata 3. cap 4
Problemas resueltos separata 3. cap 4
 
ESFUERZOS Y DEFORMACIONES EN RECIPIENTES A PRESIÓN DE PARED DELGADA, FORMA ES...
ESFUERZOS Y DEFORMACIONES EN RECIPIENTES A PRESIÓN DE PARED DELGADA, FORMA ES...ESFUERZOS Y DEFORMACIONES EN RECIPIENTES A PRESIÓN DE PARED DELGADA, FORMA ES...
ESFUERZOS Y DEFORMACIONES EN RECIPIENTES A PRESIÓN DE PARED DELGADA, FORMA ES...
 
Ecuaciones Diferenciales - Aplicaciones de las Ecuaciones diferenciales de Pr...
Ecuaciones Diferenciales - Aplicaciones de las Ecuaciones diferenciales de Pr...Ecuaciones Diferenciales - Aplicaciones de las Ecuaciones diferenciales de Pr...
Ecuaciones Diferenciales - Aplicaciones de las Ecuaciones diferenciales de Pr...
 

Destacado

MÉTODO ITERATIVO DE GAUSS_SEIDEL USANDO FORTRAN 90, MATLAB Y SCILAB
MÉTODO ITERATIVO DE GAUSS_SEIDEL USANDO FORTRAN 90, MATLAB Y SCILABMÉTODO ITERATIVO DE GAUSS_SEIDEL USANDO FORTRAN 90, MATLAB Y SCILAB
MÉTODO ITERATIVO DE GAUSS_SEIDEL USANDO FORTRAN 90, MATLAB Y SCILABMarco Antonio
 
COMPARACIÓN DE LOS MÉTODOS ITERATIVOS ADAMAS-BALTHOR-MOULT PREDICTOR CORRECTO...
COMPARACIÓN DE LOS MÉTODOS ITERATIVOS ADAMAS-BALTHOR-MOULT PREDICTOR CORRECTO...COMPARACIÓN DE LOS MÉTODOS ITERATIVOS ADAMAS-BALTHOR-MOULT PREDICTOR CORRECTO...
COMPARACIÓN DE LOS MÉTODOS ITERATIVOS ADAMAS-BALTHOR-MOULT PREDICTOR CORRECTO...Marco Antonio
 
El principio de Le Chatelier
El principio de Le Chatelier El principio de Le Chatelier
El principio de Le Chatelier Marco Antonio
 
Regla de dispersión numérica
Regla de dispersión numéricaRegla de dispersión numérica
Regla de dispersión numéricaMarco Antonio
 
Bellyqueen Superstars En Espanol Montaje
Bellyqueen Superstars En Espanol MontajeBellyqueen Superstars En Espanol Montaje
Bellyqueen Superstars En Espanol MontajeVellyqueen
 
5th Edition English
5th Edition English5th Edition English
5th Edition EnglishVellyqueen
 
Vellyqueen Magazine English Version
Vellyqueen Magazine English VersionVellyqueen Magazine English Version
Vellyqueen Magazine English VersionVellyqueen
 
Songs of innocence and of experience
Songs of innocence and of experienceSongs of innocence and of experience
Songs of innocence and of experiencetstewart2015
 
Seguridad del Paciente, Protección Radiológica y Prevención de Riesgos Laborales
Seguridad del Paciente, Protección Radiológica y Prevención de Riesgos LaboralesSeguridad del Paciente, Protección Radiológica y Prevención de Riesgos Laborales
Seguridad del Paciente, Protección Radiológica y Prevención de Riesgos LaboralesJorge Enrique Manrique-Chávez
 
Prob resueltost3 mapas k
Prob resueltost3 mapas kProb resueltost3 mapas k
Prob resueltost3 mapas kCECYTEG
 
MÉTODO DE EULER PARA EDO Y DE ORDEN SUPERIOR USANDO SCILAB 5.5
MÉTODO DE EULER PARA EDO Y DE ORDEN SUPERIOR USANDO SCILAB 5.5MÉTODO DE EULER PARA EDO Y DE ORDEN SUPERIOR USANDO SCILAB 5.5
MÉTODO DE EULER PARA EDO Y DE ORDEN SUPERIOR USANDO SCILAB 5.5Marco Antonio
 
Mapa de karnaugh alarma de un automóvil
Mapa de karnaugh alarma de un automóvilMapa de karnaugh alarma de un automóvil
Mapa de karnaugh alarma de un automóvilMarco Antonio
 
4th Edition English
4th Edition English4th Edition English
4th Edition EnglishVellyqueen
 
Ecuación diferencial parcial parabólica, método explícito usando fortan 90 ,m...
Ecuación diferencial parcial parabólica, método explícito usando fortan 90 ,m...Ecuación diferencial parcial parabólica, método explícito usando fortan 90 ,m...
Ecuación diferencial parcial parabólica, método explícito usando fortan 90 ,m...Marco Antonio
 
Espaciotiempo y diagrama de espaciotiempo
Espaciotiempo y diagrama de espaciotiempoEspaciotiempo y diagrama de espaciotiempo
Espaciotiempo y diagrama de espaciotiempoMarco Antonio
 

Destacado (18)

MÉTODO ITERATIVO DE GAUSS_SEIDEL USANDO FORTRAN 90, MATLAB Y SCILAB
MÉTODO ITERATIVO DE GAUSS_SEIDEL USANDO FORTRAN 90, MATLAB Y SCILABMÉTODO ITERATIVO DE GAUSS_SEIDEL USANDO FORTRAN 90, MATLAB Y SCILAB
MÉTODO ITERATIVO DE GAUSS_SEIDEL USANDO FORTRAN 90, MATLAB Y SCILAB
 
COMPARACIÓN DE LOS MÉTODOS ITERATIVOS ADAMAS-BALTHOR-MOULT PREDICTOR CORRECTO...
COMPARACIÓN DE LOS MÉTODOS ITERATIVOS ADAMAS-BALTHOR-MOULT PREDICTOR CORRECTO...COMPARACIÓN DE LOS MÉTODOS ITERATIVOS ADAMAS-BALTHOR-MOULT PREDICTOR CORRECTO...
COMPARACIÓN DE LOS MÉTODOS ITERATIVOS ADAMAS-BALTHOR-MOULT PREDICTOR CORRECTO...
 
El principio de Le Chatelier
El principio de Le Chatelier El principio de Le Chatelier
El principio de Le Chatelier
 
Regla de dispersión numérica
Regla de dispersión numéricaRegla de dispersión numérica
Regla de dispersión numérica
 
Bellyqueen Superstars En Espanol Montaje
Bellyqueen Superstars En Espanol MontajeBellyqueen Superstars En Espanol Montaje
Bellyqueen Superstars En Espanol Montaje
 
5th Edition English
5th Edition English5th Edition English
5th Edition English
 
Vellyqueen Magazine English Version
Vellyqueen Magazine English VersionVellyqueen Magazine English Version
Vellyqueen Magazine English Version
 
Laboratorio8
Laboratorio8Laboratorio8
Laboratorio8
 
Laboratorio5
Laboratorio5Laboratorio5
Laboratorio5
 
Arquímedes
ArquímedesArquímedes
Arquímedes
 
Songs of innocence and of experience
Songs of innocence and of experienceSongs of innocence and of experience
Songs of innocence and of experience
 
Seguridad del Paciente, Protección Radiológica y Prevención de Riesgos Laborales
Seguridad del Paciente, Protección Radiológica y Prevención de Riesgos LaboralesSeguridad del Paciente, Protección Radiológica y Prevención de Riesgos Laborales
Seguridad del Paciente, Protección Radiológica y Prevención de Riesgos Laborales
 
Prob resueltost3 mapas k
Prob resueltost3 mapas kProb resueltost3 mapas k
Prob resueltost3 mapas k
 
MÉTODO DE EULER PARA EDO Y DE ORDEN SUPERIOR USANDO SCILAB 5.5
MÉTODO DE EULER PARA EDO Y DE ORDEN SUPERIOR USANDO SCILAB 5.5MÉTODO DE EULER PARA EDO Y DE ORDEN SUPERIOR USANDO SCILAB 5.5
MÉTODO DE EULER PARA EDO Y DE ORDEN SUPERIOR USANDO SCILAB 5.5
 
Mapa de karnaugh alarma de un automóvil
Mapa de karnaugh alarma de un automóvilMapa de karnaugh alarma de un automóvil
Mapa de karnaugh alarma de un automóvil
 
4th Edition English
4th Edition English4th Edition English
4th Edition English
 
Ecuación diferencial parcial parabólica, método explícito usando fortan 90 ,m...
Ecuación diferencial parcial parabólica, método explícito usando fortan 90 ,m...Ecuación diferencial parcial parabólica, método explícito usando fortan 90 ,m...
Ecuación diferencial parcial parabólica, método explícito usando fortan 90 ,m...
 
Espaciotiempo y diagrama de espaciotiempo
Espaciotiempo y diagrama de espaciotiempoEspaciotiempo y diagrama de espaciotiempo
Espaciotiempo y diagrama de espaciotiempo
 

Similar a Métodos numéricos para resolver EDO con Fortran 90

Taller 1-termodinamica
Taller 1-termodinamicaTaller 1-termodinamica
Taller 1-termodinamicajsebas635
 
Pregunta 4 Selectividad Ondas Estacionarias
Pregunta 4 Selectividad Ondas EstacionariasPregunta 4 Selectividad Ondas Estacionarias
Pregunta 4 Selectividad Ondas EstacionariasAdrian PG
 
F3.1 pau-movimiento oscilatorio-soluc
F3.1 pau-movimiento oscilatorio-solucF3.1 pau-movimiento oscilatorio-soluc
F3.1 pau-movimiento oscilatorio-solucmariavarey
 
IMRT: Coeficientes del modelo atenuador
IMRT: Coeficientes del modelo atenuador  IMRT: Coeficientes del modelo atenuador
IMRT: Coeficientes del modelo atenuador Leopoldo Mazzucco
 
Compilado controles-mec
Compilado controles-mecCompilado controles-mec
Compilado controles-mecIndependiente
 
Taller_Física Moderna y Principios Cuánticos_2022.pdf
Taller_Física Moderna y Principios Cuánticos_2022.pdfTaller_Física Moderna y Principios Cuánticos_2022.pdf
Taller_Física Moderna y Principios Cuánticos_2022.pdfJose E. Carmona F.
 
Expresión matemática de una Onda Electromagnética Plana Uniforme.pptx
Expresión matemática de una Onda Electromagnética Plana Uniforme.pptxExpresión matemática de una Onda Electromagnética Plana Uniforme.pptx
Expresión matemática de una Onda Electromagnética Plana Uniforme.pptxVanessa Suarez
 
1.movimiento oscilatorio
1.movimiento oscilatorio1.movimiento oscilatorio
1.movimiento oscilatoriomarcojrivera
 
Ecuaciones de orden superior, MATEMATICA APLICADA
Ecuaciones de orden superior, MATEMATICA APLICADAEcuaciones de orden superior, MATEMATICA APLICADA
Ecuaciones de orden superior, MATEMATICA APLICADALuis Velasquez
 

Similar a Métodos numéricos para resolver EDO con Fortran 90 (20)

Taller 1-termodinamica
Taller 1-termodinamicaTaller 1-termodinamica
Taller 1-termodinamica
 
Pregunta 4 Selectividad Ondas Estacionarias
Pregunta 4 Selectividad Ondas EstacionariasPregunta 4 Selectividad Ondas Estacionarias
Pregunta 4 Selectividad Ondas Estacionarias
 
Pregunta 4 Selectividad Ondas Estacionarias
Pregunta 4 Selectividad Ondas EstacionariasPregunta 4 Selectividad Ondas Estacionarias
Pregunta 4 Selectividad Ondas Estacionarias
 
F3.1 pau-movimiento oscilatorio-soluc
F3.1 pau-movimiento oscilatorio-solucF3.1 pau-movimiento oscilatorio-soluc
F3.1 pau-movimiento oscilatorio-soluc
 
Trabajo encargado de analisis estructural
Trabajo encargado de analisis estructuralTrabajo encargado de analisis estructural
Trabajo encargado de analisis estructural
 
IMRT: Coeficientes del modelo atenuador
IMRT: Coeficientes del modelo atenuador  IMRT: Coeficientes del modelo atenuador
IMRT: Coeficientes del modelo atenuador
 
Compilado controles-mec
Compilado controles-mecCompilado controles-mec
Compilado controles-mec
 
Extremos. Problemas de aplicación
Extremos. Problemas de aplicación Extremos. Problemas de aplicación
Extremos. Problemas de aplicación
 
8.oscilaciones
8.oscilaciones8.oscilaciones
8.oscilaciones
 
Taller_Física Moderna y Principios Cuánticos_2022.pdf
Taller_Física Moderna y Principios Cuánticos_2022.pdfTaller_Física Moderna y Principios Cuánticos_2022.pdf
Taller_Física Moderna y Principios Cuánticos_2022.pdf
 
Pau ondas es
Pau ondas esPau ondas es
Pau ondas es
 
Expresión matemática de una Onda Electromagnética Plana Uniforme.pptx
Expresión matemática de una Onda Electromagnética Plana Uniforme.pptxExpresión matemática de una Onda Electromagnética Plana Uniforme.pptx
Expresión matemática de una Onda Electromagnética Plana Uniforme.pptx
 
Guia matematicas v
Guia matematicas vGuia matematicas v
Guia matematicas v
 
1.movimiento oscilatorio
1.movimiento oscilatorio1.movimiento oscilatorio
1.movimiento oscilatorio
 
1.movimiento oscilatorio
1.movimiento oscilatorio1.movimiento oscilatorio
1.movimiento oscilatorio
 
Ecuaciones de orden superior, MATEMATICA APLICADA
Ecuaciones de orden superior, MATEMATICA APLICADAEcuaciones de orden superior, MATEMATICA APLICADA
Ecuaciones de orden superior, MATEMATICA APLICADA
 
Ecuaciones de onda
Ecuaciones de ondaEcuaciones de onda
Ecuaciones de onda
 
Exponentes y radicales
Exponentes y radicalesExponentes y radicales
Exponentes y radicales
 
Dinámica
DinámicaDinámica
Dinámica
 
Ecuación+..
Ecuación+..Ecuación+..
Ecuación+..
 

Más de Marco Antonio

DIVISIÓN POLINÓMICA
DIVISIÓN POLINÓMICADIVISIÓN POLINÓMICA
DIVISIÓN POLINÓMICAMarco Antonio
 
Interpolación aritmética
Interpolación aritméticaInterpolación aritmética
Interpolación aritméticaMarco Antonio
 
PREFIJOS DEL SISTEMA MÉTRICO
PREFIJOS DEL SISTEMA MÉTRICOPREFIJOS DEL SISTEMA MÉTRICO
PREFIJOS DEL SISTEMA MÉTRICOMarco Antonio
 
EXAMEN DE SUBSANACIÓN DE ÁLGEBRA
EXAMEN DE SUBSANACIÓN DE ÁLGEBRAEXAMEN DE SUBSANACIÓN DE ÁLGEBRA
EXAMEN DE SUBSANACIÓN DE ÁLGEBRAMarco Antonio
 
Prefijos del sistema internacional
Prefijos del sistema internacionalPrefijos del sistema internacional
Prefijos del sistema internacionalMarco Antonio
 
monthly exam of algebra
monthly exam of algebramonthly exam of algebra
monthly exam of algebraMarco Antonio
 
Problemas resueltos de Factorización
Problemas resueltos de FactorizaciónProblemas resueltos de Factorización
Problemas resueltos de FactorizaciónMarco Antonio
 
solucionario del examen de álgebra
solucionario del examen de álgebrasolucionario del examen de álgebra
solucionario del examen de álgebraMarco Antonio
 
Examen Bimestral de Aritmética 5° de primaria
Examen Bimestral de Aritmética 5° de primariaExamen Bimestral de Aritmética 5° de primaria
Examen Bimestral de Aritmética 5° de primariaMarco Antonio
 
Examen Bimestral de Aritmética 6° de primaria
Examen Bimestral de Aritmética 6° de primariaExamen Bimestral de Aritmética 6° de primaria
Examen Bimestral de Aritmética 6° de primariaMarco Antonio
 
Brevísima historia de Arquímedes
Brevísima historia de ArquímedesBrevísima historia de Arquímedes
Brevísima historia de ArquímedesMarco Antonio
 
Sesion multiplexores y demultiplexores
Sesion  multiplexores y demultiplexores Sesion  multiplexores y demultiplexores
Sesion multiplexores y demultiplexores Marco Antonio
 
Sesion contadores y registros
Sesion  contadores y registrosSesion  contadores y registros
Sesion contadores y registrosMarco Antonio
 
EL VALOR DE PI USANDO EL MÉTODO MONTE CARLO EN FORTRAN, SCILAB 5.5 Y MATLAB
EL VALOR DE PI USANDO EL MÉTODO MONTE CARLO EN FORTRAN, SCILAB 5.5 Y MATLABEL VALOR DE PI USANDO EL MÉTODO MONTE CARLO EN FORTRAN, SCILAB 5.5 Y MATLAB
EL VALOR DE PI USANDO EL MÉTODO MONTE CARLO EN FORTRAN, SCILAB 5.5 Y MATLABMarco Antonio
 
MÉTODO DE RONGE KUTTA DE CUARTO ORDEN PARA EDO
MÉTODO DE RONGE KUTTA DE CUARTO ORDEN PARA EDOMÉTODO DE RONGE KUTTA DE CUARTO ORDEN PARA EDO
MÉTODO DE RONGE KUTTA DE CUARTO ORDEN PARA EDOMarco Antonio
 
COMPARACIÓN DEL MÉTODO DE RONGE KUTTA (2-4) USANDO FORTRAN Y SCILAB 5.5
COMPARACIÓN DEL MÉTODO DE RONGE KUTTA (2-4) USANDO FORTRAN Y SCILAB 5.5COMPARACIÓN DEL MÉTODO DE RONGE KUTTA (2-4) USANDO FORTRAN Y SCILAB 5.5
COMPARACIÓN DEL MÉTODO DE RONGE KUTTA (2-4) USANDO FORTRAN Y SCILAB 5.5Marco Antonio
 
Ecuación Diferencial Hiperbólica usando fortran, matlab y scilab.
Ecuación Diferencial Hiperbólica usando fortran, matlab y scilab.Ecuación Diferencial Hiperbólica usando fortran, matlab y scilab.
Ecuación Diferencial Hiperbólica usando fortran, matlab y scilab.Marco Antonio
 
Ecuación diferencial parabólica usando el método crank nicholson en fortran, ...
Ecuación diferencial parabólica usando el método crank nicholson en fortran, ...Ecuación diferencial parabólica usando el método crank nicholson en fortran, ...
Ecuación diferencial parabólica usando el método crank nicholson en fortran, ...Marco Antonio
 

Más de Marco Antonio (20)

DIVISIÓN POLINÓMICA
DIVISIÓN POLINÓMICADIVISIÓN POLINÓMICA
DIVISIÓN POLINÓMICA
 
Interpolación aritmética
Interpolación aritméticaInterpolación aritmética
Interpolación aritmética
 
PREFIJOS DEL SISTEMA MÉTRICO
PREFIJOS DEL SISTEMA MÉTRICOPREFIJOS DEL SISTEMA MÉTRICO
PREFIJOS DEL SISTEMA MÉTRICO
 
EXAMEN DE SUBSANACIÓN DE ÁLGEBRA
EXAMEN DE SUBSANACIÓN DE ÁLGEBRAEXAMEN DE SUBSANACIÓN DE ÁLGEBRA
EXAMEN DE SUBSANACIÓN DE ÁLGEBRA
 
Prefijos del sistema internacional
Prefijos del sistema internacionalPrefijos del sistema internacional
Prefijos del sistema internacional
 
monthly exam of algebra
monthly exam of algebramonthly exam of algebra
monthly exam of algebra
 
Factorización
FactorizaciónFactorización
Factorización
 
Problemas resueltos de Factorización
Problemas resueltos de FactorizaciónProblemas resueltos de Factorización
Problemas resueltos de Factorización
 
solucionario del examen de álgebra
solucionario del examen de álgebrasolucionario del examen de álgebra
solucionario del examen de álgebra
 
Examen Bimestral de Aritmética 5° de primaria
Examen Bimestral de Aritmética 5° de primariaExamen Bimestral de Aritmética 5° de primaria
Examen Bimestral de Aritmética 5° de primaria
 
Examen Bimestral de Aritmética 6° de primaria
Examen Bimestral de Aritmética 6° de primariaExamen Bimestral de Aritmética 6° de primaria
Examen Bimestral de Aritmética 6° de primaria
 
Brevísima historia de Arquímedes
Brevísima historia de ArquímedesBrevísima historia de Arquímedes
Brevísima historia de Arquímedes
 
Sesion multiplexores y demultiplexores
Sesion  multiplexores y demultiplexores Sesion  multiplexores y demultiplexores
Sesion multiplexores y demultiplexores
 
Sesion flips flops
Sesion  flips flopsSesion  flips flops
Sesion flips flops
 
Sesion contadores y registros
Sesion  contadores y registrosSesion  contadores y registros
Sesion contadores y registros
 
EL VALOR DE PI USANDO EL MÉTODO MONTE CARLO EN FORTRAN, SCILAB 5.5 Y MATLAB
EL VALOR DE PI USANDO EL MÉTODO MONTE CARLO EN FORTRAN, SCILAB 5.5 Y MATLABEL VALOR DE PI USANDO EL MÉTODO MONTE CARLO EN FORTRAN, SCILAB 5.5 Y MATLAB
EL VALOR DE PI USANDO EL MÉTODO MONTE CARLO EN FORTRAN, SCILAB 5.5 Y MATLAB
 
MÉTODO DE RONGE KUTTA DE CUARTO ORDEN PARA EDO
MÉTODO DE RONGE KUTTA DE CUARTO ORDEN PARA EDOMÉTODO DE RONGE KUTTA DE CUARTO ORDEN PARA EDO
MÉTODO DE RONGE KUTTA DE CUARTO ORDEN PARA EDO
 
COMPARACIÓN DEL MÉTODO DE RONGE KUTTA (2-4) USANDO FORTRAN Y SCILAB 5.5
COMPARACIÓN DEL MÉTODO DE RONGE KUTTA (2-4) USANDO FORTRAN Y SCILAB 5.5COMPARACIÓN DEL MÉTODO DE RONGE KUTTA (2-4) USANDO FORTRAN Y SCILAB 5.5
COMPARACIÓN DEL MÉTODO DE RONGE KUTTA (2-4) USANDO FORTRAN Y SCILAB 5.5
 
Ecuación Diferencial Hiperbólica usando fortran, matlab y scilab.
Ecuación Diferencial Hiperbólica usando fortran, matlab y scilab.Ecuación Diferencial Hiperbólica usando fortran, matlab y scilab.
Ecuación Diferencial Hiperbólica usando fortran, matlab y scilab.
 
Ecuación diferencial parabólica usando el método crank nicholson en fortran, ...
Ecuación diferencial parabólica usando el método crank nicholson en fortran, ...Ecuación diferencial parabólica usando el método crank nicholson en fortran, ...
Ecuación diferencial parabólica usando el método crank nicholson en fortran, ...
 

Métodos numéricos para resolver EDO con Fortran 90

  • 1. ” Año de la Promoción de la Industria Responsable y Compromiso Climático UNIVERSIDAD NACIONAL DEL CALLAO FACULTAD DE CIENCIAS NATURALES Y MATEMÁTICA FÍSICA TEÓRICA COMPUTACIONAL I “MÉTODOS NUMÉRICOSCON FORTRAN 90” ALUMNO: MARCO ANTONIO ALPACA CHAMBA ESCUELA PROFESIONAL: FÍSICA TEMAS: ADAMS-BASHFORTH CON CAMBIO DE VARIABLE ADAMS-BASHFORTH ADAMS-MOULTON DDNGB (U DIFERENTE=0) DDST (U DIFERENTE DE 0) DDST (U=0) NFB DNGB (U=0) DNGF u diferente de 0 DST (U DIFERENTE 0) DST (U=0) INVERSA APLICACIÓN JACOBI-RGS NGB NUMEROV STORMER SOBRE RELAJACIÓN SUCESIVA-INVERSA Y DETERMINANTE EIGENVALORES Y EGENVECTORES 24 de Noviembre del 2014 PROGRAMADE TODOS LOS EIGENVALORES En la vibración natural de tres masas, m, 2 m, y m, conectados por los cuatro resortes que se muestran en la Figura 1, determinar el polinomio característico, los valores propios, que
  • 2. corresponden a las frecuencias naturales de vibración, y los vectores propios, que dan la amplitudes de movimiento de las masas. Las constantes elásticas de los cuatro resortes son k, 2k, 2k, y k. Los desplazamientos de las tres masas están definidos por las coordenadas x1, x2, y x3, respectivamente, como se muestran. Tomar k / m = 1,0. FIGURA 1 Sistema de masa y resorte de vibración. SOLUCIÓN La extensión en el primer resorte, desde la izquierda, es x1 y la del segundo resorte es (x2 – x1). Puesto que la fuerza dirigida hacia el interior debido a la extensión está dado por un producto de la constante de resorte y la extensión, la fuerza neta que actúa sobre la primera masa en la dirección positiva de x1 es | 2K (x2 - x1) - Kx1 |. Por lo tanto, de la segunda ley de Newton, (1a), donde x dos puntos, es la segunda derivada de x, con respecto al tiempo t y es, por lo tanto, la aceleración de la masa. Del mismo modo, para las otras masas, (1b), (1c). A partir de la teoría de las vibraciones, la solución a las ecuaciones anteriores se puede tomar como (2), donde x1, x2, y x3 son las amplitudes de movimiento y ω es la frecuencia natural en radianes/segundo. Si estas ecuaciones son sustituidas en las ecuaciones de movimiento, de las ecuaciones 1, obtenemos el siguiente sistema de ecuaciones lineales homogéneas para k/m = 1.0: (3). Este sistema puede escribirse en forma matricial como AX= λX (4), donde λ=ω2 (5) y (6). Una solución no trivial de la ecuación 3 sólo puede obtenerse si el determinante de la matriz de coeficientes (A - λ) es cero. Por lo tanto,
  • 3. (7). Obtenemos el polinomio característico para este problema de valores propios mediante la ampliación de este determinante como -λ3 +8λ2 -17λ +6 =0 (8a). USANDO FORTRAN PARA OBTENER TODOS LOS EIGENVALORES Y EIGENVECTORES TENEMOS: PROGRAM ALL_THE_EIGEIVALUES PARAMETER (IDM=10) DIMENSION A(IDM,IDM),RT(IDM,IDM) REAL LAMBDA(IDM) PRINT *,'NUMBER OF EQUATIONS ARE:' READ(5,*)N PRINT*,'' PRINT*,'INGRESAR ELEMENTOS DE LA MATRIZ A POR FILAS' READ(5,*)((A(I,J),J=1,N),I=1,N) PRINT*,'' PRINT*,('*',I=1,79) PRINT '(5X,"RESULTADOS")' PRINT*,('*',I=1,79) DO 20 I=1,N DO 10 J=1,N RT(I,J)=0.0 10 CONTINUE RT(I,I) = 1.0 20 CONTINUE NSWEEP= 0 30 NRSKIP= 0 NMIN1=N-1 DO 130 I=1,NMIN1 IP1=I+1 DO 120 J=IP1,N AV=0.5*(A(I,J)+A(J,I)) DIFF=A(I,I)-A(J,J) RAD=SQRT(DIFF*DIFF+4.0*AV*AV) IF(RAD.EQ.0.0) GO TO 80 IF(DIFF.LT.0.0) GO TO 60 IF(ABS(A(I,I)).EQ.ABS(A(I,I))+100.*ABS(AV)) GO TO 40 GO TO 40 40 IF( ABS(A(J,J)).EQ.ABS(A(J,J))+100.*ABS(AV)) GO TO 80 50 COSINE=SQRT((RAD+DIFF)/(2.0*RAD)) SINE=AV/(RAD*COSINE) GO TO 70 60 SINE = SQRT((RAD-DIFF)/(2.0*RAD)) IF(AV.LT.0.0) SINE=-SINE COSINE=AV/(RAD*SINE) 70 IF(1.0.LT.1.0+ABS(SINE)) GO TO 90 80 NRSKIP=NRSKIP+1 GO TO 120 90 DO 100 K=1,N Q=A(I,K) A(I,K)=COSINE*Q+SINE*A(J,K) A(J,K)=-SINE*Q+COSINE*A(J,K)
  • 4. 100 CONTINUE DO 110 K=1,N Q=A(K,I) A(K,I)= COSINE*Q+SINE*A(K,J) A(K,J)= -SINE*Q+COSINE*A(K,J) Q = RT(K,I) RT(K,I)=COSINE*Q+SINE*RT(K,J) RT(K,J)=-SINE*Q+COSINE*RT(K,J) 110 CONTINUE 120 CONTINUE 130 CONTINUE NSWEEP=NSWEEP+1 IF(NSWEEP.GT.50) GO TO 140 IF(NRSKIP.LT.N*(N-1)/2) GO TO 30 140 CONTINUE DO 150 J=1,N LAMBDA(J)=A(J,J) 150 CONTINUE PRINT*,'' PRINT '(2X,"LOS VALORES PROPIOS APROXIMADOS SON:")' PRINT '(/F9.3)',(LAMBDA(I),I=1,N) PRINT '(/2X,"LOS VECTORES FILAS ASOCIADOS APROXIMADAMENTE SON:")' PRINT '(/3F9.3/)',((RT(I,J),I=1,N),J=1,N) STOP END
  • 5. ” Año de la Promoción de la Industria Responsable y Compromiso Climático UNIVERSIDAD NACIONAL DEL CALLAO FACULTAD DE CIENCIAS NATURALES Y MATEMÁTICA FÍSICA TEÓRICA COMPUTACIONAL I “APLICACIÓN CON EL MÉTODO DE ADAMS- BASHFORTH CON CAMBIO DE VARIABLE EN EDO DE ORDEN SUPERIOR” ALUMNO: MARCO ANTONIO ALPACA CHAMBA ESCUELA PROFESIONAL: FÍSICA FORTRAN 90 Ciudad universitaria, 20 de Noviembre del 2014
  • 6. SOLUCIÓN BASADA EN LA INTEGRACIÓN NUMÉRICA (MÉTODO DE ADAMS- BASHFORTH) AL PROBLEMA DE UN SISTEMA VIBRATORIO AMORTIGUADO. Enunciado del problema: Un sistema vibratorio que consiste de una masa (m=1/5 de slug o kilogramo) unida a un resorte (k=2 lb/pie o N/m). La masa se libera inicialmente desde el reposo ½ unidad (pie o metro) debajo de la posiciónde equilibrio. El movimiento es amortiguado y está siendo impulsado por una fuerza periódica externa (T=ӆ/2 s) f= 5cos4t comenzando en t=0 con β=2. Calcular la posición en t=0.4 Movimiento vertical oscilatorio de apoyo Solución: La formulación de la segunda ley de Newton da lugar a la ecuación diferencial de movimiento forzado: Reemplazando los datos tenemos: Cuya solución es: Evaluando: = 0.996051 Usando Euler: 𝑌𝑛+1 = 𝑌𝑛 + ∆𝑥 𝐹(𝑋 𝑛, 𝑌𝑛)
  • 7. Usando Adams-Bashforth: 𝑌𝑛+1 = 𝑌𝑛 + ∆𝑋 24 [55𝐹𝑛 − 59𝐹𝑛−1 + 37𝐹𝑛−2 − 9𝐹𝑛−3 ] Usando fortran tenemos: PROGRAM ADAMS_ BASHFORTH PARAMETER (IDM=150) DIMENSION D(IDM,IDM),X(IDM),Y(IDM),F(IDM),Z(IDM),SUM1(IDM),VAL(IDM),VAL1(IDM),SUM2(I DM),R(IDM,IDM) REAL(4) H,P,P1 DIMENSION CP(4) REAL ,PARAMETER::CP=(/55.0,-59.0,37.0,-9.0/) !REAL ,PARAMETER::CC=(/9.0,19.0,-5.0,1.0/) PRINT*, '================================================================== =' PRINT*,'METHOD DE ADAMS-BASHFORTH PARA EDO DE LA FORMA y''=F(x,y(x),z) ' PRINT*,'============================================================ ========' PRINT*,'' PRINT*,'INGRESAR EL VALOR DE N' READ(5,*)N PRINT*,'' PRINT*, 'INGRESAR LOS VALORES INICIALES X0 E Y0 Y Z(0)' READ*, X(0),Y(0),Z(0) PRINT*,'' PRINT*, 'INGRESAR H' READ*, H PRINT*,'' PRINT*,('*',I=1,79) PRINT '(5X,"RESULTADOS")' PRINT*,('*',I=1,79) !APLICANDO EULER- CAUCHY PRINT 90 90 FORMAT(3X,'EULER-CAUCHY APROXIMATION :'/) PRINT 100 100 FORMAT(4X,'ITERATION',5X ,'X',16X,'Y',18X,'Z') DO I=0,N X(I+1)=X(I)+H ENDDO DO J=0,N F(J)=-6*(Z(J))-10*(Y(J))+25*(COS(4*(X(J)))) IF (J.EQ.N) GOTO 10 Z(J+1)=Z(J)+H*F(J) Y(J+1)=Y(J)+H*Z(J) PRINT*,J+1,X(J+1),Y(J+1),Z(J+1) 10 ENDDO PRINT 110 110 FORMAT(/3X,'ADAMS-BASHFORTH APROXIMATION:'/)
  • 8. DO 6 L=0,N D(0,L)=F(L) WRITE (*,9)L,D(0,L) 9 FORMAT (2X,'F(',I3,')=',F12.4) 6 CONTINUE PRINT*,'' DO I=0,N K=I+1 IF(K.GE.5) GOTO 1 IF(I.EQ.0) THEN SUM1(I)=0.0 ENDIF SUM1(I+1)=(SUM1(I)+(CP(K)*H/24*D(0,N-I))) WRITE (*,112)I+1,CP(K) 112 FORMAT (2X,'CP(',I2,')=',F12.4) VAL(N+1)=Z(N)+SUM1(I+1) 1 ENDDO PRINT*,'' P=VAL(N+1) PRINT 115 115 FORMAT(/3X,'LA PREDICTOR FORMULA DA:'/) WRITE (*,116)N+1,P 116 FORMAT (2X,'ZP(',I3,')=',F12.4) PRINT 117 117 FORMAT(/3X,'ADAMS-BASHFORTH APROXIMATION:'/) DO L=0,N R(0,L)=Z(L) ENDDO DO I=0,N K=I+1 IF(K.GE.5)GOTO 2 IF(I.EQ.0) THEN SUM1(I)=0.0 ENDIF SUM2(I+1)=(SUM2(I)+(CP(K)*H/24*R(0,N-I))) VAL1(N+1)=Y(N)+SUM2(I+1) 2 ENDDO P1=VAL1(N+1) PRINT 119 119 FORMAT(/3X,'LA PREDICTOR FORMULA DA:'/) WRITE (*,120)N+1,P1 120 FORMAT (2X,'YP(',I3,')=',F12.4) PRINT*,'' PRINT*,'POR LO TANTO,LUEGO DE',N,'-ITERACIONES OBTENEMOS:' PRINT*,'' WRITE (*,121) X(N+1),P1 PRINT*,'' 121 FORMAT (10X,'Y(',F7.2,')=',F12.4) PRINT*,'' STOP END PROGRAM
  • 9.
  • 10. ” Año de la Promoción de la Industria Responsable y Compromiso Climático UNIVERSIDAD NACIONAL DEL CALLAO FACULTAD DE CIENCIAS NATURALES Y MATEMÁTICA FÍSICA TEÓRICA COMPUTACIONAL I “APLICACIÓN CON EL MÉTODO DE ADAMS- BASHFORTH PARA EDO DE PRIMER ORDEN” ALUMNO: MARCO ANTONIO ALPACA CHAMBA ESCUELA PROFESIONAL: FÍSICA Ciudad universitaria, 20 de Noviembre del 2014 IMPACTO DE UN COCHE CONTRA UNA BARRERA DE PROTECCIÓN.
  • 11. Una barrera de protección se sitúa al final de un circuito con el objeto de parar coches que han perdido el control. Esta barrera se ha diseñado de forma que la fuerza que la barrera aplica al coche viene dada en función de la velocidad v y del desplazamiento x de la parte frontal de la barrera, según la expresión: Donde k=30 s-kg/m5 es una constante. Un coche, con una masa m de 1500 kg, impacta contra la barrera de protección a una velocidad de 90 km/h. Calcular y representar la velocidad del coche en función de su posición para 0 ≤ x ≤ 3 m. SOLUCIÓN: La desaceleración del coche, una vez que éste ha impactado contra la barrera, se puede calcular utilizando la segunda Ley de Newton: Esta ecuación se puede resolver para la aceleración a en función de v y x: La velocidad, en función de x, se puede calcular sustituyendo la aceleración en la ecuación: , lo que resulta: Esta última ecuación es una ecuación diferencial ordinaria de primer orden, que se resolverá en el intervalo 0 ≤ x ≤ 3.0 m con la condición inicial v=90 km/h en x=0 Usando Euler: 𝑌𝑛+1 = 𝑌𝑛 + ∆𝑥 𝐹(𝑋 𝑛, 𝑌𝑛) Usando Adams-Bashforth: 𝑌𝑛+1 = 𝑌𝑛 + ∆𝑋 24 [55𝐹𝑛 − 59𝐹𝑛−1 + 37𝐹𝑛−2 − 9𝐹𝑛−3 ] Por lo tanto, haciendo 14 iteraciones resulta:
  • 12. TAMBIÉN SE VISUALIZA EL GRÁFICO: PROGRAM ADAMS_BASHFORTH PARAMETER (IDM=100) DIMENSION D(IDM,IDM),X(IDM), Y(IDM),F(IDM), Z(IDM),T(IDM) REAL H,P,P1,P2,S,S1,S2,VAL,VAL1,VAL2,U1,U2,U,H1,SUM REAL,PARAMETER:: A=0.0; B=1.0; M=60 PRINT*, '==========================================================' PRINT*,'METHOD DE ADAMS-BASHFORTH PARA EDO DE LA FORMA DY/DX=F(X,Y)'
  • 13. PRINT*,'============================================================ ' PRINT*,'' PRINT*,'INGRESAR EL VALOR DE N' READ(5,*)N PRINT*,'' PRINT*, 'INGRESAR LOS VALORES INICIALES X0 E Y0' READ*, X(0),Y(0) PRINT*,'' PRINT*, 'INGRESAR H' READ*, H PRINT*,'' PRINT*,('*',I=1,79) PRINT '(5X,"RESULTADOS")' PRINT*,('*',I=1,79) !APLICANDO EULER- CAUCHY PRINT 90 90 FORMAT(/3X,'EULER-CAUCHY APROXIMATION:'/) PRINT 100 100 FORMAT(4X,'ITERATION',5X ,'X',16X,'Y') DO I=0,N X(I+1)=X(I)+H ENDDO DO J=0,N F(J)=(-0.02)*(Y(J)**2)*((X(J)+1)**3) Z(J+1)=Y(J)+H*F(J) T(J)=(-0.02)*(Z(J+1)**2)*((X(J+1)+1)**3) IF (J.EQ.N) GOTO 10 Y(J+1)=Y(J)+((H*0.5)*(F(J)+T(J))) PRINT*,J+1,X(J+1),Y(J+1) 10 ENDDO PRINT 110 110 FORMAT(/3X,'ADAMS-BASHFORTH APROXIMATION:'/) DO 6 L=0,N D(0,L)=F(L) 6 CONTINUE DO 11 I=1,N DO 12 J=0,N-I D(I,J)=D(I-1,J+1)-D(I-1,J) 12 CONTINUE 11 CONTINUE ! PRINT*,'' ! DO I=0,N ! PRINT '(I3,10F9.3)',I+1,X(I),(D(I,K),K=0,N-I) ! ENDDO ! PRINT*,'' U1=A S1=0.0 P1=1.0 DO I=1,N P1=P1*(U1+I-1)/I
  • 14. S1=S1+P1*D(I,N-I) ENDDO VAL1=S1+D(0,N) U2=B S2=0.0 P2=1.0 DO I=1,N P2=P2*(U2+I-1)/I S2=S2+P2*D(I,N-I) ENDDO VAL2=S2+D(0,N) H1=(B-A)/REAL(M) SUM=0.5*(VAL1+VAL2) DO J=1,M-1 U=A+J*H1 S=0.0 P=1.0 DO 15 I=1,N P=P*(U+I-1)/I S=S+P*D(I,N-I) 15 CONTINUE VAL=S+D(0,N) SUM =SUM+ VAL END DO SUM = H1*SUM PRINT 115 115 FORMAT(/3X,'LA INTEGRAL RESULTA:'/) PRINT*,SUM PRINT*,'' Y(N+1)=Y(N)+H*SUM PRINT*,'' PRINT*,'POR LO TANTO,LUEGO DE',N,'-ITERACIONES LA VELOCIDAD ES:' PRINT*,'' WRITE (*,120) X(N+1),Y(N+1) PRINT*,'' 120 FORMAT (10X,'Y(',F7.3,')=',F12.4) PRINT*,'' STOP END PROGRAM
  • 15.
  • 16. ” Año de la Promoción de la Industria Responsable y Compromiso Climático UNIVERSIDAD NACIONAL DEL CALLAO FACULTAD DE CIENCIAS NATURALES Y MATEMÁTICA FÍSICA TEÓRICA COMPUTACIONAL I “APLICACIÓN CON EL MÉTODO DE ADAMS- MOULTON PARA EDO DE PRIMER ORDEN” ALUMNO: MARCO ANTONIO ALPACA CHAMBA ESCUELA PROFESIONAL: FÍSICA Ciudad universitaria, 15 de Noviembre del 2014
  • 17. SOLUCIÓN BASADA EN LA INTEGRACIÓN NUMÉRICA (MÉTODO DE ADAMS- MOULTON). Enunciado del problema: Al modelar la velocidad de los aviones y la pérdida de altitud cuando se emerge de un picado, las leyes básicas de la física dan lugar a la ecuación diferencial , donde θ denota el ángulo de picado (en radianes), V = V (θ) es la velocidad del avión, g = 9,8 m/s2 es la constante de aceleración, y k es una constante relacionada con el área de superficie del ala. Para un avión concreto, k = 0,00145, θ0 = -0,786, y V (θ0)=V0 = 150 m/s. Utilice h = 0,0524 (que divide θ0 en segmentos iguales) y n = 15 para estimar, la velocidad del avión a la finalización del picado, es decir, cuando se endereza hasta θ = 0. (¡Por supuesto, utilice herramientas tecnológicas!) SOLUCIÓN: Usando Euler Mejorado: 𝑌𝑛+1 = 𝑌𝑛 + ∆𝑥 (𝐹( 𝑋 𝑛, 𝑌𝑛) + 𝐹( 𝑋 𝑛+1, 𝑌𝑛+1 ∗ )) ∗ 0.5 𝑌𝑛+1 ∗ = 𝑌𝑛 + ∆𝑥 (𝐹( 𝑋 𝑛, 𝑌𝑛) Usando Adams-Moulton: 𝑌𝑛+1 = 𝑌𝑛 + ∆𝑋 24 [9𝐹𝑛+1 − 19𝐹𝑛 − 5𝐹𝑛 −1 + 𝐹𝑛 −2] Utilizando fortran 90 tenemos: PROGRAM ADAMS_MOULTON PARAMETER (IDM=150) DIMENSION D(IDM,IDM),X(IDM),Y(IDM),F(IDM),Z(IDM),T(IDM) REAL H,P,P1,P2,S,S1,S2,VAL,VAL1,VAL2,U1,U2,U,H1,SUM,H2,VAL10,VAL20,VAL30 REAL,PARAMETER:: A=0.0; B=1.0; M=1000 ;E=-1.0 ; G=0.0 PRINT*, '==========================================================' PRINT*,'METHOD DE ADAMS-MOULTON PARA EDO DE LA FORMA DY/DX=F(X,Y)' PRINT*,'============================================================ ' PRINT*,'' PRINT*,'INGRESAR EL VALOR DE N' READ(5,*)N PRINT*,'' PRINT*, 'INGRESAR LOS VALORES INICIALES X0 E Y0' READ*, X(0),Y(0) PRINT*,'' PRINT*, 'INGRESAR H' READ*, H PRINT*,'' PRINT*,('*',I=1,79) PRINT '(5X,"RESULTADOS")'
  • 18. PRINT*,('*',I=1,79) !APLICANDO EULER- CAUCHY PRINT 90 90 FORMAT(/3X,'EULER-CAUCHY APROXIMATION:'/) PRINT 100 100 FORMAT(4X,'ITERATION',5X ,'X',16X,'Y') DO I=0,N X(I+1)=X(I)+H ENDDO DO J=0,N F(J)=-9.8*(Y(J))*SIN(X(J))*(1/(0.00145*(Y(J)**2)-9.8*COS(X(J)))) Z(J+1)=Y(J)+H*F(J) T(J)=-9.8*(Z(J+1))*SIN(X(J+1))*(1/(0.00145*(Z(J+1)**2)-9.8*COS(X(J+1)))) IF (J.EQ.N) GOTO 10 Y(J+1)=Y(J)+((H*0.5)*(F(J)+T(J))) PRINT*,J+1,X(J+1),Y(J+1) 10 ENDDO PRINT 110 110 FORMAT(/3X,'ADAMS-BASHFORTH APROXIMATION:'/) DO 6 L=0,N+1 D(0,L)=F(L) 6 CONTINUE DO 11 I=1,N+1 DO 12 J=0,N+1-I D(I,J)=D(I-1,J+1)-D(I-1,J) 12 CONTINUE 11 CONTINUE U1=A S1=0.0 P1=1.0 DO I=1,N P1=P1*(U1+I-1)/I S1=S1+P1*D(I,N-I) ENDDO VAL1=S1+D(0,N) U2=B S2=0.0 P2=1.0 DO I=1,N P2=P2*(U2+I-1)/I S2=S2+P2*D(I,N-I) ENDDO VAL2=S2+D(0,N) H1=(B-A)/REAL(M) SUM=0.5*(VAL1+VAL2) DO J=1,M-1 U=A+J*H1 S=0.0 P=1.0 DO 15 I=1,N P=P*(U+I-1)/I
  • 19. S=S+P*D(I,N-I) 15 CONTINUE VAL=S+D(0,N) SUM =SUM+ VAL END DO SUM = H1*SUM WRITE (*,115) SUM 115 FORMAT(/3X,'LA INTEGRAL RESULTA=',F10.5/) !PREDICTOR FORMULA F(N+1)=Y(N)+H*SUM WRITE (*,117) F(N+1) 117 FORMAT(/3X,'DE LA PREDICTOR FORMULA RESULTA Y(P)(N+1)=',F10.5/) D(0,N+1)=F(N+1) DO I=1,N J=N+1-I D(I,J)=D(I-1,J+1)-D(I-1,J) ENDDO ! DO I=0,N ! PRINT '(I3,10F9.3)',I,(D(I,K),K=0,N+1-I) ! ENDDO PRINT 118 118 FORMAT(/3X,'ADAMS-MOULTON APROXIMATION:'/) U10=E S10=0.0 P10=1.0 DO I=1,N P10=P10*(U10+I-1)/I S10=S10+P10*D(I,N+1-I) ENDDO VAL10=S10+D(0,N+1) U20=G S20=0.0 P20=1.0 DO I=1,N P20=P20*(U20+I-1)/I S20=S20+P20*D(I,N+1-I) ENDDO VAL20=S20+D(0,N+1) H2=(G-E)/REAL(M) SUM1=0.5*(VAL10+VAL20) DO J=1,M-1 U30=E+J*H2 S30=0.0 P30=1.0 DO 16 I=1,N P30=P30*(U30+I-1)/I S30=S30+P30*D(I,N+1-I) 16 CONTINUE VAL30=S30+D(0,N+1) SUM1 =SUM1+ VAL30 END DO
  • 20. SUM1 = H2*SUM1 WRITE (*,119) SUM1 119 FORMAT(/3X,'LA INTEGRAL RESULTA=',F10.4/) ! CORRECTOR FORMULA Y(N+1)=Y(N)+H*SUM1 WRITE (*,121) Y(N+1) 121 FORMAT(/3X,'DE LA CORRECTOR FORMULA RESULTA Y(C)(N+1)=',F10.4/) PRINT*, ' POR LO TANTO,LUEGO DE',N,'-ITERACIONES LA VELOCIDAD ES:' PRINT*,'' WRITE (*,120) X(N+1),Y(N+1) PRINT*,'' 120 FORMAT (10X,'Y(',F7.3,')=',F12.4) PRINT*,'' STOP END PROGRAM
  • 21.
  • 22. ” Año de la Promoción de la Industria Responsable y Compromiso Climático UNIVERSIDAD NACIONAL DEL CALLAO FACULTAD DE CIENCIAS NATURALES Y MATEMÁTICA FÍSICA TEÓRICA COMPUTACIONAL I “APLICACIÓN CON EL MÉTODO DE ADAMS- MOULTON PARA EDO DE PRIMER ORDEN” ALUMNO: MARCO ANTONIO ALPACA CHAMBA ESCUELA PROFESIONAL: FÍSICA Ciudad universitaria, 20 de Noviembre del 2014 SOLUCIÓN BASADA EN LA INTEGRACIÓN NUMÉRICA (MÉTODO DE ADAMS- MOULTON).
  • 23. Enunciado del problema: Al modelar la velocidad de los aviones y la pérdida de altitud cuando se emerge de un picado, las leyes básicas de la física dan lugar a la ecuación diferencial , donde θ denota el ángulo de picado (en radianes), V = V (θ) es la velocidad del avión, g = 9,8 m/s2 es la constante de aceleración, y k es una constante relacionada con el área de superficie del ala. Para un avión concreto, k = 0,00145, θ0 = -0,786, y V (θ0)=V0 = 150 m/s. Utilice h = 0,006 (que divide θ0 en segmentos iguales) y n = 130 para estimar, la velocidad del avión a la finalización del picado, es decir, cuando se endereza hasta θ = 0. (¡Por supuesto, utilice herramientas tecnológicas!) SOLUCIÓN: Usando Euler Mejorado: 𝑌𝑛+1 = 𝑌𝑛 + ∆𝑥 (𝐹( 𝑋 𝑛, 𝑌𝑛) + 𝐹( 𝑋 𝑛+1, 𝑌𝑛+1 ∗ )) ∗ 0.5 𝑌𝑛+1 ∗ = 𝑌𝑛 + ∆𝑥 (𝐹( 𝑋 𝑛, 𝑌𝑛) Usando Adams-Moulton: 𝑌𝑛+1 = 𝑌𝑛 + ∆𝑋 24 [9𝐹𝑛+1 − 19𝐹𝑛 − 5𝐹𝑛 −1 + 𝐹𝑛 −2] Utilizando fortran 90 tenemos: PROGRAM ADAMS_MOULTON PARAMETER (IDM=150) DIMENSION D(IDM,IDM),X(IDM), Y(IDM),F(IDM), Z(IDM),T(IDM),SUM1(IDM) ,VAL(IDM),VAL1(IDM),SUM2(IDM) REAL(4) H,P,P1 DIMENSION CP(4),CC(4) REAL ,PARAMETER::CP=(/55.0,-59.0,37.0,-9.0/) REAL ,PARAMETER::CC=(/9.0,19.0,-5.0,1.0/) PRINT*,'' PRINT*, '==========================================================' PRINT*,'METHOD DE ADAMS-MOULTON PARA EDO DE LA FORMA DY/DX=F(X,Y)' PRINT*,'============================================================ ' PRINT*,'' PRINT*,'INGRESAR EL VALOR DE N' READ(5,*)N PRINT*, 'INGRESAR LOS VALORES INICIALES X0 E Y0' READ*, X(0),Y(0) PRINT*, 'INGRESAR H' READ*, H PRINT*,'' PRINT*,('*',I=1,79) PRINT '(5X,"RESULTADOS")' PRINT*,('*',I=1,79) !APLICANDO EULER- CAUCHY
  • 24. PRINT 90 90 FORMAT(3X,'EULER-CAUCHY APROXIMATION MEJORADA:'/) PRINT 100 100 FORMAT(4X,'ITERATION',5X ,'X',16X,'Y') DO I=0,N X(I+1)=X(I)+H ENDDO DO J=0,N F(J)=-9.8*(Y(J))*SIN(X(J))*(1/(0.00145*(Y(J)**2)-9.8*COS(X(J)))) Z(J+1)=Y(J)+H*F(J) T(J)=-9.8*(Z(J+1))*SIN(X(J+1))*(1/(0.00145*(Z(J+1)**2)-9.8*COS(X(J+1)))) IF (J.EQ.N) GOTO 10 Y(J+1)=Y(J)+((H*0.5)*(F(J)+T(J))) PRINT*,J+1,X(J+1),Y(J+1) 10 ENDDO PRINT 110 110 FORMAT(/3X,'ADAMS-BASHFORTH APROXIMATION:'/) DO 6 L=0,N D(0,L)=F(L) WRITE (*,9)L,D(0,L) 9 FORMAT (2X,'F(',I3,')=',F12.4) 6 CONTINUE PRINT*,'' DO I=0,N K=I+1 IF(K.GE.5) GOTO 1 IF(I.EQ.0) THEN SUM1(I)=0.0 ENDIF SUM1(I+1)=(SUM1(I)+(CP(K)*H/24*D(0,N-I))) WRITE (*,112)I+1,CP(K) 112 FORMAT (2X,'CP(',I2,')=',F12.4) VAL(N+1)=Y(N)+SUM1(I+1) 1 ENDDO PRINT*,'' P=VAL(N+1) PRINT 115 115 FORMAT(/3X,'LA PREDICTOR FORMULA DA:'/) WRITE (*,116)N+1,P 116 FORMAT (2X,'YP(',I3,')=',F12.4) PRINT 117 117 FORMAT(/3X,'ADAMS-MOULTON APROXIMATION:'/) DO I=0,N K=I+1 IF(K.GE.5)GOTO 2 IF(I.EQ.0) THEN SUM1(I)=0.0 D(0,N+1-I)=P ENDIF SUM2(I+1)=(SUM2(I)+(CC(K)*H/24*D(0,N+1-I))) WRITE (*,118)I+1,CC(K)
  • 25. 118 FORMAT (2X,'CC(',I2,')=',F12.4) VAL1(N+1)=Y(N)+SUM2(I+1) 2 ENDDO P1=VAL1(N+1) PRINT 119 119 FORMAT(/3X,'LA CORRECTOR FORMULA DA:'/) WRITE (*,120)N+1,P1 120 FORMAT (2X,'YC(',I3,')=',F12.4) PRINT*,'' PRINT*,'POR LO TANTO,LUEGO DE',N,'-ITERACIONES OBTENEMOS:' PRINT*,'' WRITE (*,121) X(N+1),P1 PRINT*,'' 121 FORMAT (10X,'Y(',F7.2,')=',F12.4) PRINT*,'' STOP END PROGRAM
  • 26.
  • 27.
  • 28.
  • 29.
  • 30. PROGRAM ADAMS_MOULTON REAL :: Z(0:150,0:150),X(0:150),H,I,NP,ZF(160),TOL,R(0:150,0:150) DIMENSION CC(4) REAL ,PARAMETER::CC=(/9.0,19.0,-5.0,1.0/) PRINT*,'' PRINT*, '==========================================================' PRINT*,'METHOD DE ADAMS-MOULTON PARA EDO DE LA FORMA DY/DX=F(X,Y)'
  • 31. PRINT*,'============================================================ ' PRINT*,'' PRINT*,'INGRESAR EL NUMBER DE PUNTOS (NP)' READ(5,*)NP PRINT*, 'INGRESAR LOS VALORES INICIALES X0 E Y0' READ*, X(0),Z(0,0) PRINT*, 'INGRESAR H' READ*, H PRINT*, 'INGRESAR TOLERANCIA' READ*, TOL PRINT*,('*',I=1,79) PRINT '(5X,"RESULTADOS")' PRINT*,('*',I=1,79) !APLICANDO EULER- CAUCHY PRINT 90 90 FORMAT(3X,'EULER-CAUCHY APROXIMATION MEJORADA:'/) PRINT 100 100 FORMAT(4X,'ITERATION',5X ,'X',16X,'Y') ZF(0)=Z(0,0) !NOS SIRVE COMO PUNTO DE PARTIDA DO L=1,NP X(L)=X(0)+L*H ENDDO PRINT*,0,X(0),Z(0,0) DO N=1,3 R(0,N)= Z(0,N-1)+H*F(X(N-1),Z(0,N-1)) Z(0,N)=Z(0,N-1)+(0.5)*H*(F(X(N-1),Z(0,N-1))+F(X(N),R(0,N))) ZF(N)=Z(0,N) PRINT*,N,X(N),Z(0,N) END DO PRINT*,'' PRINT 111 111 FORMAT(/3X,'ADAMS-MOULTON APROXIMATION:'/) DO J=1,4 WRITE (*,112)J,CC(J) 112 FORMAT (2X,'CC(',I2,')=',F12.4) ENDDO PRINT 113 113 FORMAT(9X ,'X',19X,'Y') DO N=3,NP I=0 10 I=I+1 Z(I,N)=ZF(N-1)+h/24*(9*F(X(N),ZF(N))+19*F(X(N-1),ZF(N-1))-5*F(X(N-2),ZF(N- 2))+F(X(N-3),ZF(N-3))) ZF(N)=Z(I,N) !CALCULAMOS LA CONVERGENCIA EE=ABS(Z(I,N)-Z(I-1,N)) !ERROR ENCONTRADO IF (EE.GT.TOL) THEN GOTO 10
  • 32. END IF ZF(N+1)=Z(I,N) PRINT*, X(N),ZF(N) ENDDO PRINT*,'' PRINT*,' POR LO TANTO,LUEGO DE LAS ITERACIONES OBTENEMOS:' PRINT*,'' WRITE (*,121) X(NP),ZF(N) 121 FORMAT (10X,'Y(',F7.2,')=',F12.4) PRINT*,'' END PROGRAM FUNCTION F(X,Y) !F=4*Y+COS(X**2) F=-9.8*Y*SIN(X)/(0.00145*(Y**2)-9.8*COS(X)) RETURN END FUNCTION
  • 33.
  • 34.
  • 35.
  • 36. ” Año de la Promoción de la Industria Responsable y Compromiso Climático UNIVERSIDAD NACIONAL DEL CALLAO FACULTAD DE CIENCIAS NATURALES Y MATEMÁTICA FÍSICA TEÓRICA COMPUTACIONAL I “APLICACIÓN CON LA FÓRMULA DE APROXIMACIÓN DDNGB (U≠ 0)” ALUMNO: MARCO ANTONIO ALPACA CHAMBA ESCUELA PROFESIONAL: FÍSICA Ciudad universitaria, 30 de Octubre del 2014 Una varilla está girando en un plano. La tabla muestra el ángulo Θ (radianes) a través del cual la varilla toma varios valores en el instante t en segundos.
  • 37. Encontrar la velocidad angular y la aceleración angular de la varilla cuando t = 0.7 segundos. SOLUCIÓN: Utilizando las fórmulas: 𝐹𝑚 ′ ( 𝑢) = 1 ∆𝑥 ∑ ∇𝑡 𝑓𝑘 ( 𝑢 + 𝑡 − 1 𝑡 ) 𝑚 𝑡=1 ∑ 1 𝑢 + 𝑖 + 𝐸 𝑡−1 𝑖=0 𝐹𝑚 " ( 𝑢) = 1 ∆𝑥2 ∑ ∇𝑡 𝑓𝑘 ( 𝑢 + 𝑡 − 1 𝑡 ) ∑ ∑ 1 (𝑢 + 𝑖) (𝑢 + 𝑗) 𝑡−1 𝑗=0 𝑗≠𝑖 𝑡−1 𝑖=0 + 𝐸 𝑚 𝑡=2 Por lo tanto la velocidad angular y la aceleración angular en t = 0,6 segundos son 4.496 rad/s y 6.82 rad/s2 respectivamente. PROGRAM DNGB !U≠0 PARAMETER (IDM=10)
  • 38. DIMENSION D(IDM,IDM),X(IDM), F(IDM) REAL Z,S,P,VAL,H,L INTEGER N PRINT*, '=====================================================' PRINT*,' INTERPOLATION DE LA PRIMERA DERIVADA DNGB ' PRINT*,' BACKWARD ' PRINT*,' PARA UN VALOR INTERMEDIO QUE NO ESTA EN LA TABLA' PRINT*, '===================================================== ' PRINT*,'INGRESAR EL VALOR DE N' READ(5,*)N PRINT*,'' DO 5 I=0,N PRINT*,'INGRESAR EL PUNTO',I+1 READ(5,*)X(I),F(I) 5 CONTINUE DO 6 J=0,N D(0,J)=F(J) 6 CONTINUE PRINT*,'' WRITE (*,*)'INGRESE EL VALOR A INTERPOLAR' READ(5,*) Z PRINT*,'' PRINT*,('*',I=1,79) PRINT '(5X,"RESULTADOS")' PRINT*,('*',I=1,79) H=(X(1)-X(0)) U=(Z-X(N))/H PRINT 100 100 FORMAT(11x,'H',12X ,'Z',12x,'U') PRINT*,H,Z,U PRINT*,'' S=0.0 DO 11 I=1,N DO 12 J=0,N-I D(I,J)=D(I-1,J+1)-D(I-1,J) 12 CONTINUE 11 CONTINUE DO I=0,N PRINT '(I3,10F9.3)',I+1,X(I),(D(I,K),K=0,N-I) ENDDO PRINT*,'' P=1.0 DO 15 I=1,N P=P*(U+I-1)/I
  • 39. L=0 DO J=0,I-1 L=L+(1/(U+J)) ENDDO S=S+P*D(I,N-I)*L 15 CONTINUE VAL=S/H PRINT*,'LA INTERPOLATION DE (',Z,')=',VAL PRINT*,'' STOP END PROGRAM DDNGB !U≠0 PARAMETER (IDM=10)
  • 40. DIMENSION D(IDM,IDM),X(IDM), F(IDM) REAL Z,S1,S2,P1,P2,VAL1,VAL2,VAL,H,U INTEGER N PRINT*, '=====================================================' PRINT*,' INTERPOLATION DE LA SEGUNDA DERIVADA DNGB ' PRINT*,' BACKWARD ' PRINT*,' PARA UN VALOR INTERMEDIO, ES DECIR U DIFERENTE 0 ' PRINT*, '===================================================== ' PRINT*,'INGRESAR EL VALOR DE N' READ(5,*)N PRINT*,'' DO 5 I=0,N PRINT*,'INGRESAR EL PUNTO',I+1 READ(5,*)X(I),F(I) 5 CONTINUE DO 6 J=0,N D(0,J)=F(J) 6 CONTINUE PRINT*,'' WRITE (*,*)'INGRESE EL VALOR A INTERPOLAR' READ(5,*) Z PRINT*,'' PRINT*,('*',I=1,79) PRINT '(5X,"RESULTADOS")' PRINT*,('*',I=1,79) H=(X(1)-X(0)) U=(Z-X(N))/H PRINT 100 100 FORMAT(11x,'H',12X ,'Z',12X,'U') PRINT*,H,Z,U PRINT*,'' S1=0.0 S2=0.0 P1=1.0 DO 11 I=1,N DO 12 J=0,N-I D(I,J)=D(I-1,J+1)-D(I-1,J) 12 CONTINUE 11 CONTINUE DO I=0,N PRINT '(I3,10F9.3)',I+1,X(I),(D(I,K),K=0,N-I) ENDDO PRINT*,'' DO 15 I=2,N DO J=0,I-1 P1=P1*(U+J)/(J+1) ENDDO S1=S1+P1*D(I,N-I) 15 CONTINUE VAL1=S1 DO I=0,N-1
  • 41. P2=1.0 DO J=0,N-1 IF(J.EQ.I) GOTO 20 P2=P2*(1/((U+I)*(U+J))) 20 ENDDO S2=S2+P2 ENDDO VAL2=S2 VAL=(VAL1*VAL2)/(H**2) PRINT*,'' PRINT*,'LA INTERPOLATION DE (',Z,')=',VAL PRINT*,'' STOP END
  • 42. ” Año de la Promoción de la Industria Responsable y Compromiso Climático UNIVERSIDAD NACIONAL DEL CALLAO FACULTAD DE CIENCIAS NATURALES Y MATEMÁTICA FÍSICA TEÓRICA COMPUTACIONAL I “APLICACIÓN CON LA FÓRMULA DE APROXIMACIÓN DDST (U≠0)” ALUMNO: MARCO ANTONIO ALPACA CHAMBA ESCUELA PROFESIONAL: FÍSICA Ciudad universitaria, 20 de Noviembre del 2014
  • 43. La manivela AB de longitud R= 90 mm está rotando a rapidez angular constante de dθ/dt = 5000 rev/min. La posición del pistón C se puede demostrar que varía con el ángulo θ como: Calcular la aceleración del pistón en θ = 36°, por diferenciación numérica. SOLUCIÓN: El mecanismo de un pistón conectado mediante una varilla a una manivela es un problema clásico utilizado frecuentemente en aplicaciones de ingeniería. La manivela va rotando con rapidez angular constante, utilizando la ecuación de la posición para ciertos valores de θ, obtenemos los siguientes datos: Calculando la segunda derivada tenemos:
  • 44. La posición del pistón viene dada por: La derivada de x con respecto al tiempo nos da la velocidad del pistón: La segunda derivada de x con respecto al tiempo nos da la aceleración del pistón: Reemplazando los datos tenemos: Resultando Por lo tanto la aceleración en θ =16° es -322.523 m/s2 PROGRAM DDST PARAMETER (IDM=10) DIMENSION D(IDM,IDM),X(IDM), Y(IDM) REAL Z,S1,S2,P1,P2,P3,VAL,VAL1,Q,Q1,Q2,Q3,P,U,H,S,R1,R2,S21,S3,S31 INTEGER N,K PRINT*, '=====================================================' PRINT*,' DDST FORMULA DE STIRLING (U DIFERENTE DE 0) ' PRINT*,'===================================================== ' PRINT*,'INGRESAR EL VALOR DE N=4' READ(5,*)N
  • 45. PRINT*,'' DO I=0,N PRINT*,'INGRESAR EL PUNTO',I+1 READ(5,*)X(I),Y(I) ENDDO PRINT*,'' DO 6 J=0,N D(0,J)=Y(J) 6 CONTINUE PRINT*,'' WRITE (*,*)'INGRESE EL VALOR A INTERPOLAR' READ (5,*) Z PRINT*,'' PRINT*,('*',I=1,79) PRINT '(5X,"RESULTADOS")' PRINT*,('*',I=1,79) DO 12 I=1,N DO 13 J=0,N-I D(I,J)=D(I-1,J+1)-D(I-1,J) 13 CONTINUE 12 CONTINUE PRINT*,'' PRINT*,'TABLA DE DIFERENCIAS CON H UNIFORME' PRINT*,'' DO I=0,N PRINT '(I3,10F9.3)',I+1,X(I),(D(I,J),J=0,N-I) ENDDO PRINT*,'' H=((X(2)- X(1))*(3.141592/180)) K=((N+2)/2)-1 U=((Z-X(K))/H )*(3.141592/180) PRINT 100 100 FORMAT(5X,'H',19X ,'Z',17X,'K', 8X,'U') PRINT*,H,Z,K,U S1=0.0 P1=1.0 P1=P1*U DO L=2,K P=((D(2*(L-1)+1,K-L)+D(2*(L-1)+1,K -(L-1)))/2) P1=P1*(((U**2)-((L-1)**2))/((2*(L-1)+1)*(2*(L-1)))) S=P1*P R1=0.0 DO I=1,(2*L-1) Q1=0.0 DO J=1,(2*L-1) IF (I.EQ.J) GOTO 10 QI=Q1+(1/((U-L+I)*(U-L+J))) 10 ENDDO R1=R1+Q1 ENDDO S1=S1+S*R1
  • 46. ENDDO S2=0.0 P2=((U**2)/2) DO 30 M=2,K Q=(D(2*M,K-M)) P2=P2*(((U**2)-((M-1)**2))/((2*(M-1)+2)*(2*(M-1)+1))) S21=P2*Q R2=0.0 DO I=1,(2*M-1) Q2=0.0 DO J=1,(2*M-1) IF (I.EQ.J) GOTO 20 Q2=Q2+(1/((U-M+I)*(U-M+J))) 20 ENDDO R2=R2+Q2 ENDDO S2=S2+S21*R2 30 CONTINUE S3=0.0 P3=(U) DO 40 J=2,K Q3=(D(2*J,K-J)) P3=P3*(((U**2)-((J-1)**2))/((2*(J-1)+2)*(2*(J-1)+1))) S31=P3*Q R3=0.0 DO I=1,(2*J-1) R3=R3+(1/(U-J+I)) ENDDO S3=S3+S31*R3 40 CONTINUE VAL=(D(K,1)+S1+S2+S3)*(1/(H**2)) VAL1=((52.3598)**2)*VAL PRINT*,'' PRINT*,'LA ACCELERATION EN (',Z,')=',VAL1 PRINT*,'' STOP END
  • 47.
  • 48. ” Año de la Promoción de la Industria Responsable y Compromiso Climático UNIVERSIDAD NACIONAL DEL CALLAO FACULTAD DE CIENCIAS NATURALES Y MATEMÁTICA FÍSICA TEÓRICA COMPUTACIONAL I “APLICACIÓN CON LA FÓRMULA DE APROXIMACIÓN DDST (U=0)” ALUMNO: MARCO ANTONIO ALPACA CHAMBA ESCUELA PROFESIONAL: FÍSICA Ciudad universitaria, 20 de Noviembre del 2014 La tabla adjunta corresponde a la posición de un móvil. Determinar si este móvil sigue un movimiento uniforme acelerado.
  • 49. SOLUCIÓN: Para contestar a esta pregunta se pueden seguir diferentes caminos de solución: - una opción sería ver si un polinomio de segundo grado se ajusta a la tabla de datos. - la segunda opción sería determinar la segunda derivada para cada punto de la tabla y comprobar que ésta es constante. Siguiendo esta segunda opción, ya que la tabla es equiespaciada y que se pretende determinar la segunda derivada de la posición respecto al tiempo(la aceleración),se utilizará el método DDST con u=0. Los resultados de la segunda derivada para cada punto resultan ser: La aceleración es constante y, por lo tanto, se trata de un movimiento uniforme acelerado. PROGRAM DDST PARAMETER (IDM=10) DIMENSION D(IDM,IDM),X(IDM), Y(IDM) REAL Z,S2,P2,VAL,Q,U,H INTEGER N,K PRINT*, '=====================================================' PRINT*,' DDST FORMULA DE STIRLING U=0 ' PRINT*,'===================================================== ' PRINT*,'INGRESAR EL VALOR DE N , MULTIPLO DE 2' READ(5,*)N PRINT*,'' DO I=0,N PRINT*,'INGRESAR EL PUNTO',I+1 READ(5,*)X(I),Y(I) ENDDO PRINT*,'' DO 6 J=0,N D(0,J)=Y(J) 6 CONTINUE
  • 50. PRINT*,'' WRITE (*,*)'INGRESE EL VALOR A INTERPOLAR' READ (5,*) Z PRINT*,'' PRINT*,('*',I=1,79) PRINT '(5X,"RESULTADOS")' PRINT*,('*',I=1,79) DO 12 I=1,N DO 13 J=0,N-I D(I,J)=D(I-1,J+1)-D(I-1,J) 13 CONTINUE 12 CONTINUE PRINT*,'' PRINT*,'TABLA DE DIFERENCIAS CON H UNIFORME' PRINT*,'' DO I=0,N PRINT '(I3,10F9.3)',I+1,X(I),(D(I,J),J=0,N-I) ENDDO PRINT*,'' H=(X(2)- X(1)) K=((N+2)/2)-1 U=(Z-X(K))/H PRINT 100 100 FORMAT(5X,'H',19X ,'Z',17X,'K', 8X,'U') PRINT*,H,Z,K,U S2=0.0 P2=1.0 DO 30 M=1,K Q=(D(2*M,K-M)) S2=S2+P2*Q P2=P2*((-((M-1)**2))/((2*(M-1)+2)*(2*(M-1)+1))) 30 CONTINUE VAL=S2*(1/(H**2)) PRINT*,'' PRINT*,'LA INTERPOLATION DE (',Z,')=',VAL PRINT*,'' STOP END
  • 51.
  • 52.
  • 53. ” Año de la Promoción de la Industria Responsable y Compromiso Climático UNIVERSIDAD NACIONAL DEL CALLAO FACULTAD DE CIENCIAS NATURALES Y MATEMÁTICA FÍSICA TEÓRICA COMPUTACIONAL I “APLICACIÓN DE INTERPOLACIÓN NFB.” ALUMNO: MARCO ANTONIO ALPACA CHAMBA ESCUELA PROFESIONAL: FÍSICA Ciudad universitaria, 25 de Septiembre del 2014 Dos partículas tienen una fuerza de interacción que varía de acuerdo a la distancia entre ellas
  • 54. Hallar la fuerza de interacción en x=4.15 Solución: Usando la interpolación NGB tenemos: PROGRAM NGB REAL,DIMENSION(:), ALLOCATABLE::X,FX, T(:,:) CHARACTER(2)::RPTA PRINT*,'INGRESAR EL NUMBER DE PUNTOS' READ*,M ALLOCATE(X(0:M),FX(0:M),T(0:M,0:M)) N=M-1 DO I=0,N PRINT*,'INGRESAR EL PUNTO',I+1 READ*,X(I),FX(I) END DO DO 10 PRINT*,'INGRESAR UN PUNTO A INTERPOLAR' READ*,XA IF(XA<X(0).OR.XA>X(N)) THEN
  • 55. PRINT*,'ADVERTENCIA:X,ESTA FUERA DE RANGO:(',X(0),X(N),')' GOTO 10 ENDIF I=0 DO WHILE (I<=N-1) T(I,0)=(FX(I+1)-FX(I))/(X(I+1)-X(I)) I=I+1 ENDDO J=1 DO WHILE (J<=N-1) I=J DO WHILE (I<=N-1) T(I,J)=(T(I,J-1)-T(I-1,J-1))/(X(I+1)-X(I)) I=I+1 ENDDO J=J+1 ENDDO DO J=0,N-1 ENDDO FXINT=FX(0) I=0 DO WHILE (I<=N-1) P=1 J=0 DO WHILE (J<=I) P=P*(XA-X(J)) J=J+1 ENDDO FXINT=FXINT+T(I,I)*P I=I+1 ENDDO PRINT*,('*',I=1,78) PRINT*,'EL RESULTADO DE LA INTERPOLACION (',XA,')=',FXINT PRINT*,('*',I=1,78) PRINT*,'CONTINUAR:(SI O NO)' READ*, RPTA IF(RPTA=='NO')EXIT ENDDO DEALLOCATE(X,FX,T) STOP END
  • 56.
  • 57. ” Año de la Promoción de la Industria Responsable y Compromiso Climático UNIVERSIDAD NACIONAL DEL CALLAO FACULTAD DE CIENCIAS NATURALES Y MATEMÁTICA FÍSICA TEÓRICA COMPUTACIONAL I “APLICACIÓN CON LA FÓRMULA DE APROXIMACIÓN DNGB (U=0) ” ALUMNO: MARCO ANTONIO ALPACA CHAMBA ESCUELA PROFESIONAL: FÍSICA Ciudad universitaria, 30 de Octubre del 2014 Aplicación en la Ingeniería
  • 58. Se requiere la diferenciación numérica en muchas aplicaciones de la ingeniería. Por ejemplo, la caída de tensión en la inductancia es dada como, . Aquí la diferenciación numérica de i da la caída de tensión en la inductancia. La corriente en el condensador se da como, . Aquí la diferenciación numérica de v da la corriente a través del condensador. La corriente que fluye a través de la inductancia como una función del tiempo se da continuación: tiempo, t 0 0.1 0.2 0.3 0.5 0.7 Corriente, i 0 0.15 0.3 0.55 0.8 1.9 Determinar la caída de tensión con una inductancia de 4H en t = 0,3. Solución. Los datos no están espaciados de manera uniforme. Por lo tanto podemos usar los métodos de diferenciación para los puntos nodales no uniformes. Se requiere la derivada en t = 0.3. Por lo tanto, vamos a considerar la parte siguiente de los datos. tiempo, x x 2 = 0.3 X1= 0.5 X0=0.7 corriente, y y2= 0.55 y1 = 0.8 y 0 = 1.9 𝐹𝑚 ′ ( 𝑥 𝑘 ) = 1 ∆𝑥 ∑ ∇ 𝑡 𝑡 𝑓𝑘 + 𝐸𝑚 𝑡=1 (1) La ecuación (1) da la derivada mediante interpolación DNGB con u=0, es decir, en xk, .
  • 59. Así di/dt en t = 0.3 es – 0.875. Por lo tanto la caída de tensión en una inductancia es, = - 3.5 voltios en t = 0.3 segundos Del mismo modo, la caída de tensión en otros instantes de tiempo se puede obtener. PROGRAM DNGB !U=0 PARAMETER (IDM=10) DIMENSION D(IDM,IDM),X(IDM), F(IDM) REAL Z,S,P,H ,VAL INTEGER N PRINT*,'INRESAR EL VALOR DE N' READ(5,*)N PRINT*,'' DO I=0,N PRINT*,'INGRESAR EL PUNTO',I+1 READ(5,*)X(I),F(I) END DO DO J=0,N D(0,J)=F(J) ENDDO PRINT*,'' PRINT*,'INGRESE EL VALOR A INTERPOLAR' READ(5,*)Z PRINT*,'' PRINT*,('*',I=1,79) PRINT '(5X,"RESULTADOS")' PRINT*,('*',I=1,79) H=(X(1)-X(0)) S=0.0 DO 11 I=1,N DO 12 J=0,N-I D(I,J)=D(I-1,J+1)-D(I-1,J) 12 CONTINUE 11 CONTINUE PRINT 100 100 FORMAT(11x,'Z',12X ,'H') PRINT*,Z,H DO I=1,N P=1.0 DO J=0,I-1 P=P/(J+1) ENDDO S=S+D(I,N-I)*P ENDDO VAL=S/H PRINT*,'' PRINT*,'INTERPOLATION de (',Z,')=',VAL
  • 61. ” Año de la Promoción de la Industria Responsable y Compromiso Climático UNIVERSIDAD NACIONAL DEL CALLAO FACULTAD DE CIENCIAS NATURALES Y MATEMÁTICA FÍSICA TEÓRICA COMPUTACIONAL I “APLICACIÓN CON LA APROXIMACIÓN NUMÉRICA DE LA DERIVADA DNGF.” ALUMNO: MARCO ANTONIO ALPACA CHAMBA ESCUELA PROFESIONAL: FÍSICA Ciudad universitaria, 30 de Octubre del 2014 Una varilla está girando en un plano sobre uno de sus extremos. Si la tabla siguiente da los ángulos ϴ en radianes a través del cual la varilla toma diferentes valores en el instante de t segundos, encontrar su velocidad angular en t= 0.7 segundos.
  • 62. k t segundos ɵ radianes 0 0 0 1 0.2 0.12 2 0.4 0.48 3 0.6 1 4 0.8 2 5 1 3.2 6 1.2 4.666 SOLUCIÓN: USANDO LA APROXIMACIÓN DNGF TENEMOS:
  • 63. Por lo tanto la Velocidad angular = 4,93 radian/sec PROGRAM PRIMERA_DERIVADA_DNGF REAL:: X(0:10),F(0:10),XI,H,U,M,K,DFI PRINT*, '=====================================================' PRINT*,' INTERPOLATION DE LA PRIMERA DERIVADA DNGF ' PRINT*,' HACIA ADELANTE ' PRINT*,' PARA UN VALOR INTERMEDIO QUE NO ESTA EN LA TABLA' PRINT*, '=====================================================' PRINT*,'INGRESE EL VALOR DE M' READ*,M PRINT*,'' PRINT*,'INGRESE LOS VALORES DE XI' DO I=0,M READ*,X(I) END DO PRINT*,'' PRINT*,"INGRESE LOS VALORES DE FI" DO I=0,M READ*,F(I) END DO PRINT*,''
  • 64. PRINT*,'INGRESAR EL VALOR A EVALUAR' READ*,XI PRINT*,'' PRINT*,('*',I=1,79) PRINT '(5X,"RESULTADOS")' PRINT*,('*',I=1,79) H=X(1)-X(0) U=(XI-X(0))/H WRITE (*,9) H 9 FORMAT (2X,'H=',F12.2) WRITE (*,10) U 10 FORMAT (2X,'U=',F12.2/) SUMA1=0 IF(M.EQ.2)THEN GOTO 11 K=0 11 SUMA1=SUMA1+(F(K+1)-F(K))+((F(K+2)-2*F(K+1)+F(K))*((U**2-U)/2)*(1/U+1/(U- 1))) END IF IF(M.EQ.3)THEN GOTO 20 K=0 20 SUMA1=SUMA1+(F(K+1)-F(K))+((F(K+2)-2*F(K+1)+F(K))*((U**2- U)/2)*(1/U+1/(U-1)))+(F(K+3)-3*F(K+2)+3*F(K+1)-F(K))*((U**3- 3*U**2+2*U)/6)*(1/U+1/(U-1)+1/(U-2)) END IF IF(XI.NE.X(I))THEN ELSE END IF DFI=SUMA1/H WRITE(*,21) 21 FORMAT(2X,'LA PRIMERA DERIVADA ES:'/) PRINT '(F20.2/)',DFI END
  • 65.
  • 66. ” Año de la Promoción de la Industria Responsable y Compromiso Climático UNIVERSIDAD NACIONAL DEL CALLAO FACULTAD DE CIENCIAS NATURALES Y MATEMÁTICA FÍSICA TEÓRICA COMPUTACIONAL I “APLICACIÓN CON LA FÓRMULA DE APROXIMACIÓN DST (U≠ 0)” ALUMNO: MARCO ANTONIO ALPACA CHAMBA ESCUELA PROFESIONAL: FÍSICA Ciudad universitaria, 13 de Noviembre del 2014 Una barra está girando en un plano. La tabla muestra el ángulo Θ (radianes) a través del cual la barra toma varios valores en el instante t en segundos.
  • 67. Encontrar la velocidad angular de la barra cuando t = 0.7 segundos. SOLUCIÓN: Utilizando la fórmula: Por lo tanto la velocidad angular en t = 0.7 segundos es de 4.496 rad/s. PROGRAM DST PARAMETER (IDM=10) DIMENSION D(IDM,IDM),X(IDM), Y(IDM) REAL Z,S1,S2,P1,P2,VAL,Q,P,U,H,S,R,R1,S21,S3 INTEGER N,K PRINT*, '=====================================================' PRINT*,' DST FORMULA DE STIRLING ' PRINT*,'===================================================== ' PRINT*,'INGRESAR EL VALOR DE N, MULTIPLO DE 2' READ(5,*)N PRINT*,'' DO I=0,N PRINT*,'INGRESAR EL PUNTO',I+1 READ(5,*)X(I),Y(I) ENDDO PRINT*,'' DO 6 J=0,N D(0,J)=Y(J) 6 CONTINUE PRINT*,'' WRITE (*,*)'INGRESE EL VALOR A INTERPOLAR' READ (5,*) Z PRINT*,'' PRINT*,('*',I=1,79) PRINT '(5X,"RESULTADOS")' PRINT*,('*',I=1,79)
  • 68. DO 12 I=1,N DO 13 J=0,N-I D(I,J)=D(I-1,J+1)-D(I-1,J) 13 CONTINUE 12 CONTINUE PRINT*,'' PRINT*,'TABLA DE DIFERENCIAS CON H UNIFORME' PRINT*,'' DO I=0,N PRINT '(I3,10F9.3)',I+1,X(I),(D(I,J),J=0,N-I) ENDDO PRINT*,'' H=(X(2)- X(1)) K=((N+2)/2)-1 U=(Z-X(K))/H PRINT 100 100 FORMAT(5X,'H',19X ,'Z',17X,'K', 8X,'U') PRINT*,H,Z,K,U S1=0.0 P1=1.0 P1=P1*U DO L=1,K P=((D(2*(L-1)+1,K-L)+D(2*(L-1)+1,K -(L-1)))/2) S=P1*P P1=P1*(((U**2)-(L**2))/((2*L+1)*(2*L))) R1=0.0 DO I=1,(2*L-1) R1=R1+(1/(U-L+I)) ENDDO S1=S1+S*R1 ENDDO S2=0.0 P2=((U**2)/2) DO 30 M=1,K Q=(D(2*M,K-M)) S21=P2*Q P2=P2*(((U**2)-(M**2))/((2*M+2)*(2*M+1))) R2=0.0 DO J=1,(2*M-1) R2=R2+(1/(U-M+J)) ENDDO S2=S2+S21*R2 30 CONTINUE S3=0.0 P3=(U/2) DO 40 N=1,K R=(D(2*N,K-N)) S3=S3+P3*R P3=P3*(((U**2)-(N**2))/((2*N+2)*(2*N+1))) 40 CONTINUE VAL=(S1+S2+S3)*(1/H)
  • 69. PRINT*,'' PRINT*,'LA INTERPOLATION DE (',Z,')=',VAL PRINT*,'' STOP END ” Año de la Promoción de la Industria Responsable y Compromiso Climático
  • 70. UNIVERSIDAD NACIONAL DEL CALLAO FACULTAD DE CIENCIAS NATURALES Y MATEMÁTICA FÍSICA TEÓRICA COMPUTACIONAL I “APLICACIÓN CON LA FÓRMULA DE APROXIMACIÓN DST (U≠0)” ALUMNO: MARCO ANTONIO ALPACA CHAMBA ESCUELA PROFESIONAL: FÍSICA Ciudad universitaria, 20 de Noviembre del 2014
  • 71. El mecanismo de la figura mostrada tiene las dimensiones a = 100 mm, b = 120 mm, c = 150 mm, y d = 180 mm. Se puede demostrar por geometría que la relación entre los ángulos α y β es: Par un valor dado de alfa, puede resolverse esta ecuación trascendental para beta. Esto se hizo con α= 0°, 5°,10°,…, 30°, los resultados son: Si el segmento AB gira con una velocidad angular constante de 25 rad /s, al utilizar aproximaciones por diferencias finitas de O (h2) para tabular la velocidad angular dβ/dt del segmento BC contra α. Determinar la rapidez angular de BC en α=15° y en α =16° Solución. La rapidez angular de BC es: , donde dβ/dα se puede calcular a partir de aproximaciones en diferencias finitas utilizando los datos de la tabla. Tenga en cuenta que el incremento de α es: Los cálculos conducen a:
  • 72. El conjunto completo de resultados es: Por lo tanto la velocidad de BC cuando α= 15 grados sexagesimales es de -35.44 rad/s USANDO LA FÓRMULA DE APROXIMACIÓN DST (U=0) TENEMOS: PROGRAM DST PARAMETER (IDM=10) DIMENSION D(IDM,IDM),X(IDM), Y(IDM) REAL Z,S1,P1,VAL,VAL1,P,U,H INTEGER N,K PRINT*, '=====================================================' PRINT*,' DST FORMULA DE STIRLING U=0 ' PRINT*,'===================================================== ' PRINT*,'INGRESAR EL VALOR DE N, MULTIPLO DE 2' READ(5,*)N PRINT*,'' DO I=0,N PRINT*,'INGRESAR EL PUNTO',I+1 READ(5,*)X(I),Y(I) ENDDO PRINT*,'' DO 6 J=0,N D(0,J)=Y(J) 6 CONTINUE PRINT*,'' WRITE (*,*)'INGRESE EL VALOR A INTERPOLAR' READ (5,*) Z PRINT*,'' PRINT*,('*',I=1,79) PRINT '(5X,"RESULTADOS")' PRINT*,('*',I=1,79) DO 12 I=1,N DO 13 J=0,N-I D(I,J)=D(I-1,J+1)-D(I-1,J) 13 CONTINUE 12 CONTINUE PRINT*,'' PRINT*,'TABLA DE DIFERENCIAS CON H UNIFORME' PRINT*,'' DO I=0,N PRINT '(I3,10F9.3)',I+1,X(I),(D(I,J),J=0,N-I) ENDDO PRINT*,'' H=((X(2)- X(1))*(3.141592/180)) K=((N+2)/2)-1 U=(Z-X(K))/H PRINT 100
  • 73. 100 FORMAT(5X,'H',19X ,'Z',17X,'K', 8X,'U') PRINT*,H,Z,K,U S1=0.0 P1=1.0 DO L=1,K P=((D(2*(L-1)+1,K-L)+D(2*(L-1)+1,K -(L-1)))/2) S1=S1+P1*P P1=P1*((-(L**2))/((2*L+1)*(2*L))) ENDDO VAL=(S1)*(1/H) VAL1=25*VAL PRINT*,'' PRINT*,'LA VELOCIDAD EN (',Z,')=',VAL1 PRINT*,'' STOP END
  • 74. PROGRAM DST PARAMETER (IDM=10) DIMENSION D(IDM,IDM),X(IDM), Y(IDM) REAL Z,S1,S2,P1,P2,VAL,VAL1,Q,P,U,H,S,R,R1,S21,S3 INTEGER N,K PRINT*, '=====================================================' PRINT*,' DST FORMULA DE STIRLING (U ≠ 0) ' PRINT*,'===================================================== ' PRINT*,'INGRESAR EL VALOR DE N, MULTIPLO DE 2' READ(5,*)N PRINT*,'' DO I=0,N PRINT*,'INGRESAR EL PUNTO',I+1 READ(5,*)X(I),Y(I) ENDDO PRINT*,'' DO 6 J=0,N D(0,J)=Y(J) 6 CONTINUE PRINT*,'' WRITE (*,*)'INGRESE EL VALOR A INTERPOLAR' READ (5,*) Z PRINT*,'' PRINT*,('*',I=1,79) PRINT '(5X,"RESULTADOS")' PRINT*,('*',I=1,79) DO 12 I=1,N DO 13 J=0,N-I D(I,J)=D(I-1,J+1)-D(I-1,J) 13 CONTINUE 12 CONTINUE PRINT*,'' PRINT*,'TABLA DE DIFERENCIAS CON H UNIFORME' PRINT*,'' DO I=0,N PRINT '(I3,10F9.3)',I+1,X(I),(D(I,J),J=0,N-I) ENDDO PRINT*,'' H=((X(2)- X(1))*(3.141592/180)) K=((N+2)/2)-1 U=((Z-X(K))/H)*(3.141592/180) PRINT 100 100 FORMAT(5X,'H',19X ,'Z',17X,'K', 8X,'U') PRINT*,H,Z,K,U S1=0.0 P1=1.0 P1=P1*U DO L=1,K P=((D(2*(L-1)+1,K-L)+D(2*(L-1)+1,K -(L-1)))/2) S=P1*P P1=P1*(((U**2)-(L**2))/((2*L+1)*(2*L)))
  • 75. R1=0.0 DO I=1,(2*L-1) R1=R1+(1/(U-L+I)) ENDDO S1=S1+S*R1 ENDDO S2=0.0 P2=((U**2)/2) DO 30 M=1,K Q=(D(2*M,K-M)) S21=P2*Q P2=P2*(((U**2)-(M**2))/((2*M+2)*(2*M+1))) R2=0.0 DO J=1,(2*M-1) R2=R2+(1/(U-M+J)) ENDDO S2=S2+S21*R2 30 CONTINUE S3=0.0 P3=(U/2) DO 40 N=1,K R=(D(2*N,K-N)) S3=S3+P3*R P3=P3*(((U**2)-(N**2))/((2*N+2)*(2*N+1))) 40 CONTINUE VAL=(S1+S2+S3)*(1/H) VAL1=25*VAL PRINT*,'' PRINT*,'LA INTERPOLATION DE (',Z,')=',VAL PRINT*,'' PRINT*,'POR LO TANTO, LA VELOCIDAD ANGUALAR EN(',Z,')=',VAL1 PRINT*,'' STOP END
  • 76.
  • 77. ” Año de la Promoción de la Industria Responsable y Compromiso Climático UNIVERSIDAD NACIONAL DEL CALLAO FACULTAD DE CIENCIAS NATURALES Y MATEMÁTICA FÍSICA TEÓRICA COMPUTACIONAL I “APLICACIÓN CON LA FÓRMULA DE APROXIMACIÓN DST (U=0)” ALUMNO: MARCO ANTONIO ALPACA CHAMBA ESCUELA PROFESIONAL: FÍSICA Ciudad universitaria, 20 de Noviembre del 2014 El mercurio se dilata con la temperatura de forma que 135.9508 g de este elemento ocupan a diferentes temperaturas los volúmenes que se indican en la tabla siguiente.
  • 78. Sabiendo que el coeficiente de expansión cúbica (α en K-1) se define como: 𝛼 = 1 𝑉 ∗ ( 𝑑𝑉 𝑑𝑇 ) Determinar dicho coeficiente de expansión cúbica del mercurio a 240 °C SOLUCIÓN: EL problema pide calcular una derivada en un punto tabular de una tabla equiespaciada para obtener el valor de una magnitud, aplicaremos el método de Stirling de DST (u=0). 𝐹2𝑛 ′ ( 𝑥 𝑘) = 1 ∆𝑥 ∑ 𝜇𝛿2𝑡−1 𝑓𝑘(−1) 𝑡−1 (( 𝑡 − 1)!)2 (2𝑡 − 1)! 𝑛 𝑡=1 Desarrollando obtenemos, que el coeficiente de expansión lineal del mercurio a 240 °C es 1.82664 10-4. PROGRAM DST PARAMETER (IDM=10) DIMENSION D(IDM,IDM),X(IDM), Y(IDM) REAL Z,S1,P1,VAL,VAL1,P,U,H INTEGER N,K PRINT*, '=====================================================' PRINT*,' DST FORMULA DE STIRLING U=0 ' PRINT*,'===================================================== ' PRINT*,'INGRESAR EL VALOR DE N, MULTIPLO DE 2' READ(5,*)N PRINT*,'' DO I=0,N PRINT*,'INGRESAR EL PUNTO',I+1 READ(5,*)X(I),Y(I) ENDDO PRINT*,'' DO 6 J=0,N D(0,J)=Y(J) 6 CONTINUE PRINT*,'' WRITE (*,*)'INGRESE EL VALOR A INTERPOLAR' READ (5,*) Z PRINT*,'' PRINT*,('*',I=1,79)
  • 79. PRINT '(5X,"RESULTADOS")' PRINT*,('*',I=1,79) DO 12 I=1,N DO 13 J=0,N-I D(I,J)=D(I-1,J+1)-D(I-1,J) 13 CONTINUE 12 CONTINUE PRINT*,'' PRINT*,'TABLA DE DIFERENCIAS CON H UNIFORME' PRINT*,'' DO I=0,N PRINT '(I3,10F9.3)',I+1,X(I),(D(I,J),J=0,N-I) ENDDO PRINT*,'' H=(X(2)- X(1)) K=((N+2)/2)-1 U=(Z-X(K))/H PRINT 100 100 FORMAT(5X,'H',19X ,'Z',17X,'K', 8X,'U') PRINT*,H,Z,K,U S1=0.0 P1=1.0 DO L=1,K P=((D(2*(L-1)+1,K-L)+D(2*(L-1)+1,K -(L-1)))/2) S1=S1+P1*P P1=P1*((-(L**2))/((2*L+1)*(2*L))) ENDDO VAL=(S1)*(1/H) VAL1=VAL*(1/(D(0,K))) PRINT*,'' PRINT*,'LA INTERPOLATION DE (',Z,')=',VAL PRINT*,'' PRINT*,'POR LO TANTO ,EL COEFICIENTE LINEAL ES:',VAL1 PRINT*,'' STOP END
  • 80.
  • 81. ” Año de la Promoción de la Industria Responsable y Compromiso Climático UNIVERSIDAD NACIONAL DEL CALLAO FACULTAD DE CIENCIAS NATURALES Y MATEMÁTICA FÍSICA TEÓRICA COMPUTACIONAL I “APLICACIÓN DE LA INVERSA Y DEL DETERMINANTE DE UNA MATRIZ.” ALUMNO: MARCO ANTONIO ALPACA CHAMBA ESCUELA PROFESIONAL: FÍSICA Ciudad universitaria, 25 de Septiembre del 2014 Producción de automóviles
  • 82. Resolver el problema siguiente mediante el uso de la inversa de la matriz implicada. Una fábrica de automóviles produce dos modelos, A y B. El modelo A requiere 1 hora de mano de obra para pintarlo y 1/2 hora de mano de obra para pulirlo; el modelo B requiere 1 hora de mano de obra para cada proceso. Durante cada hora en que la línea de ensamblado está funcionando, existen 100 horas de mano de obra disponibles para el pintado y 80 horas de mano de obra para el pulido. ¿Cuántos de cada modelo pueden producirse cada hora si todas las horas de mano de obra han de ser utilizadas? SOLUCIÓN: Sea x=el número de automóviles de modelo A, y=el número de automóviles de modelo B. El sistema de ecuaciones es: Sea la matriz A Por lo tanto 40 del modelo A y 60 del modelo B pueden producirse. Usando el método de eliminación de Gauss y sustitución regresiva tenemos:
  • 83.
  • 84. PROGRAM MATRIZ_INVERSA REAL :: A(100,100),B(100,100) PRINT*,'' PRINT*,'INVERSA DE UNA MATRIZ POR EL METHOD DE GAUSS ELIMINATION' PRINT*,'Y SUSTITUCION REGRESIVA' PRINT*,"" PRINT*,'INGRESE EL ORDEN (N) DEL SISTEMA' READ*,N PRINT*,'' PRINT*,'INGRESE LAS COMPONENTES DE LA MATRIZ A' DO I=1,N READ*,(A(I,J),J=1,N) END DO PRINT*,'' PRINT*,('*',I=1,79) PRINT '(5X,"RESULTADO")' PRINT*,('*',I=1,79) DO 20 I=1,N DO 10 J=1,N 10 B(I,J)=0.0 20 B(I,I)=1.0 DO 80 K=1,N C=A(K,K) IF (C==0.0) PRINT*,K,K IF (C==0.0)STOP DO 30 J=K,N
  • 85. 30 A(K,J)=A(K,J)/C DO 40 J=1,K 40 B(K,J)=B(K,J)/C DO 70 I=1,N IF (I==K)GOTO 70 C=A(I,K) DO 50 J=K,N 50 A(I,J)=A(I,J)-C*A(K,J) DO 60 J=1,K 60 B(I,J)=B(I,J)-C*B(K,J) 70 CONTINUE 80 CONTINUE PRINT*,'' PRINT*,'LA MATRIZ INVERSA A^-1 ES' PRINT*,'' PRINT '(2F9.3)',((B(I,J),J=1,N),I=1,N) PRINT*,'' END Resolviendo el mismo problema mediante el uso del determinante de la matriz implicada. Resolviendo el sistema siguiente utilizando la regla de Cramer. Solución El determinante de la matriz de coeficiente es
  • 86. Ya que el determinante es diferente de cero, existe una solución única. Si resolvemos para x, reemplazamos la primera columna de la matriz de coeficientes por la columna de constantes y obtenemos: Así 40 del modelo A y 60 del modelo B pueden producirse. UTILIZANDO EL MÉTODO DE ELIMINACIÓN DE GAUSS PARA CALCULAR EL DETERMINANTE TENEMOS:
  • 87. PROGRAM DETERMINANTE REAL :: A(10,10),E(10,10,10),T PRINT*,'' PRINT*,'EL NUMBER DE ECUACIONES ES:' READ*,N PRINT*,'' PRINT*,'INGRESAR ELEMENTOS DE LA MATRIZ A POR FILAS' DO J=1,N READ*,(A(J,I),I=1,N) END DO PRINT*,'' PRINT*,('*',I=1,79) PRINT '(5X,"RESULTADO")' PRINT*,('*',I=1,79) M=0 DO J=1,N DO I=1,N E(M,J,I)=A(J,I) END DO END DO DO M=1, N-1 DO J=1,M DO I=1,N E(M,J,I)=E(M-1,J,I) END DO END DO DO I=M+1,N DO J=1,N E(M,I,J)=E(M-1,I,J)-E(M-1,I,M)*E(M-1,M,J)/E(M-1,M,M) END DO END DO END DO PRINT*,('',I=1,70) WRITE(*,*)' LA MATRIZ DIAGONALIZADA ES:' PRINT*,'' PRINT '(2F9.3)',((E(N-1,I,J),J=1,N),I=1,N) T=E(N-1,1,1) DO I=2,N T=T*E(N-1,I,I) END DO PRINT*,'' PRINT*,'EL VALOPR DEL DETERMINANTE ES:' PRINT '(F20.3)',T PRINT*,'' END
  • 88.
  • 89. ” Año de la Promoción de la Industria Responsable y Compromiso Climático UNIVERSIDAD NACIONAL DEL CALLAO FACULTAD DE CIENCIAS NATURALES Y MATEMÁTICA FÍSICA TEÓRICA COMPUTACIONAL I “MÉTODO DE JACOBI Y GAUSS SEIDEL.” ALUMNO: MARCO ANTONIO ALPACA CHAMBA ESCUELA PROFESIONAL: FÍSICA Ciudad universitaria, 04 de Setiembre del 2014 PROBLEMA
  • 90. MÉTODO DE JACOBI En la figura mostrada el instante en que la esfera atada a una cuerda es soltada. Posteriormente esta esfera choca frontal e inelásticamente contra de mayor masa en reposo. Hallar el valor de la velocidad de cada esfera después del choque. Datos g=10m/s2 L=40cm E=0,5 M=4m Solución Analizando las velocidades: Antes del choque vo =velocidad de’ A’ antes del choque vBi =o , velocidad de B antes del choque Después del choque 𝑉⃗ 𝐴𝐹 Velocidad de A después del choque 𝑉⃗ 𝐵𝐹 Velocidad de B después del choque, como es un choque inelástico 𝑒 = | 𝑣𝑒𝑙𝑜𝑐𝑖𝑑𝑎𝑑 𝑟𝑒𝑙𝑎𝑡𝑖𝑣𝑎 𝑑𝑒 𝑎𝑙𝑒𝑗𝑎𝑚𝑖𝑒𝑛𝑡𝑜 𝑑𝑒𝑠𝑝𝑢𝑒𝑠 𝑑𝑒𝑙 𝑐ℎ𝑜𝑞𝑢𝑒 𝑣𝑒𝑙𝑜𝑐𝑖𝑑𝑎𝑑 𝑟𝑒𝑙𝑎𝑡𝑖𝑣𝑎 𝑑𝑒 𝑎𝑐𝑒𝑟𝑐𝑎𝑚𝑖𝑒𝑛𝑡𝑜 𝑎𝑛𝑡𝑒𝑠 𝑑𝑒𝑙 𝑐ℎ𝑜𝑞𝑢𝑒 | = 0,5 𝑉𝐴𝐹 + 𝑉𝐵𝐹 𝑉0 = 0,5 𝑉𝐴𝐹 + 𝑉𝐵𝐹 = 0,5𝑉0……(1) Por conservación de la cantidad de movimiento 𝑝 𝑎.𝑐ℎ⃗⃗⃗⃗⃗⃗⃗⃗⃗ = 𝑝 𝑑.𝑐ℎ⃗⃗⃗⃗⃗⃗⃗⃗⃗ 𝑚𝑣0⃗⃗⃗⃗ = 𝑀𝑣 𝐵𝐹⃗⃗⃗⃗⃗⃗ + 𝑚𝑣𝐴𝐹⃗⃗⃗⃗⃗⃗ mvo =4mvBF-mvFA v0=4vBF-vBA (2) HALLANDO v0 EM=energía mecánica EM(A)=EM(B) mgH= mvo2 Remplazando los datos vo =2m/s Entonces (1) y (2) 𝑉𝐴𝐹 + 𝑉𝐵𝐹 = 1𝑚/𝑠 4vBF - vBA = 2m/s Ordenando 𝑉𝐴𝐹 + 𝑉𝐵𝐹 = 1𝑚/𝑠 −𝑉𝐴𝐹 + 4𝑉𝐵𝐹 = 2𝑚/𝑠 Colocando los datos en forma matricial ( 1 1 −1 4 )( 𝑉𝐴𝐹 𝑉𝐵𝐹 ) = ( 1 2 ) Sean los vectores prueba 𝑋1 0 = 0,5 𝑋2 0 = 0,4 ( 1 1 −1 4 )( 𝑋1 1 𝑋2 1 ) = ( 1 2 ) TOL =0.06
  • 91. Primera interacción K=0 N=2 I=1 𝑎𝑖𝑖 𝑥 𝑖 𝑘+1 = 𝑏𝑖 − ∑ 𝑎𝑖𝑗 𝑥𝑗 𝑘 𝑁 𝐽≠𝑖=1 𝑎11 𝑥1= 1 𝑏1 − 𝑎12 𝑥2 0 (1)( 𝑥1 1 )=1-(1) (0,4) 𝑥1 1 =0,6 i=2 𝑎22 𝑥2 1 = 𝑏2 − 𝑎21 𝑥1 0 (4)( 𝑥2 1 ) =2-(-1)*(0,5) 𝑥2 1 =0,625 𝑥1 = ( 𝑥1 1 = 0,6 𝑥2 1 = 0,625 ) Analizando la convergencia | 0,6 0,625 − 0,5 0,4 | = 0,1 0,225 > TOL=0,06 Segunda interacción K=1 N=2 K=1 i=1 𝑎𝑖𝑖 𝑥 𝑖 𝑘+1 = 𝑏𝑖 − ∑ 𝑎𝑖𝑗 𝑥𝑗 𝑘 𝑁 𝐽≠𝑖 𝑎11 𝑥1= 2 𝑏1 − 𝑎12 𝑥2 1 (1)( 𝑥1 2 )=1-(1) (0,625) 𝑥1 2 =0,375 i=2 𝑎22 𝑥2 2 = 𝑏2 − 𝑎21 𝑥1 1 (4)( 𝑥2 1 ) =2-(1)(0,6) 𝑥2 2 =0,65 Analizando la convergencia | 0,375 0,65 − 0,6 0,625 | = 0,225 0,025 > TOL =0,06 Tercera interacción: K=2 N=2 K=2 i=1 𝑎𝑖𝑖 𝑥 𝑖 𝑘+1 = 𝑏𝑖 − ∑ 𝑎𝑖𝑗 𝑥𝑗 𝑘 𝑁 𝐽≠𝑖 𝑎11 𝑥1= 3 𝑏1 − 𝑎12 𝑥2 2 (1)( 𝑥1 3 )=1-(1) (0,65) 𝑥1 3 =0,35 i=2 𝑎22 𝑥2 3 = 𝑏2 − 𝑎21 𝑥1 2
  • 92. (4)( 𝑥2 3 ) =2-(-1)(0,375) 𝑥2 3 =0,59375 Analizando la convergencia | 0,35 0,59375 − 0,375 0,65 | = 0,025 0,05625 < TOL=0,06 Por lo tanto los valores finales son 𝑥3 = ( 𝑥1 3 = 0,35 𝑥2 3 = 0,59375 ) PROGRAM JACOBI IMPLICIT NONE INTEGER:: H,J,I,K,N CHARACTER(40)::R*30 REAL(4) TOL, A(100,100),B(100),X(100,100) REAL::SUMA,E PRINT*,'SOLUTION DE SISTEMAS DE E.L.' PRINT*,('',H=1,70) PRINT*,'INGRERSAR ORDEN DEL SISTEMA' READ*,N PRINT*,('',H=1,70) PRINT*,'INGRESAR TOLERANCIA' READ*, TOL PRINT*,('',H=1,70) PRINT*,'INGRESAR ELEMENTOS DE A' DO I=1,N READ(*,*)( A(I,J),J=1,N) ENDDO PRINT*,('',H=1,70) PRINT*,'INGRESAR ELEMENTOS DE B' DO I=1,N READ(*,*) B(I) ENDDO PRINT*,('',I=1,70) PRINT*,'INGRESAR VECTOR APROXIMADO X'
  • 93. K=1 DO I=1,N READ(*,*) X(K,I) ENDDO 10 DO I=1,N SUMA=0 DO J=1,N IF(J.EQ.I)THEN ELSE SUMA=SUMA+A(I,J)*X(K,J) ENDIF END DO X(K+1,I)=(B(I)-SUMA)/A(I,I) ENDDO !CONVERGENCIA DO I=1,N E=ABS(X(K+1,I)-X(K,I)) IF(E.LE.TOL)THEN ELSE K=K+1 GOTO 10 ENDIF ENDDO PRINT*,('',H=1,70) !PRESENTACIÓN R=' RESULTADOS' PRINT*,('*',H=1,70) PRINT*,('',H=1,20),R
  • 94. PRINT*,('*',H=1,70) PRINT*,'SOLUTION DEL SISTEMA' DO I=1,N PRINT*,X(K+1,I) ENDDO PRINT*,('',H=1,70) PRINT*,'APPROACH',E PRINT*,('',H=1,70) PRINT*,'NUMBER DE ITERACIONES',K PRINT*,('',H=1,70) END Problema 2 Método de relajación de Gauss -Seidel
  • 95. En el circuito mostrado; determine el valor de la corriente que pasa por cada malla En la malla I ∑ 𝜀 = ∑ 𝐼𝑅 (26-8)=I1 *(6) + (I1+I2)*18 4I1 + 3I2=3 ……………… (α) En la malla II ∑ 𝜀 = ∑ 𝐼𝑅 (26-8)=I2 *(9) + (I1+I2)*18 2I1 + 3I2=2 ……………. (β) Colocando los datos de forma matricial ( 4 3 2 3 )( 𝑖1 𝑖2 ) = ( 13 2 ) TOL =0,02 𝑋1 0 = 0,6 𝑋2 0 = 0,30 SOLUCIÓN:
  • 96. ( 4 3 2 3 )( 𝑋1 1 𝑋2 1 ) = ( 3 2 ) Primera interacción: K=0 N=2 i=1 𝑎𝑖𝑖 𝑥 𝑖 𝑘+1 + ∑ 𝑎𝑖𝑗 𝑥𝑗 𝑘 𝑁 𝐽 <𝑖 = 𝑏𝑖 − ∑ 𝑎𝑖𝑗 𝑥𝑗 𝑘 𝑁 𝐽>𝑖 𝑎11 𝑥1 1 + 0 = 𝑏1 − 𝑎12 𝑥2 0 4(𝑥1 1 ) =3-(3)*(0.30) 𝑥1 1 =0,525 i=2 𝑎22 𝑥2 1 + 𝑎21 𝑥1 1 = 𝑏2 − 𝑎21 𝑥1 1 3 (𝑥2 1 ) =2-(2)*(0,525) 𝑥2 1 =0,316 𝑥1 = ( 𝑥1 1 = 0,525 𝑥2 1 = 0,316 ) Analizando la convergencia | 0,525 0,316 − 0,6 0,30 | = 0,075 0,016 > TOL=0,02 Segunda interacción K=1 N=2 K=1 i=1 𝑎𝑖𝑖 𝑥 𝑖 𝑘+1 + ∑ 𝑎𝑖𝑗 𝑥𝑗 𝑘 𝑁 𝐽 <𝑖 = 𝑏𝑖 − ∑ 𝑎𝑖𝑗 𝑥𝑗 𝑘 𝑁 𝐽>𝑖 𝑎11 𝑥1 2 + 0 = 𝑏1 − 𝑎22 𝑥2 1 (4)(𝑥1 2 )=3-(3)*(0,316) 𝑥1 2 =0,513 i=2 𝑎22 𝑥2 2 + 𝑎21 𝑥1 2 = 𝑏2 − 0 (3)(𝑥2 2 ) =2-(2)*(0,513) 𝑥2 2 =0,324 Analizando la convergencia | 0,513 0,324 − 0,525 0,316 | = 0,012 0,008 < TOL=0,02 Por lo tanto los resultados finales son: 𝑥2 = ( 𝑥1 2 = 0,513 𝑥2 2 = 0,324 ) ! RELAJACION DE GAUSS SEIDEL (GSR)
  • 97. PROGRAM METODOGSR IMPLICIT NONE INTEGER:: H,J,I,K,N CHARACTER (40)::R*30 REAL (4) TOL, A (100,100), B (100), X(100,100) REAL:: E,SUMA1,SUMA2 PRINT*,'SOLUTION DE SISTEMAS DE E.L.' PRINT*,('',H=1,70) PRINT*,'INGRERSAR ORDEN DEL SISTEMA' READ*,N PRINT*,('',H=1,70) PRINT*,'INGRESAR TOLERANCIA' READ*, TOL PRINT*,('',H=1,70) PRINT*,'INGRESAR ELEMENTOS DE A' DO I=1,N READ (*,*)( A(I,J),J=1,N) ENDDO PRINT*,('',H=1,70) PRINT*,'INGRESAR ELEMENTOS DE B' DO I=1,N READ(*,*) B(I) ENDDO PRINT*,('',I=1,70) PRINT*,'INGRESAR VECTOR APROXIMADO X' K=1 DO I=1,N READ(*,*) X(K,I) ENDDO ! CÁLCULO NUMERICO 10 DO I=1,N SUMA1=0 DO J=1,N IF (J.GT.I) THEN
  • 98. SUMA1=SUMA1+A(I,J)*X(K,J) END IF END DO SUMA2=0 DO J=1,N IF(J.LT.I)THEN SUMA2=SUMA2+A(I,J)*X(K+1,J) END IF END DO X(K+1,I)=(B(I)-SUMA1-SUMA2)/A(I,I) END DO !CONVERGENCIA DO I=1,N E=ABS(X(K+1,I)-X(K,I)) IF(E.LE.TOL)THEN ELSE K=K+1 GOTO 10 ENDIF ENDDO PRINT*,('',H=1,70) ! PRESENTACIÓN R=' RESULTADOS' PRINT*,('*',H=1,70) PRINT*,('',H=1,20),R PRINT*,('*',H=1,70) PRINT*,('',H=1,70) ! PRESENTACIÓN DE RESULTADOS WRITE(*,*) 'RESULTADO DE TODAS LAS ORDENES' DO I=1,K+1 WRITE(*,*) (X(I,J),J=1,N) END DO PRINT*,('',H=1,70) PRINT*,'SOLUTION DEL SISTEMA' DO I=1,N PRINT*,X(K+1,I)
  • 100. ” Año de la Promoción de la Industria Responsable y Compromiso Climático UNIVERSIDAD NACIONAL DEL CALLAO FACULTAD DE CIENCIAS NATURALES Y MATEMÁTICA CURSO DE FÍSICA TEÓRICA COMPUTACIONAL I “MODELO DE UNA BARRA CALENTADA CON INTERPOLACIÓN NGB.” ALUMNO: MARCO ANTONIO ALPACA CHAMBA ESCUELA PROFESIONAL: FÍSICA Ciudad universitaria, 23 de Octubre del 2014 MODELO DE UNA BARRA CALENTADA. Antecedentes.
  • 101. Las ecuaciones algebraicas lineales pueden surgir cuando modelan sistemas distribuidos. Por ejemplo, la Figura 1 muestra una barra larga y delgada ubicada entre dos paredes que se mantienen a temperaturas constantes. El calor fluye a través de la barra, así como entre la barra y el aire que lo rodea. Para el caso de estado estacionario, una ecuación diferencial basado en la conservación de calor puede ser escrito para ese sistema como: (1), donde T = temperatura (° C), x = distancia a lo largo de la barra (m), h '= un coeficiente de transferencia de calor entre la barra y el aire que lo rodea (m-2), y Ta = la temperatura del aire (° C). FIGURA 1 Una barra uniforme no aislada ubicada entre dos paredes de constante pero distinta temperatura. En la representación de diferencias finitas se emplean cuatro nodos interiores. Dados los valores de los parámetros, de las funciones forzadas, y de las condiciones de contorno, puede utilizarse el cálculo para desarrollar una solución analítica. Por ejemplo, si h'= 0,01, Ta = 20, T (0) = 40, y T (10) = 200, la solución es: (2). Aunque esto proporciona una solución aquí, el cálculo no funciona para todos estos problemas. En tales casos, los métodos numéricos proporcionan una alternativa valiosa. En este caso de estudio, utilizaremos diferencias finitas para transformar esta ecuación diferencial en un sistema tridiagonal de ecuaciones algebraicas lineales que puede resolverse fácilmente utilizando los métodos numéricos que se aprendieron en el curso. SOLUCIÓN. La ecuación (1) puede transformarse en un conjunto de ecuaciones algebraicas lineales al conceptualizar la barra como consistente en una serie de nodos. Por ejemplo, la barra de la figura. 1 se divide en seis nodos equidistantes. Dado que la barra tiene una longitud de 10, el espaciado entre nodos es Δx = 2. El cálculo era necesario para resolver la ecuación. (1) porque incluye una segunda derivada. Las aproximaciones en diferencias finitas proporcionan un medio para transformar las derivadas en formas algebraicas. Por ejemplo, la segunda derivada en cada nodo puede aproximarse como: , donde Ti designa la temperatura en el nodo i. Esta aproximación puede ser sustituida en la ecuación. (1) para dar:
  • 102. . Agrupando términos y sustituyendo los parámetros se obtiene: (3). Por lo tanto, la ecuación. (1) se ha transformado de una ecuación diferencial en una ecuación algebraica. La ecuación (3) puede ahora ser aplicada a cada uno de los nodos interiores: (4). Los valores de las temperaturas fijas en los extremos, T0 = 40 y T5 = 200, pueden ser sustituidos y ser movidos a la parte derecha. Los resultados son cuatro ecuaciones con cuatro incógnitas expresadas en forma matricial como (5). Así que nuestra ecuación diferencial original se ha convertido en un sistema equivalente de ecuaciones algebraicas lineales. En consecuencia, podemos utilizar las técnicas descritas en clase para resolver las temperaturas. Por ejemplo, usando el método de sobre relajación sucesiva en FORTRAN. FIGURA 2 Un gráfico de la temperatura frente a la distancia a lo largo de una barra calentada. Ambas soluciones numéricas (puntos) como analítica (líneas) se visualizan.
  • 103. Además de ser un sistema lineal, observe que la ecuación. (5) también es tridiagonal. Podemos utilizar un esquema de solución eficiente al igual que el método de sobre relajación sucesiva para obtener la solución: T (2)= 65.9698 T (4)= 93.7785 T (6)= 124.5382 T (8)= 159.4795 El sistema es tridiagonal porque cada nodo depende sólo de sus nodos adyacentes. Debido a que son numerados los nodos de forma secuencial, las ecuaciones que resultan son tridiagonales. Estos casos a menudo ocurren al resolver ecuaciones diferenciales basadas en leyes de conservación. USANDO EL MÉTODO DE INTERPOLACIÓN NGB TENEMOS: ! FÓRMULA DE INTERPOLACIÓN DE NEWTON GREGORY BACKWARD (NGB) PROGRAM INTERNGB REAL (4) X(-10:0),Y(-10:0),XI,YI,H,U,M,SUMA,FAC1,FAC2,IT,FI,FT,FIT WRITE (*,*) 'INGRESE EL VALOR DE M' READ (*,*) M WRITE (*,*) 'INGRESE LOS VALORES DE XI' DO I=-M,0 READ(*,*) X(I) END DO WRITE (*,*) 'INGRESE LOS VALORES DE YI' DO I=-M,0 READ(*,*) Y(I) END DO WRITE (*,*) 'INGRESE EL VALOR A INTERPOLAR' READ (*,*) XI H=X(0)-X(-1)
  • 104. U=(XI-X(0))/H SUMA=0 DO I=1,M FI=1 DO J=1,I FI=FI*J END DO FAC1=U IF (I.GT.1) THEN DO J=2,I FAC1=FAC1*(U+J-1) END DO END IF FAC1=FAC1/FI FAC2=0 DO T=0,I IF (T.EQ.0) THEN FT=1 ELSE FT=1 DO J=1,T FT=FT*J END DO END IF FIT=I-T IF (FIT.EQ.0) THEN FIT=1 ELSE FIT=1 DO J=1,(I-T) FIT=FIT*J END DO END IF IT=FI/(FT*FIT) IF (I.EQ.1) THEN FAC2=Y(0)-Y(-1) ELSE FAC2=FAC2+(-1)**(T)*IT*Y(T-I) END IF END DO SUMA=SUMA+FAC1*FAC2 END DO YI=Y(0)+SUMA WRITE (*,*) YI END PROGRAM
  • 105.
  • 106. ” Año de la Promoción de la Industria Responsable y Compromiso Climático UNIVERSIDAD NACIONAL DEL CALLAO FACULTAD DE CIENCIAS NATURALES Y MATEMÁTICA FÍSICA TEÓRICA COMPUTACIONAL I “APLICACIÓN CON EL MÉTODO DE NUMEROV PARA EDO DE ORDEN SUPERIOR” ALUMNO: MARCO ANTONIO ALPACA CHAMBA ESCUELA PROFESIONAL: FÍSICA Ciudad universitaria, 20 de Noviembre del 2014
  • 107. Enunciado del problema: Si el bloque está sometido a la fuerza impresa F= F0cosωt, las leyes básicas de la física dan lugar a la ecuación diferencial de movimiento: , donde F0/m=16, ω=8, k/m=64 e y se mide desde la posición de equilibrio del bloque, usando el método de Numerov con h=0.1 resolver el problema de valores iniciales y(0)=0.0,y(0.1) =0.07174, t Є (0,0.3) SOLUCIÓN: Reemplazando los datos tenemos: 𝑑2 𝑦 𝑑𝑡2 = −64𝑦 + 16𝑐𝑜𝑠8𝑡 Usando el método de Numerov: 𝑦 𝑛+1 = [2𝑦 𝑛 𝐵 − 𝑦 𝑛−1 𝐶 + 𝐷] 1 𝐴 Siendo g(t)=64+0.0t , s(t)=16cos8t Usando fortran 90 tenemos: PROGRAM NUMEROV PARAMETER (IDM=100) DIMENSION X(IDM), Y(IDM) REAL H,NP,A,B,C,D PRINT*,''
  • 108. PRINT*, '================================================================== ===' PRINT*,'METHOD DE NUMEROV PARA EDOS DE SEGUNDO ORDEN CON CONDICIONES INICIALES' PRINT*,'============================================================ ==========' PRINT*,'' PRINT*,'INGRESAR EL NUMERO DE PUNTOS NP' READ(5,*)NP PRINT*, 'INGRESAR LOS VALORES INICIALES X0 E Y0' READ*, X(0),Y(0) PRINT*, 'INGRESAR LOS VALORES INICIALES X1 E Y1' READ*, X(1),Y(1) PRINT*, 'INGRESAR H' READ*, H PRINT*,'' PRINT*,('*',I=1,79) PRINT '(5X,"RESULTADOS")' PRINT*,('*',I=1,79) PRINT*,'' PRINT 100 100 FORMAT(11X,'N',12X ,'X(N)',13X,'Y(N)') DO N=1,NP X(N+1)=X(N)+H A=1+(G(X(N+1))*H**2)/12 B=1-(G(X(N))*H**2)*5/12 C=1+(G(X(N-1))*H**2)/12 D=((S(X(N+1))+10*S(X(N))+S(X(N-1)))/12)*H**2 Y(N+1)=(2*Y(N)*B-Y(N-1)*C+D)/A PRINT*,N+1,X(N+1),Y(N+1) END DO PRINT*,'' END PROGRAM FUNCTION G(X) G=64+0*X RETURN END FUNCTION FUNCTION S(X) S=16*COS(8*X) RETURN END FUNCTION
  • 109.
  • 110. ” Año de la Promoción de la Industria Responsable y Compromiso Climático UNIVERSIDAD NACIONAL DEL CALLAO FACULTAD DE CIENCIAS NATURALES Y MATEMÁTICA FÍSICA TEÓRICA COMPUTACIONAL I “APLICACIÓN CON EL MÉTODO DE STORMER PARA EDO DE ORDEN SUPERIOR” ALUMNO: MARCO ANTONIO ALPACA CHAMBA ESCUELA PROFESIONAL: FÍSICA Ciudad universitaria, 20 de Noviembre del 2014
  • 111. Enunciado del problema: Considere un sistema mecánico de un solo grado de libertad en el que un resorte con constante de resorte k restaura una masa m desplazada. La amortiguación se supone que es proporcional a la velocidad, y la función F(t) es una fuerza externa. La ecuación de movimiento para este sistema puede escribirse como: , donde m=2 kg, c=5, k=3 y F(t)=45exp(2t) con X(0)=2 y X(0.05)=2.0875 SOLUCIÓN: Reemplazando los datos tenemos: 2X”(t)-5X’(t)-3X(t)=45exp(2t) con X(0)=2 y X(0.05)=2.0875 Usando el método de Stormer: 𝑥 𝑛+1 = 2𝑥 𝑛 − 𝑥 𝑛−1 + [45 exp(2𝑡) + 2.5𝑑𝑥 𝑑𝑡 + 1.5𝑥] (∆𝑡2) Usando fortran 90 tenemos: PROGRAM STORMER_VERLET PARAMETER (IDM=100) DIMENSION X(IDM), ZF(IDM) REAL H,NP,DZ,B,EE PRINT*,'' PRINT*, '================================================================== ===' PRINT*,'METHOD DE NUMEROV PARA EDOS DE SEGUNDO ORDEN CON CONDICIONES INICIALES' PRINT*,'============================================================ ==========' PRINT*,'' PRINT*,'INGRESAR EL NUMERO DE PUNTOS NP' READ(5,*)NP
  • 112. PRINT*, 'INGRESAR LOS VALORES INICIALES X0 E Y(X0)' READ*, X(0),ZF(0) PRINT*, 'INGRESAR LOS VALORES INICIALES X1 E Y(X1)' READ*, X(1),ZF(1) PRINT*, 'INGRESAR H' READ*, H PRINT*, 'INGRESAR LA TOL' READ*, ER PRINT*,'' PRINT*,('*',I=1,79) PRINT '(5X,"RESULTADOS")' PRINT*,('*',I=1,79) PRINT*,'' PRINT 100 100 FORMAT(11X,'N',12X ,'X(N)',13X,'ZF(N)') DO N=1,NP A=ZF(N) X(N+1)=X(N)+H 10 DZ=0.5*(A-ZF(N-1))/H B=F(X(N),ZF(N),DZ) ZF(N+1)=2*ZF(N)-ZF(N-1)+B*H**2 EE=ABS(ZF(N+1)-A) !ERROR ENCONTRADO IF (EE.GT.ER) THEN A=(ZF(N+1)+A)/2 GOTO 10 END IF WRITE (*,*) N+1,X(N+1),ZF(N+1) END DO PRINT*,'' END PROGRAM FUNCTION F(X,Y,Z) F=2.5*Z+1.5*Y+22.5*(EXP(2*X)) RETURN END FUNCTION
  • 113.
  • 114. ” Año de la Promoción de la Industria Responsable y Compromiso Climático UNIVERSIDAD NACIONAL DEL CALLAO FACULTAD DE CIENCIAS NATURALES Y MATEMÁTICA FÍSICA TEÓRICA COMPUTACIONAL I “SOBRE RELAJACIÓN SUCESIVA MATRIX INVERSA, DETERMINANTE.” ALUMNO: MARCO ANTONIO ALPACA CHAMBA ESCUELA PROFESIONAL: FÍSICA Ciudad universitaria, 11 de Septiembre del 2014
  • 115. UNA ESFERA MACIZA DE RADIO 𝑹 = 𝟐𝟎 𝒄𝒎 Y MASA 𝑴 = 𝟑𝒌𝒈, ESTÁ EN REPOSO SOBRE UN PLANO INCLINADO DE ÁNGULO 𝜽 = 𝟑𝟎°, SOSTENIDA POR UNA CUERDA HORIZONTAL TAL Y COMO MUESTRA LA FIGURA. SOLUCIÓN: De las condiciones de equilibrio: 𝑵𝒔𝒆𝒏𝟑𝟎° = 𝑻 + 𝒇 𝒓 𝒄𝒐𝒔𝟑𝟎°…(𝟏) 𝑵𝒄𝒐𝒔𝟑𝟎° + 𝒇 𝒓 𝒔𝒆𝒏𝟑𝟎° = 𝟑𝟎… (𝟐) Y de la suma de momentos 𝑻. 𝑹 − 𝒇 𝒓. 𝒓 = 𝟎 → 𝑻 = 𝒇 𝒓 …(𝟑) Así de (3) en (2) y (1): √ 𝟑 𝟐 𝑵 + 𝟏 𝟐 𝑻 = 𝟑𝟎 𝟏 𝟐 𝑵 − 𝟐 + √ 𝟑 𝟐 𝑻 = 𝟎 Si resolvemos el sistema de forma analítica obtendremos: 𝒙 𝟏 = 𝑵 = 𝟑𝟎, 𝒙 𝟐 = 𝑻 = 𝟖. 𝟎𝟑𝟖𝟒 . Ahora resolveremos este sistema de ecuaciones utilizando el método de Sobre Relajación Sucesiva, cuya fórmula numérica es: 𝒂𝒊𝒊 𝒙𝒊 𝒌+𝟏 = 𝒘𝒃𝒊 − ∑ 𝒂𝒊𝒋 𝒙𝒋 𝒌 𝑵 𝒋>𝒊 − ∑ 𝒂𝒊𝒋 𝒙𝒋 𝒌+𝟏 𝑵 𝒋<𝒊 + (𝟏 − 𝒘)∑ 𝒂𝒊𝒋 𝒙𝒋 𝒌 𝑵 𝒋=𝟏 De nuestro sistema de ecuaciones identificamos las matrices: 𝔸 = ( 𝟎. 𝟖𝟔𝟖𝟓 𝟎. 𝟓 𝟎. 𝟓 −𝟏. 𝟖𝟔𝟔 ); 𝔹 = ( 𝟑𝟎 𝟎 ); 𝕏 𝟎 = ( 𝟑𝟎. 𝟖 𝟖. 𝟒 ) Trabajaremos con una tolerancia de 0.005 y w=0.75. Iniciando nuestro proceso de iteración:
  • 116. ! SOBRE RELAJACIÓN SUCESIVA PROGRAM METHOD_SRS IMPLICIT NONE INTEGER:: J,I,K,N CHARACTER (40)::R*30 REAL (4) TOL, A (100,100), B (100), X(100,100) REAL:: E,SUMA1,SUMA2,SUMA3,W PRINT*,'SOLUTION DE SISTEMAS DE E.L.' PRINT*,('',I=1,70) PRINT*,'INGRERSAR ORDEN DEL SISTEMA' READ*,N PRINT*,('',I=1,70) PRINT*,'INGRESAR TOLERANCIA' READ*, TOL PRINT*,('',I=1,70) PRINT*,'INGRESAR ELEMENTOS DE A' DO I=1,N READ (*,*)( A(I,J),J=1,N) ENDDO PRINT*,('',I=1,70) PRINT*,'INGRESAR ELEMENTOS DE B' DO I=1,N READ(*,*) B(I) ENDDO PRINT*,('',I=1,70) PRINT*,'INGRESAR VECTOR APROXIMADO X' k=1
  • 117. DO I=1,N READ(*,*) X(K,I) ENDDO PRINT*,('',I=1,70) PRINT*,'INGRERSAR EL VALOR DE W' READ*,W ! CÁLCULO NUMERICO 10 DO I=1,N SUMA1=0 DO J=1,N IF (J.GT.I) THEN SUMA1=SUMA1+A(I,J)*X(K,J) END IF END DO SUMA2=0 DO J=1,N IF(J.LT.I)THEN SUMA2=SUMA2+A(I,J)*X(K+1,J) END IF END DO SUMA3=0 DO J=1,N SUMA3=SUMA3+A(I,J)*X(K,J) END DO X(K+1,I)=(W*B(I)-SUMA1-SUMA2+(1-W)*SUMA3)/A(I,I) END DO !CONVERGENCIA DO I=1,N E=ABS(X(K+1,I)-X(K,I)) IF(E.LE.TOL) THEN ELSE K=K+1 GOTO 10 ENDIF ENDDO PRINT*,('',I=1,70) ! PRESENTACIÓN DE RESULTADOS PRINT*,('*',I=1,70) R=' RESULTADOS' PRINT*,('',I=1,20),R PRINT*,('',I=1,70) PRINT 100 100 FORMAT(2x,'k',17x ,'x1',18x,'x2') DO I=1,K+1 PRINT '(I3,2F20.3)',(I-1),(X(I,J),J=1,N) ENDDO PRINT*,('',I=1,70) PRINT*,('*',I=1,70) PRINT*,('',I=1,70) PRINT*, 'LUEGO DE', K, ' ITERACIONES la solution del sistema es:' PRINT*,('',I=1,70)
  • 118. DO I=1,N PRINT '(2F20.3)',X(K+1,I) ENDDO PRINT*,('',I=1,70) PRINT*,'CON UNA APPROACH DE:' PRINT '(E20.2)',E PRINT*,('',I=1,70) END
  • 119. ELABORAR LA CODIFICACIÓN EN FORTRAN PARA CALCULAR LA INVERSA DE LA MATRIZ A: A= 7 6 5 9 SOLUCIÓN PROGRAM MATRIZ_INVERSA IMPLICIT NONE INTEGER I,K,M,N,J CHARACTER(40)::R*30 REAL(4) A(10,10),ID(10,10),E(10,10,10,10),B(10,10),SUMA1 PRINT*,('',I=1,70) WRITE(*,*)'INGRESE EL ORDEN (N) DEL SISTEMA' READ(*,*)N WRITE(*,*)'INGRESE LAS COMPONENETES DE LA MATRIZ A' DO I=1,N READ(*,*) (A(I,J),J=1,N) END DO R=' RESULTADO' PRINT*,('*',I=1,70) PRINT*,('',I=1,20),R PRINT*,('*',I=1,70) DO K=1,N DO I=1,N DO J=1,N IF (I.EQ.J)THEN ID(I,J)=1 ELSE ID(I,J)=0 END IF END DO END DO DO M=1,N-1 DO I=1,N DO J=1,N+1 IF(J.EQ.N+1)THEN E(K,M-1,I,J)=ID(K,I) ELSE E(K,M-1,I,J)=A(I,J) END IF END DO END DO DO I=1,N DO J=1,N+1 E(K,M,I,J)=E(K,M-1,I,J) END DO END DO DO I=M+1,N DO J=1,N+1 E(K,M,I,J)=E(K,M-1,I,J)-A(I,M)*E(K,M-1,M,J)/A(M,M)
  • 120. END DO END DO END DO B(N,K)=E(K,N-1,N,N+1)/E(K,N-1,N,N) DO I=1,N SUMA1=0 DO J=I+1,N SUMA1=SUMA1+E(K,N-1,I,J)*B(J,K) END DO B(I,K)=(E(K,N-1,I,N+1)-SUMA1)/E(K,N-1,I,I) END DO END DO WRITE(*,*)'LA MATRIZ INVERSA ES:' DO I=1,N PRINT '(2F20.2)',(B(I,J),J=1,N) END DO PRINT*,('',I=1,70) END ELABORAR UNA CODIFICACIÓN PARA CALCULAR EL DETERMINANTE DE LA MATRIZ CUADRADA A: A= 3 5 7 2 4 9 6 5 4 SOLUCIÓN: PROGRAM DETERMINANTE IMPLICIT NONE INTEGER I,M,N,J CHARACTER(40)::R*30 REAL(4) E(10,10,10),DET PRINT*,('',I=1,70) WRITE(*,*)'INGRESE EL ORDEN (N) DEL SISTEMA' READ(*,*)N PRINT*,('',I=1,70) WRITE(*,*)'INGRESE LAS COMPONENETES DE LA MATRIZ A' DO I=1,N READ(*,*) (E(1,I,J),J=1,N) END DO R=' RESULTADOS' PRINT*,('*',I=1,70)
  • 121. PRINT*,('',I=1,20),R PRINT*,('*',I=1,70) DO M=2,N DO I=1,N DO J=1,N E(M,I,J)=E(M-1,I,J) END DO END DO DO I=M,N DO J=1,N E(M,I,J)=E(M-1,I,J)-E(M-1,I,M-1)*E(M-1,M-1,J)/E(M-1,M-1,M-1) END DO END DO END DO PRINT*,('',I=1,70) WRITE(*,*)' LA MATRIZ DIAGONALIZADA ES:' DO I=1,N PRINT '(3F20.2)',(E(N,I,J),J=1,N) END DO DET=1 DO I=1,N DET=DET*E(N,I,I) END DO PRINT*,('',I=1,70) WRITE(*,*)'EL VALOR DEL DETERMINANTE ES:' PRINT '(F20.2)',DET PRINT*,('',I=1,70) END
  • 122. ” Año de la Promoción de la Industria Responsable y Compromiso Climático UNIVERSIDAD NACIONAL DEL CALLAO FACULTAD DE CIENCIAS NATURALES Y MATEMÁTICA FÍSICA TEÓRICA COMPUTACIONAL I “APLICACIÓN CON EL MÉTODO DE STORMER PARA EDO DE ORDEN SUPERIOR” ALUMNO: MARCO ANTONIO ALPACA CHAMBA ESCUELA PROFESIONAL: FÍSICA Ciudad universitaria, 20 de Noviembre del 2014
  • 123. Enunciado del problema: Considere el circuito que se muestra en la figura 1.el cual consta de un inductor L, un resistor R y un capacitor C. Cuando se aplica un voltaje E(t), hace que una corriente de magnitud i fluya a través del circuito. Cuando la corriente fluye más allá del inductor la caída de voltaje es L(di/dt), cuando fluye a través del resistor la caída es Ri, y cuando llega al capacitor la caída es (1/C)q. Como la corriente no puede fluir más allá del capacitor, sólo es posible medir la carga q que actúa en el capacitor. Por lo tanto, las caídas de voltaje que ocurren a través del inductor, resistor y capacitor son Ld2q/dt2, Rdq/dt, y q//C, respectivamente. De acuerdo con la ley del voltaje de Kirchhoff, el voltaje aplicado es igual a la suma de caídas de voltaje alrededor del circuito. Por consiguiente, , donde E(t)=ωVpcosωt, R=1.0Ω, C=0.08F, L=0.0088H, Vp=4, f=1Hz, usando el método de Stormer con h=0.05 resolver el problema de valores iniciales i(0)=1.632 A, i(0.05) =1.813 A, con tol=0.05 Figura1 SOLUCIÓN: Reemplazando los datos tenemos: 𝑑2 𝑖 𝑑𝑡2 = 2854.55cos(6.283𝑥)− 113.636𝑑𝑖/𝑑𝑡 − 1420.454𝑦 Usando el método de Stormer: 𝑖 𝑛+1 = 2𝑖 𝑛 − 𝑖 𝑛−1 + [2854.55cos(6.283𝑥) − 113.636𝑑𝑖/𝑑𝑡 − 1420.454𝑦](∆𝑡2) Usando fortran 90 tenemos: PROGRAM STORMER_VERLET PARAMETER (IDM=100) DIMENSION X(IDM), ZF(IDM) REAL H,NP,DZ,B,EE PRINT*,'' PRINT*, '================================================================== ===' PRINT*,'METHOD DE NUMEROV PARA EDOS DE SEGUNDO ORDEN CON CONDICIONES INICIALES'
  • 124. PRINT*,'============================================================ ==========' PRINT*,'' PRINT*,'INGRESAR EL NUMERO DE PUNTOS NP' READ(5,*)NP PRINT*, 'INGRESAR LOS VALORES INICIALES X0 E Y(X0)' READ*, X(0),ZF(0) PRINT*, 'INGRESAR LOS VALORES INICIALES X1 E Y(X1)' READ*, X(1),ZF(1) PRINT*, 'INGRESAR H' READ*, H PRINT*, 'INGRESAR LA TOL' READ*, ER PRINT*,'' PRINT*,('*',I=1,79) PRINT '(5X,"RESULTADOS")' PRINT*,('*',I=1,79) PRINT*,'' PRINT 100 100 FORMAT(11X,'N',12X ,'X(N)',13X,'ZF(N)') DO N=1,NP A=ZF(N) X(N+1)=X(N)+H 10 DZ=0.5*(A-ZF(N-1))/H B=F(X(N),ZF(N),DZ) ZF(N+1)=2*ZF(N)-ZF(N-1)+B*H**2 EE=ABS(ZF(N+1)-A) !ERROR ENCONTRADO IF (EE.GT.ER) THEN A=(ZF(N+1)+A)/2 GOTO 10 END IF WRITE (*,*) N+1,X(N+1),ZF(N+1) END DO PRINT*,'' END PROGRAM FUNCTION F(X,Y,Z) F=2854.55*COS(6.283*X)-113.636*Z-1420.454*Y RETURN END FUNCTION