Está en la página 1de 5

Universidad Católica de Salta Cátedra: Análisis

Numérico
Facultad de Ingeniería e Informática
Alumno: Facundo, Figueroa Paz Sosa DNI: 39537093
Ingeniería Civil

Trabajo Práctico Nº 3
Tema: “Ecuaciones no lineales” Método de REGULA-FALSI

Actividades a realizar
a) Realizar el programa en FORTRAN, del siguiente algoritmo

1.-Datos : f,a,b,e,imax.
2.-ya=f(a);yb=f(b)
3.-si es signo (ya)=signo(yb), detener el proceso
4.- xpant b (xpanterior)
5.-para i=1,2,....imax iterar hasta el paso 11
6.-xp (a*yb-b*ya)/(yb-ya)
7.- xp xp-xpant; yp f(xp)
8.-salida opcional de resulatados parciales ;i,xp,yp, xp
9.- si es signo (yp)=signo(ya) entonces hacer a xp;ya f(ya);
de lo contrario hacer b xp;yb f(b).
10.-xpant xp
11.-si es xp <=e* xp ó es yp =0 producir salida
de resultados y detener el algoritmo.
12.-producir salida indicando que no se logró la precision
deseada e imax iteraciones.

b) utilizando el Algoritmo

Xp = ( a*f(b) - b*f(a) ) / ( f(b) - f(a) ) para el punto medio

b) Utilizar el siguiente ALGORITMO

Xp = ( a*f(b) - b*f(a) ) / ( f(b) - f(a) )

Para la Función

Y = x3 – 2*x2 - 2 = 0
Raíz = 2.3593
Universidad Católica de Salta Cátedra: Análisis
Numérico
Facultad de Ingeniería e Informática
Alumno: Facundo, Figueroa Paz Sosa DNI: 39537093
Ingeniería Civil

Código fuente

program regulafasi
real e,xa,xb,ya,yb,yp,xpant,dxp,signo
integer i, band
band=0
e=0.000001
i=0
xa=0
xb=0
print*, "Metodo de regulafalsi"
print*, "______________________"
print*, " "
write(*,"(a)",advance="no")"ingrese valor de cota inferior: "
read*, xa
write(*,"(a)",advance="no")"ingrese valor de cota superior: "
read*, xb
ya=formula(xa)
yb=formula(xb)
signo=ya*yb
if(signo<0)then
xpant=xb
do i=1,20
xp=(xa*yb-xb*ya)/(yb-ya)
dxp=xp-xpant
yp=formula(xp)
print*, "i",i
print*, "xp",xp
print*, "yp",yp
print*, "dxp",dxp
signo=yp*ya
if(signo>0)then
xa=xp
ya=formula(xa)
else
xb=xp
yb=formula(xb)
endif
xpant=xp
if(abs(dxp)<e*abs(xp).or.yp==0.00)then
print*, " "
print*, " "
print*, "la aproximacion es",xpant
Universidad Católica de Salta Cátedra: Análisis
Numérico
Facultad de Ingeniería e Informática
Alumno: Facundo, Figueroa Paz Sosa DNI: 39537093
Ingeniería Civil

band=1
exit
endif
enddo
endif
if(band==0)then
print*, "no se logro la precision deseada"
else
print*, " "
print*, "los resultados son"
print*, " i xp yp dxp "
print*, " "
print*, i,xp,yp,dxp
endif
endprogram regulafasi
real function formula(x)
real x
formula=(x*x*x)-2*(x*x)-2
end function

Salida:

Metodo de biseccion
______________________

ingrese valor de cota inferior: 2


ingrese valor de cota superior: 3
i 1
xp 2.22222
yp -0.902606
dxp -0.777778
i 2
xp 2.31106
yp -0.338649
dxp 8.883476E-02
i 3
xp 2.34285
yp -0.118122
dxp 3.179193E-02
i 4
xp 2.35375
yp -4.014667E-02
dxp 1.090503E-02
i 5
xp 2.35744
yp -1.352407E-02
dxp 3.685236E-03
Universidad Católica de Salta Cátedra: Análisis
Numérico
Facultad de Ingeniería e Informática
Alumno: Facundo, Figueroa Paz Sosa DNI: 39537093
Ingeniería Civil

i 6
xp 2.35868
yp -4.542004E-03
dxp 1.239061E-03
i 7
xp 2.35909
yp -1.524326E-03
dxp 4.158020E-04
i 8
xp 2.35923
yp -5.116958E-04
dxp 1.394749E-04
i 9
xp 2.35928
yp -1.723772E-04
dxp 4.673004E-05
i 10
xp 2.35930
yp -5.811183E-05
dxp 1.573563E-05
i 11
xp 2.35930
yp -2.002282E-05
dxp 5.245209E-06
i 12
xp 2.35930
yp -6.172207E-06
dxp 1.907349E-06

la aproximacion es 2.35930

los resultados son


i xp yp dxp

12 2.35930 -6.172207E-06 1.907349E-06

Press RETURN to close window . . .

Gráfico
Universidad Católica de Salta Cátedra: Análisis
Numérico
Facultad de Ingeniería e Informática
Alumno: Facundo, Figueroa Paz Sosa DNI: 39537093
Ingeniería Civil

30
x*x*x-2*x*x-2

25

20

15

10

-5
1 1.5 2 2.5 3 3.5 4

También podría gustarte