sábado, 25 de mayo de 2013

Matlab For Genius (introduccion a Matlab 8)


El objetivo de estas publicaciones es hacer una introducción lo mas siempre posible al uso de Matlab 8. Tratando de explicarlo lo mas simple posible, "con peras y manzanas", "por las piedritas". Ya que muchas  ocasiones en nuestras propias universidades  es necesario aprender muchas cosas antes de  empezar a hacer nada en matlab. Por lo que en estos pequeños post iremos a la parte practica y si es necesario conocer algún concepto lo explicaremos en el trayecto, así que empezamos.


Creación de arrays


>> %creando un vector
>> a = [1,3,5,6]

a =

     1     3     5     6

>> %creando una matris
>> b = [1,2,3;4,5,6;7,9,10]

b =

     1     2     3
     4     5     6
     7     9    10

Operaciones basicas  de arrays

>> %multiplicando un vector a por un escalar m
>> m = 0.5

m =

    0.5000

>> ma = a*m

ma =

    0.5000    1.5000    2.5000    3.0000

>> %multiplicando una matris por un escalar
>> mb = b*m

mb =

    0.5000    1.0000    1.5000
    2.0000    2.5000    3.0000
    3.5000    4.5000    5.0000

>> %tambien podemos hacer operaciones entre estas
>> %obteniendo el seno del vector 1
>> sena=sin(a)

sena =

    0.8415    0.1411   -0.9589   -0.2794
recordando un poco de calculo vectorial
>> binversa = inv(b)

binversa =

   -1.3333    2.3333   -1.0000
    0.6667   -3.6667    2.0000
    0.3333    1.6667   -1.0000

>> %para optener la matris identidad
>> bindentidad = b*binversa

bindentidad =

    1.0000         0    0.0000
    0.0000    1.0000         0
    0.0000   -0.0000    1.0000

sábado, 18 de mayo de 2013

Animacion de un pendulo en MAtlab



Código Fuente.


freqs  = 5:15;
num = numel(freqs);
lengths = 1./sqrt(freqs);
piover6 = pi/6;

figure
axis([-0.3 0.3 -0.5 0]);
axis off;
org=zeros(size(freqs));
xpos=zeros(size(freqs));
ypos=zeros(size(freqs));
pendula =  line([org;org],[org;org],'LineWidth',1,'Marker','.','MarkerSize',25 ...
                ,'Color',[0 0 0],'visible','off' );


vidObj = VideoWriter('pendula_wave.avi');
open(vidObj);

count =0;
for t=0:0.001:1
    count=count+1;
omegas = 2*pi*freqs*t;
xpos = sin(piover6*cos(omegas)).*lengths;
ypos = -cos(piover6*cos(omegas)).*lengths;

 for i=1:num
 set(pendula(i),'visible','on');
 set(pendula(i),'XData',[0 xpos(i)]);
 set(pendula(i),'YData',[0 ypos(i)]);
 drawnow
 end
 currFrame = getframe;
 writeVideo(vidObj,currFrame)

 F(i) = getframe;
end

close(vidObj);

sábado, 11 de mayo de 2013

Calculadora Cientifica en Maltlab

Aplicacion  de una  Calculadora Basica en Matlab con interfaz de usuario. 
D.E.S.C.A.R.G.A.R

Calculadora basica en Matlab

Desarrollando una pequeña interfaz de una calculadora basica en Matlab.