0 Usuarios y 1 Visitante están viendo este tema.
function [v]=extremos_cantor(paso)% paso=n da un vector de longitud 2^(n+1) %clc, format ratv=[0 1];for n=1:paso u=zeros(2^(n+1),1); h=1/(3^n); for k=1:length(v) if mod(k,2)==0 u(2*k)=v(k); u(2*k-1)=v(k)-h; else u(2*k-1)=v(k); u(2*k)=v(k)+h; end end v=u;endend
function dibuja_cantor(paso)% paso=n da un vector de longitud 2^(n+1) %% dibuja hasta paso=n %clc, format ratv=[0 1];figure(1), close(1)figure(1)plot(v,[0 0],'b')hold onfor n=1:paso u=zeros(2^(n+1),1); h=1/(3^n); for k=1:length(v) if mod(k,2)==0 u(2*k)=v(k); u(2*k-1)=v(k)-h; else u(2*k-1)=v(k); u(2*k)=v(k)+h; end plot([u(2*k-1),u(2*k)],[n,n],'b') end v=u;endend
function dibuja_cantor_plano(paso)% paso=n da un vector de longitud 2^(n+1) %% dibuja hasta paso=n %clc, format ratv=[0 1];figure(1), close(1)figure(1)plot3([0 1 1 0 0],[0 0 1 1 0],[0 0 0 0 0],'b','LineWidth',1)hold onfor n=1:paso u=zeros(2^(n+1),1); h=1/(3^n); for k=1:length(v) if mod(k,2)==0 u(2*k)=v(k); u(2*k-1)=v(k)-h; else u(2*k-1)=v(k); u(2*k)=v(k)+h; end plot3([u(2*k-1),u(2*k),u(2*k),u(2*k-1),u(2*k-1)],... [u(2*k-1),u(2*k-1),u(2*k),u(2*k),u(2*k-1)],... [n,n,n,n,n],'b','LineWidth',1) end v=u;endend