ejercicio1
% function b=bernstein(n,i,t) % b=combina(n,i)*t.^i .*(1-t).^(n-i); % end % % function c=combina(n,i) % c=factr(n)/(factr(i)*factr(n-i)); % end % % function f=factr(n) % if n==0 % f=1; % else % f=n*factr(n-1); % end % % end % % t=linspace(0,1,20); % n=3; % for i=0:3 % b=bernstein(n,i,t); % hold on % plot(t,b) % end % legend('b0','b1','b2','b3') % title('Gráfica de polinomios Bernstein n=3') t=linspace(0,1,100); V =[1, 2, 4, 4.6; 1, 3, -1, 1.5]; plot(V(1,:),V(2,:),'-o') n=size(V); n=n(2); s=size(t); x=zeros(n,s(2)); y=zeros(n,s(2)); for i=1:n x(i,:)=bernstein(n-1,i-1,t)*V(1,i); y(i,:)=bernstein(n-1,i-1,t)*V(2,i); end a=sum(x); b=sum(y); hold on plot(a,b) t=linspace(0,1,20); n=3; for i=0:3 b=bernstein(n,i,t); hold on plot(t,b) end legend('b0','b1','b2','b3') title('Gráfica de polinomios Bernstein n=3') hold off
ejercicio2A
figure(2)
[N,T,R]=xlsread('sotaventogaliciaanual.xlsx');
histogram(N,0:20)
ejercicio2 B
figure(3) [N,T,R]=xlsread('sotaventogaliciaanual.xlsx'); c0=std(N)^2; k0=mean(N); a0=[c0 k0]; y=histc(N,0:25); frec=y/sum(y); x=0:25; x=x'; f=@(a,x) (a(1)/a(2))*((x/a(2)).^(a(1)-1)).*exp(-(x/a(2)).^a(1)); af=nlinfit(x,frec,f,a0); x1=linspace(0,25); y1=f(af,x1); bar(0:25,frec) hold on plot(x1,y1)
ejercicio2 C
figure(4) [N,T,R]=xlsread('sotavento_curva potencia.xlsx'); v=N(:,1); p=N(:,2); x1=linspace(0,25); y1=interp1(v,p,x1,'pchip'); plot(v,p,'*') hold on plot(x1,y1)
ejercicio2 D
[N,T,R]=xlsread('sotaventogaliciaanual.xlsx'); k0=mean(N); c0=std(N)^2; B=0:25; y=histc(N,B); frec=y/sum(y); a0=[c0 k0]; x=0:25; x=x'; f=@(a,x) (a(1)/a(2))*((x/a(2)).^(a(1)-1)).*exp(-(x/a(2)).^a(1)); %distribución de weibull af=nlinfit(x,frec,f,a0); %función de potencia [N,T,R]=xlsread('sotavento_curva potencia.xlsx'); v=N(:,1); p=N(:,2); P=polyfit(v,p,3); g=@(x) f(af,x).*polyval(P,x); Potencia_Media=quad(g,0,10)
Potencia_Media = 197.2897
ejercicio3
m=20; k=20; c=5; c1=40; c2=200; xa=1; va=0; x0=[xa,va]; tf=40; f=@(t,x) [x(2);-c*x(2)/m-k*x(1)/m]; [t,x]=ode45(f,[0,tf],x0); plot(t,x(:,1)) grid on xlabel('t') ylabel('x') title('sistema masa-resorte-amortiguador') hold on f1=@(t,x) [x(2);-c1*x(2)/m-k*x(1)/m]; [t,x]=ode45(f1,[0,tf],x0); plot(t,x(:,1)) f2=@(t,x) [x(2);-c2*x(2)/m-k*x(1)/m]; [t,x]=ode45(f2,[0,tf],x0); plot(t,x(:,1))