Rincón Matemático

Matemática => Matemática Discreta y Algoritmos => Métodos Numéricos => Mensaje iniciado por: Bobby Fischer en 22 Marzo, 2020, 12:35 pm

Título: Cuadratura rectángulos
Publicado por: Bobby Fischer en 22 Marzo, 2020, 12:35 pm
Hola,

¿Alguien sabe cómo cambiar la transparencia de los rectángulos?

Código: [Seleccionar]
function [I]=bobby_85(n) % n=30; n=300;
p=1;
h=1/(n-1);
I=0;
x=0;
xv=linspace(0,1,n);
close(figure(1))
figure(1)
axis([0 1 0 1])
plot(xv,f(xv),'k')
hold on
for i=1:n-1
    I=I+h*f(x);
    figure(1)
    plot(x,f(x),'r.','MarkerSize',10)
    x=x+h;
    pause(3/n^p)
end
plot(1,f(1),'r.','MarkerSize',10)
pause(3/n^p)
x=0;
for i=1:n-1
    figure(1)
    plot([x x],[0 f(x)],'b')
    plot([x x+h],[f(x) f(x)],'b')
    pause(3/n^p)
    plot([x+h x+h],[0 f(x)],'b')
    pause(3/n^p)
    area([x x+h],[f(x) f(x)])
    x=x+h;
    pause(3/n^p)
end
title(['n=', num2str(n)])
text(0.1, 0.8, ['integral=',num2str(I,16)])
hold off
    function [y]=f(x)
        % y=exp(-x.^2);
        % y=x.*sin(x);
        % y=x+sin(x);
        % y=x;
        % y=x.^2;
        y=0.2+x.*sin(10*x);
    end
end

(https://foro.rinconmatematico.com/index.php?action=dlattach;topic=112727.0;attach=21768)
Título: Re: Cuadratura rectángulos
Publicado por: Bobby Fischer en 24 Marzo, 2020, 05:41 pm
Ya he dado con cómo se hace.

Código: [Seleccionar]
function [I]=bobby_85(n) % n=30; n=300;
p=1;
h=1/(n-1);
I=0;
x=0;
xv=linspace(0,1,n);
close(figure(1))
figure(1)
axis([0 1 0 1])
plot(xv,f(xv),'k')
hold on
for i=1:n-1
    I=I+h*f(x);
    figure(1)
    plot(x,f(x),'r.','MarkerSize',10)
    x=x+h;
    pause(3/n^p)
end
plot(1,f(1),'r.','MarkerSize',10)
pause(3/n^p)
x=0;
for i=1:n-1
    figure(1)
    plot([x x],[0 f(x)],'b')
    plot([x x+h],[f(x) f(x)],'b')
    pause(3/n^p)
    plot([x+h x+h],[0 f(x)],'b')
    pause(3/n^p)
    area([x x+h],[f(x) f(x)],'FaceColor','y','FaceAlpha',0.5)
    x=x+h;
    pause(3/n^p)
end
title(['n=', num2str(n)])
text(0.1, 0.8, ['integral=',num2str(I,16)])
hold off
    function [y]=f(x)
        % y=exp(-x.^2);
        % y=x.*sin(x);
        % y=x+sin(x);
        % y=x;
        % y=x.^2;
        y=0.2+x.*sin(10*x);
    end
end

(https://foro.rinconmatematico.com/index.php?action=dlattach;topic=112727.0;attach=21779)