Otros sitios...

Búsqueda

Antispam

Tiro parabólico en tres dimensiones

May 3rd, 2008 by Jorge Machin

El tiro parabólico es indispensable para todo juego que maneje balística. Su ecuación en su caso más simple en dos dimensiones la conocemos desde nuestros primeros estudios de física en la secundaria o la preparatoria. Ahora que esta muy de moda los juegos en tres dimensiones es bueno tener a la mano la ecuación parametrizada:

x(t) = x_0 + v cos(alpha)  cos(beta) t

y(t) = y_0 + v cos(alpha)  sen(beta) t

z(t) = z_0 + v sen(alpha)  t - frac { g t^2 } { 2 }

Tiro Parabólico en 3D

En lo único que cambia es la proyección extra (con un nuevo ángulo) y obviamente la tercera variable espacial. Me fue muy útil para un videojuego de baloncesto.

Posteado en 3D, Física, Matemáticas | No hay comentarios »

Modulación de señales: Radio AM

January 30th, 2008 by Jorge Machin

Una vez que hemos comprobado que se pueden recuperar señales en medios con ruido, la siguiente interrogante a resolver es como podemos transmitir varias señales de forma simultánea en una sola onda. En telecomunicaciones se estudian varias técnicas conocidas con el nombre de modulación para obtener este objetivo. En este post se va explicar la más sencilla de todas: La amplitud modulada o AM.

Amplitud Modulada

Consiste en hacer variar la amplitud de una onda portadora para que cambie con las variaciones de la señal con la información que deseamos transmitir (moduladora). Para ello, al mensaje a transmitir se le multiplica y suma la señal portadora para trasladar el espectro en frecuencias de la señal y así crear canales

Para ilustrar el proceso vamos a utilizar la misma señal moduladora con dos portadoras.

Sea la señal moduladora:

<br />
q(i) = sin( frac {pi i} {16} )<br />

Y las portadoras:

<br />
r_1(i) = 4 sin( frac {pi i} {1.5} )<br />

<br />
r_2(i) = 4 sin( frac {pi i} {4} )<br />

Analizando la señal moduladora y la primera portadora

En la siguiente gráfica podemos observar de manera llana a las dos funciones:

Moduladora y Portadora 1

Calculando las transformadas rápidas de Fourier para cada función tenemos el siguiente espectro:

FFT Moduladora y Portadora 1

Para crear el canal, como dijimos anteriormente, multiplicamos y sumamos la portadora a nuestra señal moduladora. La gráfica queda así:

Suma de Moduladora y Portadora 1

Haciendo la transformada de Fourier, nuestro espectro nos queda:

FFT Suma de Moduladora y Portadora 1

Con su forma característica de espejo.

Páginas: 1 2 3 4 5

Posteado en Física, Matemáticas | 2 Comentarios »

Recuperación de señales en medios con ruido

October 26th, 2007 by Jorge Machin

Durante la vida donde era estudiante en la universidad, disfrute mucho las materias de "Matemáticas Aplicadas a la Ingeniería" e "Instrumentación y Equipo" porque me enseñaron una herramienta que hasta la fecha me sigue maravillando: Las transformadas rápidas de Fourier (FFT).

Mi cariño es porque las FFT me permitieron entender como funcionan muchos aparatos electrónicos como la radio y la televisión. Pero no solamente eso; también me llevaron a entender como funciona nuestra vista, el oido y como el cerebro para reconoce la voz de la chica que uno ama entre un mar de voces cuando estamos disfrutando de una cena romántica en un restaurante concurrido o porque en la tierra podemos recuperar las señales de un satélite que se encuentra a miles o quizás millones de kilometros de distancia a pesar de tener tanto ruido electromagnetico generado por celulares, señales de televisión y radios de taxistas entre otros.

Ejemplo en papel

Vamos a suponer que tenemos una señal conocida a la cual vamos agregar ruido paral aplicarle después un sistema de filtrados basado en el espectro de la señal para limpiarla. Sea nuestra señal arbitraria:

<br />
f(i) = 2 sin( frac { 14 i } { 128 } pi ) + 2 cos( frac { 14 i } { 128 } )<br />

Donde su gráfica y su TTF es la siguiente:

Original

Ahora le agregamos algo de ruido aleatorio que cambia los graficos anteriores a esta forma aparentemente irreconocible:

