Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
clear clc //definir função function saida=f(y) saida=-3*y*exp((0.35*0.017*(1-y))/(1+0.35*(1-y))) endfunction //definir condição inicial z(1)=0 y1(1)=1 y2(1)=1 e1(1)=0 //definir deltaZ dz=0.005 //definir o n° de passos zf=2 //comprimento final N=int((zf-z(1))/dz) //avaliar ao longo dos passos for i=1:N k1=f(y1(i)) y1(i+1)=y1(i)+dz*k1 z(i+1)=z(i)+dz end //definir número de passos para y2 N=int((zf-z(1))/(2*dz)) //avaliar ao longo do passo 2*dz for i=1:N k1=f(y2(i)) y2(i+1)=y2(i)+2*dz*k1 e1(i+1)=abs(y2(i+1)-y1(2*i+1)) end //MÉTODO DE SEGUNDA ORDEM //definir numero de passos de y3 N=int((zf-z(1))/dz) //condição inicial para y3 y3(1)=1 e2(1)=0 //avaliar ao longo dos passos (dz) for i=1:N k1=f(y3(i)) k2=f(y3(i)+k1*dz) y3(i+1)=y3(i)+((dz/2)*(k1+k2)) e2(i+1)=abs(y3(i+1)-y1(i+1)) end disp (max(e1)) disp (max(e2))
Compartilhar