Movimiento de un sistema de partículas (Grupo G9)
Contenido
- 1 Visualización de un sistema de partículas
- 2 Centro de masas de un sistema de particulas
- 3 Rotacion de un sistema de particulas
- 3.1 Matriz de componentes de una Rotación
- 3.2 Matriz Rotacion con eje ω=e3 y angulo θ= π/16
- 3.3 Visualizacion de un sistema de puntos rotados con eje ω=e3 y angulo θ= π/16
- 3.4 Calculo del tensor de rotacion de un sistema de puntos con ejes ω = e1, ω = e2, ω = e1+e2+e3 y angulo θ= π/16
- 3.5 Visualizacion de un sistema de puntos rotados con ejes ω = e1, ω = e2, ω = e1+e2+e3 y angulo θ= π/16
- 4 Velocidad de los puntos del sistema
- 5 VISUALIZACIÓN DE LOS VECTORES VELOCIDAD
- 6 Momento angular de un sistema de partículas
1 Visualización de un sistema de partículas
Para empezar a dibujar un sistema de partículas primero tenemos que generarlos. En nuestro caso, tenemos 21 partículas que inicialmente se encuentran en las coordenadas (xi ,yi ,zi) = (sin(π(i − 1)/10,cos(π(i − 1)/4), cos(π(i −1)/10), i = 1, 2, ..., 21 respecto a la base ortonormal {e1,e2,e3}. Supondremos que nuestras partículas están unidas por un alambre de masa despreciable de manera que su posición relativa no cambia.
t = (1:1:21);
for i = 1: length(t)
x(i) = sin(pi*(t(i)-1)/10);
y(i) = cos(pi*(t(i)-1)/4);
z(i) = cos(pi*(t(i)-1)/10);
end
hold on
plot3(x,y,z,'-x')
axis equal
axis ([-2,2,-2,2,-2,2])
hold off
2 Centro de masas de un sistema de particulas
2.1 Formula del centro de masas
En nuestro caso tenemos 21 particulas y cada particula tiene la misma masa mi=10. Para calcular el centro de masas hacemos uso de la formula de centro de masas : (∑inrimasai)/M donde Mtotal es la masa total (21×10=210),"masa" la masa de cada particula y ri= la distancia del punto al eje correspondiente x, y ó z. La funcion que usaremos es la siguiente;
masa = 10;
Mtotal = 21*masa;
X = zeros(1,21);
Y = zeros(1,21);
Z = zeros(1,21);
for i = 1:21
X(1,i) = masa*x(i);
Y(1,i) = masa*y(i);
Z(1,i) = masa*z(i);
end
X = sum(X);
Y = sum(Y);
Z = sum(Z);
XG = (X/Mtotal);
YG = (Y/Mtotal);
ZG = (Z/Mtotal);2.2 Visualicacion del centro de masas
A continuación mostraremos un grafico con la curva y su centro de masas:
%Representacion de la curva
t = (1:1:21);
x = (sin(pi*(t-1)/10));
y = (cos (pi*(t-1)/4));
z = cos(pi*(t-1)/10);
figure(1)
plot3(x,y,z,'-x')
axis equal
axis ([-2,2,-2,2,-2,2])
hold on
%Representación del centro de masas
masa = 10;
Mtotal = 21*masa;
X = zeros(1,21);
Y = zeros(1,21);
Z = zeros(1,21);
for i = 1:21
X(1,i) = masa*x(i);
Y(1,i) = masa*y(i);
Z(1,i) = masa*z(i);
end
XG = sum(X)/Mtotal;
YG = sum(Y)/Mtotal;
ZG = sum(Z)/Mtotal;
plot3(XG,YG,ZG,'.g','linewidth',5)
hold off
figure(2)
3 Rotacion de un sistema de particulas
3.1 Matriz de componentes de una Rotación
En primer lugar, vamos a calcular analíticamente la matriz de componentes de una rotación.
La fórmula de una rotación es:
donde w es el vector unitario:
Refiriéndonos a la base ortonormal {e1,e2,e3}, podemos expresar la rotación como:
Por lo que la matriz de componentes es:
3.2 Matriz Rotacion con eje ω=e3 y angulo θ= π/16
Para generar la matriz de rotacion necesitamos saber el eje y el angulo con el que queremos rotarlo. En nuestro caso estos valores seran eje ω=e3 y angulo θ= π/16. Para conseguir esta matriz hemos usado el siguiente codigo:
We3= [0,0,1];
mod = sqrt(sum(We3.^2));
We3 = We3./mod;
tt = pi/16;
% La Matriz de rotacion, R=cos(θ)I + (1-cos(θ)u×u +sin(θ)ux
R1=eye(3)*cos(tt); % Genera la matriz corespondiente a cos(θ)I
R2=kron(We3,We3')*(1-cos(tt)); % Genera la matriz corespondiete a (1-cos(θ)u×u
R3=[0 -We3(3) We3(2); We3(3) 0 -We3(1);-We3(2) We3(1) 0]*sin(tt); % Genera la matriz corespondiete a sin(θ)ux
R=R1+R2+R3; % Suma las matrices anteriores para calcula la matriz de rotacion
disp(R);
R3=R= [0.98079 -0.19509 0.00000 ;0.19509 0.98709 0.00000 ;0.00000 0.00000 1.00000]
3.3 Visualizacion de un sistema de puntos rotados con eje ω=e3 y angulo θ= π/16
Para poder entonces visualizar el sistema de puntos rotado tenemos que multiplicar cada coordenada de nuestras particulas por la matriz de rotacion. De esta manera conseguimos sistema de puntos rotado. (Los puntos azules son los iniciales, los puntos rojos son los rotados, el eje verde es el eje de giro)
R3=R=[0.98079 -0.19509 0.00000 ;0.19509 0.98709 0.00000 ;0.00000 0.00000 1.00000];
i=(1:10);
x=sin (pi*(i-1)/10); %Coordenadas x de las particulas segun i
y=cos(pi*(i-1)/4); %Coordenadas y de las particulas segun i
z=cos(pi*(i-1)/10); %Coordenadas z de las particulas segun i
f=[x;y;z]; % coordenadas de las particulas segun i
g=([x(i); y(i) ;z(i)]'*R3)'; % Rota las particulas
plot3(g(1,:),g(2,:),g(3,:),'o-','MarkerFaceColor','r') % Dibujar las particulas
hold on
plot3(x,y,z,'x-','MarkerFaceColor','y')
axis([-2,2,-2,2,-2,2]) % Ejes fijados en la region [-2,2]*[-2,2]*[-2,2]
hold off
3.4 Calculo del tensor de rotacion de un sistema de puntos con ejes ω = e1, ω = e2, ω = e1+e2+e3 y angulo θ= π/16
Si queremos ahora rotar los puntos con otro eje de giro usamos un procedimiento analogo al que hemos usado en el apartado 3.1 (usamos el mismo codigo) . Lo que tenemos que hacer es volver a calcular la matriz de rotacion. Para los ejes ω = e1, ω = e2 el procedimiento es casi identico, solo habria que cambiar el vector introducido por v=[1 0 0], v=[0 1 0] y v [1 1 1] respectivamente.
Asi pues, para no repetir el codigo utilizado en apartados anteriores, escribiremos directamente el tensor rotación obtenido para cada eje, siendo R1 para [1 0 0], R2 para [0 1 0] y R4 para [1 1 1].
R1=[1 0 0; 0 0.980785 -0.19509; 0 0.19509 0.980785]
R2=[0.980785 0 0.19509; 0 1 0; -0.19509 0 0.980785]
R4=[0.98719 -0.106231 0.11904; 0.11904 0.98719 -0.106231; -0.106231 0.11904 0.98719]
3.5 Visualizacion de un sistema de puntos rotados con ejes ω = e1, ω = e2, ω = e1+e2+e3 y angulo θ= π/16
Para poder ahora visualizar los sistemas de puntos rotados tenemos que multiplicar cada coordenada de nuestras particulas por cada matriz de rotacion como hizimos en el apartado 3.2 (usamos el mismo codigo) . De esta manera conseguimos sistema de puntos rotados. (Los puntos azules son los iniciales, los puntos rojos son los rotados, el eje verde es el eje de giro). PARA EVITAR LA REPETICIÓN DEL CODIGO, MOSTRAREMOS LAS GRAFICAS CORRESPONDIENTES.
4 Velocidad de los puntos del sistema
4.1 Relación entre la velocidad de los puntos del sistema con su posición mediante un tensor antisimétrico A
Supongamos ahora que el sistema gira alrededor de un eje genérico con vector de dirección unitario ϖ de manera que la variación angular viene dada por la función θ(t) donde t ∈ [0, π] es el tiempo.
En primer lugar, vamos a comprobar analíticamente que la velocidad de los puntos del sistema está relacionada con su posición mediante un tensor antisimétrico A, es decir:
Un tensor es antisimétrico si
En (1) A es la velocidad angular. Para demostrar que la velocidad angular de una rotación es un tensor antisimético, vamos a derivar la siguiente relación:
de donde se obtiene la matriz antisimétrica definida como:
que coincide con la definición de tensor velocidad angular.
4.2 Demostracción que el vector axial asociado a A es θ(t)ϖ
La velocidad angular se define como el ángulo girado por unidad de tiempo.
Para un objeto que gira alrededor de un eje, cada punto del objeto tiene la misma velocidad angular.
La forma matricial para representar la velocidad angular, puede ser deducida a partir de matrices de rotación.
Cualquier vector que gira alrededor de un eje con velocidad angular ϖ satisface:
donde ω× se conoce como vector axial.
Podemos definir el tensor velocidad angular asociado con la velocidad angular ϖ como:
Este tensor antisimétrico A(t) actúa como si ω× fuera un operador:
Dada una matriz de rotación R(t) se puede obtener en cada instante el tensor velocidad angular A(t) como se muestra a continuación.
Se cumple que:
Como la velocidad angular debe ser la misma para los tres vectores de un mismo sistema de referencia, si la matriz R(t) cuyas tres columnas son tres vectores unitarios simultáneamente perpendiculares, podemos escribir la relación:
Y por tanto la velocidad angular se puede definir como:
De donde se deduce que
5 VISUALIZACIÓN DE LOS VECTORES VELOCIDAD
Con la fórmula demostrada en el apartado anterior hallamos las componentes de la velocidad de las partículas al girar con velocidad angular ω=e3. Una vez determinadas dichas componentes pintamos sus vectores aplicados en las coordenadas de cada punto. El código que realiza dicho proceso es el siguiente:
p=zeros(10,3); % Vector de posición de las partículas
for i=1:21
p(i,:)=[cos(pi*(i-1)/10),cos(pi*(i-1)/4),cos(pi*(i-1)/10)];
w(i,:)=[0,0,1]; % ω=e3
end
v=cross(w,p); % Producto vectorial de los vectores posición y ω
p=[p(:,1),p(:,2),p(:,3)];
hold on
figure(1)
quiver3(p(:,1),p(:,2),p(:,3),v(:,1),v(:,2),v(:,3))
%axis([-2,2,-2,2,-2,2])
plot3(p(:,1),p(:,2),p(:,3),'o','MarkerFaceColor','b')
hold offLos valores de las componentes de la velocidad van a ser distintos de 0 para el caso de e1 y e2, ya que en el caso de e3 sabemos que el producto vectorial de e3 por e3 es nulo. Por otro lado, el primer punto del sistema de partículas tiene como coordenadas (0,0,0), por tanto su velocidad es nula.
La gráfica obtenida sería la siguiente:
6 Momento angular de un sistema de partículas
El momento angular de un sistema de diez partículas, que tienen un vector de desplazamiento ri, masa igual a mi, las cuales son todas idénticas y un vector de velocidad vi; este momento lineal se define como
A continuación, se demuestra que el momento lineal se puede expresar como:
Para ello se supone que los puntos se mueven con una velocidad angular w y además se sustituye el valor de la velocidad vi por w x r.
Sabiendo que