Ruido
La señal original no es reconocible con el ruido

Conociendo las gráfícas originales, podemos allanar la parte central de los datos de la FFT usando filtros pasa bajos y pasa altos. Además nadie nos impide emplear filtros de amplitud e incluso hacer uno que otro retoque directo. La gráfica de la FFT de la señal editada de este ejemplo quedó así:

Retocada
FFT con el ruido filtrado

Después de hacer la transformada inversa, notamos que el filtrado aunque sencillo ha funcionado y prácticamente hemos recuperado la señal original:

Comparación de señales
Muy parecidas ¿no?

Obviamente el parecido de la señales depende de la cantidad de ruido y lo bien que las podamos filtrar. Aquí el truco es que nos podemos aprovechar de que el formato de la señal generalmente es definido por nosotros, lo cual nos permite explotar las características únicas de nuestras señales para crear filtros muy buenos.

Siendo malicioso, se puede utilizar este metodo para encriptar algún mensaje, pero eso es otro problema que dejamos a la imaginación del lector.

Octave

En realidad no hicé el ejemplo en papel, sino en un programa libre llamado octave. A continuación dejo el script que utilizé para hacer los gráficos de este post:

function q = wave( i )   
   q = 2 * sin(14*pi*i/128) + 2 * cos( 14*i/128 );
endfunction

x = linspace(0,127,128);
y = wave(x);

title( "Onda original" );
subplot(2,1,1)
plot(x,y)
f = fft(y,128);
subplot(2,1,2)
title( "FFT de la onda original" );
plot( x, f )

r = randn(128)*4;
s = wave(x) + r(x+1);
subplot(2,1,1);
title( "Onda con ruido" );
plot(x,s) f = fft(s,128);
subplot(2,1,2);
title( "FFT de la onda con ruido" );
plot( x, f );

#Filtros

for i = 1:128   
   f(i) = f(i)*0.65;
endfor

f(9:120) = 0.6;
f(1:2) = 20;

subplot(1,1,1);
title( "FFT filtrada y retocada" );
plot( x, f );
subplot(2,1,1);
title( "Onda original" );
plot(x,y)
subplot(2,1,2);
title( "Onda filtrada" );
e = ifft(f,128);
plot(x,e)

Posteado en Física, Matemáticas | No hay comentarios »

Formulario de Cinemática

September 6th, 2007 by Jorge Machin

Después de haber colocado el formulario de vectores, el paso obligado es colocar los formularios de Mécanica del Cuerpo Sólido. Pero para empezar, es mejor definir en el primer inciso, las áreas de la física que estudian a los cuerpos en movimiento.

1. Mecánica del cuerpo sólido

La mecánica es una rama de la física que estudia el equilibrio y movimiento de los cuerpos. La parte de la mecánica que estudia los cuerpos en reposo (sin movimiento) se llama estática, mientras que la parte que estudia a los cuerpos en movimiento se le denomina cinemática si no importa las cuasas que lo producen o alteran y dinámica si las toma en cuenta.

2. Posición, velocidad y aceleración

Representamos la posición de un punto P en movimiento a través del tiempo por medio del vector de posición vec r con respecto a un marco de referencia O:

vec r = vec r(t)

(2.1)

Entonces la tasa de cambio de la posición a través del tiempo o velocidad de P con respecto a O se obtiene derivando:

<br />
vec v = frac{dvec r }{dt}

(2.2)

Despejando y usando integrales definidas:

vec r = vec r_o + int_{t_o}^t vec v  dt

(2.3)

Continuando de (2.2), la aceleración de P con respecto al marco de referencia O en un tiempo t se obtiene con:

vec a=  frac {dvec v}{ dt }

(2.4)

o bien, en terminos del vector de posición:

vec a= frac { d^2vec r }{ dt^2 }

(2.5)

De igual forma de (2.4), despejando a la velocidad usando integrales definidas se tiene:

vec v = vec v_o + int_{t_o}^t vec a  dt

(2.6)

Finalmente de (2.2) y (2.6), haciendo integración definida se tiene:

vec r = vec r_o + vec v_o(t-t_o) + int_{t_o}^t int_{t_o}^t vec a  dt^2

(2.7)

