V_K4_tpl.h 999 Bytes
#include "V_K4.h"

template <class K>
K V_K4<K>::operator% (const V_K4<K>& A) const {
    return (T() % (Mmn<K>)A).a(0,0);
}

template <class K>
V_K4<K> V_K4<K>::operator| (const V_K4<K>& A) const {
    V_K4<K> B;

    // Was jetzt kommt ist eine Loesung (a,b,c) des folgenden Gleichungssystems
    // a*v1+b*v2+c*v3=0 und a*w1+b*w2+c*w3=0. Das heißt es ist ein Vektor
    // (a,b,c) der wenn man ihn mit den uebergebenen Vektoren v und w mult.
    // jeweils Null ergibt. Dieser Sachverhalt bedeutet geometrisch betrachtet
    // das dieser Vektor 90 Grad zu beiden übergebenen Vektoren bildet, also
    // eine Senkrechte zu der Ebene die diese beiden Vektoren aufziehen 
    // bildet. (Den Beweis das es eine spezielle Lösung ist bleibe ich hier
    // schuldig, wers ausprobieren möchte und nich weis wie kann sich gerne
    // an mich wenden.)
    B[0]=_a[1][0]*A[2] - _a[2][0]*A[1];
    B[1]=_a[0][0]*A[2] - _a[2][0]*A[0];
    B[2]=_a[0][0]*A[1] - _a[1][0]*A[0];
    B[3]=0;

    return B;
}