error: index (2): out of bound 1
Publicado por Rodrigo (3 intervenciones) el 14/11/2020 06:01:52
Hola buenas, tengo que hacer un método de bisección en Octave y al compilar me arroja este error "error: index (2): out of bound 1" Called from "f at line 3 column 4" , como puedo solucionar esto?
El código que genera el método es:
La función está en este código:
El código en el que finalmente ejecuta todo lo anterior es este:
El código que genera el método es:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
function x=Biseccion(f,a,b,tol,N)
f=@f;
i=1;
a(1)=a;
b(1)=b;
x(1)=(a(1)+b(1))/2;
if f(a(1))*f(x(1))<0
a(2)=a(1);
b(2)=x(1);
else
a(2)=x(1);
b(2)=b(1);
endif
x(2)=(a(2)+b(2))/2;
while abs(x(i+1)-x(i))>tol && i<=N
if f(a(i+1))*f(x(i+1))<0
a(i+2)=a(i+1);
b(i+2)=x(i+1);
else
a(i+2)=x(i+1);
b(i+2)=b(i+1);
endif
x(2+i)=(a(2+i)+b(2+i))/2;
i=i+1;
endwhile
endfunction
La función está en este código:
1
2
3
4
5
function [y]= f(x)
f=@f;
y= (16240.943(x).^2)-(14413.857*(sqrt((4*(x).^2)+(12.6025))))+(51165.904);
endfunction
El código en el que finalmente ejecuta todo lo anterior es este:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
clc
clear
close all
f=@f;
a=2;
b=1;
N= 50;
tol= 0.001;
sol=Biseccion(f,a,b,tol,N)
figure
subplot(2,1,1)
plot(sol, "bo-")
Valora esta pregunta


0