Con estas ecuaciones, ya se tiene lo suficiente para analizar cualquier tipo de movimiento.

3. Ejemplo: Aceleración constante en una dimensión

De (2.3) tenemos:

vec r = vec r_o + vec v t

(3.1)

De (2.6) tenemos:

vec v = vec v_o +  vec at

(3.2)

Con la ecuación (3.2) es posible obtener el tiempo en alcanzar una velocidad.

De (2.7) tenemos:

vec r = vec r_o + vec v_o t +  frac {vec a t^2}{2}

(3.3)

Con la ecuación (3.3) se puede predecir el tiempo en recorrer una distancia, aplicando la fórmula general.

Usando (3.2) y (3.3), se obtiene:

vec r = vec r_o +  frac {vec v + vec v_o }{2} t

(3.4)

Como se puede ver, muchos problemas básicos de proyectiles se pueden resolver con operaciones simples; incluso sin son de varias dimensiones si se separan en componentes y se aplican como si fueran problemas de una dimensión.

Posteado en Formularios, Física, Maxin Lab | No hay comentarios »

Formulario de Vectores

June 18th, 2007 by Jorge Machin

Los vectores son una herramienta muy util para representar en cálculos y en la computadora como es nuestra realidad. En este post pongo un breve formulario de algebra vectorial para consulta.

1. Magnitud o Norma de un vector


||vec A|| = d =sqrt{({x_2}-{x_1})^2+({y_2}-{y_1})^2+({z_2}-{z_1})^2}

(1.1)

2. Ecuaciones de traslación

Para trasladar un vector al origen, simplemente se resta el punto final con el punto inicial:

vec P_o = ( x_2 - x_1, y_2 - y_1, z_2 - z_1 )

(2.1)

Para trasladarlo a un punto P(k,l,m):

vec P = ( x - k, y - l, z- m )

(2.2)

3. Vector Unitario

hat U = frac{1}{||vec A||} vec A

(3.1)

4. Producto interno, euclidiano interior, escalar o punto

Geométricamente, el producto interno, escalar, euclidiano interior o punto está definido por cualquiera de las dos siguientes ecuaciones:

vec U cdot vec V = ||vec U || ||vec V || cos( theta )

(4.1)

o bien por componentes:

vec U cdot vec V = U_1 V_1 + U_2 V_2 + U_3 V_3

(4.2)

Algunas de sus propiedades importantes son:

a) vec U cdot  vec V = vec V cdot vec U ( Propiedad conmutativa )

b) vec U cdot  ( vec V + vec W ) = vec U cdot vec V + vec U cdot vec W

c) k  ( vec V cdot vec W ) = kvec U cdot vec V =  vec U cdot kvec W

d) Si vec U cdot vec V = 0, entonces vec U perp vec V

Algunas aplicaciones del producto escalar incluyen encontrar:

a) El ángulo entre dos vectores

cos( theta ) = frac { vec U cdot vec V } { ||vec U || ||vec V || }

(4.3)

b) El vector proyección

vec W_1 = frac {vec U cdot vec V } { ||vec U || } vec U

(4.4)

c) La magnitud de proyección ortogonal vec U sobre vec V

Si no se conoce el ángulo:

hat U cdot vec V = frac { vec U cdot vec V } { ||vec U || }

(4.5)

o conociendo el ángulo:

hat U cdot vec V = || vec V || cos( theta )

(4.6)

5. Producto vectorial o cruz

El producto vectorial o cruz da como resultado un vector ortogonal a los dos vectores originales.

vec U times vec V = ( U_2 V_3 - U_3 V_2, U_3 V_1 -U_1 V_3, U_1 V_2 - U_2 V_1 )

(5.1)

o bien

<br />
vec U times vec V = left|begin{array}{ccc}<br />
hat{i} & hat{j} & hat{k} \<br />
U_1 & U_2 & U_3 \<br />
V_1 & V_2 & V_3<br />
end{array}right|<br />

(5.2)

Algunas de sus propiedades importantes son:

a) vec U times vec V = - ( vec V times vec U )

b) k ( vec U times vec V ) = k vec U times vec V = vec U times k vec V

6. Producto escalar triple

Próximamente.

7. Vector gradiente

Próximamente.

Posteado en Formularios, Física, Matemáticas, Maxin Lab | 2 Comentarios »