[Archivo] Matemáticas puras, física, química, etc.: problemas de entrenamiento cerebral no relacionados con el comercio de ninguna manera - página 557
Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
Parece que funciona para la imagen plana. Me parece que también funcionará para el caso de N dimensiones. ¿Alguna objeción?
Me parece que es hora de escribir un guión y comprobarlo... :)
Pues bien, el vector normal a la unidad dada puede construirse más fácilmente: basta con sustituir cualquiera de sus coordenadas xi por -sqrt(1-xi^2). En realidad, esto equivale a una rotación de 90 grados en el plano del vector alejándose del eje i-ésimo (es decir, sustituimos el coseno por el -seno, obtenemos el coseno del ángulo+pi/2). Después sólo queda normalizar el resultado.
Pero no es un hecho que se pueda obtener un vector normal a todos los demás del conjunto de esta manera en absoluto. Así como cualquier otra forma que seleccione un vector normal de todas las variantes...
Pues bien, el vector normal a la unidad dada puede construirse más fácilmente: basta con sustituir cualquiera de sus coordenadas xi por -sqrt(1-xi^2). En realidad, esto equivale a girar 90 grados en los polos del vector alejándose del eje i-ésimo (es decir, sustituimos el coseno por el -seno, obtenemos el coseno del ángulo+pi/2). Después sólo queda normalizar el resultado.
Pero no es un hecho que se pueda obtener un vector normal a todos los demás del conjunto de esta manera en absoluto. Así como cualquier otra forma que seleccione un vector normal de todas las variantes...
Exactamente. No en el caso general.
--
Parece que he encontrado una solución rápida. Cuando me senté a escribir y me relajé sobre el algoritmo, simplemente apareció.
Así, del vector generado x1r, sólo hay que restar su proyección sobre x0 (es decir, x0*sp(x0,x1r), donde sp() es producto escalar).
En resumen la fórmula está en una línea: x1 = x1r - x0*sp(x0,x1r);
:))
:))
Sí, pero hay que aproximarse después.
Bueno, de todos modos en una línea: x1 = norm(x1r - x0*sp(x0,x1r))
Parece que funciona para la imagen plana. Me parece que también funcionará para el caso de N dimensiones. ¿Alguna objeción?
Parece que es hora de escribir un guión y comprobarlo... :)
No tienes que escribirlo. Prueba:
sX = (a1+b1,a2+b2); dX = (a1-b1,a2-b2);
Como los vectores a y b eran vectores unitarios, el paralelogramo correspondiente es un rombo y sus diagonales son perpendiculares, por lo que la suma y la diferencia son ortogonales entre sí. Por tanto, el intercambio de módulos equivale a girar uno de ellos 90 grados a la derecha y el otro a la izquierda. En coordenadas cartesianas podemos expresarlo simplemente reordenando las coordenadas primera y segunda:
sXtr = (a2-b2,a1-b1); dXtr = (a2+b2,a1+b1)
=>
sXtr+dXtr = (2*a2,2*a1) es un vector con módulo 2 y obviamente ortogonal al vector (a1,a2), es decir al vector a. H.t.c.
Sólo queda correr en un bucle. for(i=0; i<InpVectorCount; i++) {....}
No, sigue siendo necesario elegir inicialmente el vector "arbitrario" correcto, que dará ortogonalidad a todo el conjunto. Es decir, lo arbitrario ni siquiera es arbitrario. De nuevo volvemos a la forma de calcular el vector inicial necesario.
Mentira. Sólo se comprueba en cada paso. Si en cualquier paso de la transformación un vector resulta contradictorio con el siguiente vector del conjunto, volvemos a generar el vector aleatorio inicial y repetimos el procedimiento. Como este caso es poco probable (con dimensión finita), es más fácil (más barato) que sospechar inmediatamente que es linealmente dependiente (buscando el rango de la matriz).
Mentira. Sólo se comprueba en cada paso. Si en cualquier paso de la transformación un vector resulta contradictorio con el siguiente vector del conjunto, volvemos a generar el vector aleatorio inicial y repetimos el procedimiento. Como este caso es poco probable (con dimensión finita), es más fácil (más barato) que sospechar inmediatamente que es linealmente dependiente (buscando el rango de la matriz).