Loesung 

 

Die Richtung der Geraden H ergibt sich aus der Differenz der Vektoren p und q. Also erhalten wir eine Richtung dH aus 

> p:=vector(3,[7,11,0]);
q:=vector(3,[6,12,-1]);
dH:=evalm(p-q);
 

 

 

array( 1 .. 3, [( 1 ) = 7, ( 2 ) = 11, ( 3 ) = 0 ] )
array( 1 .. 3, [( 1 ) = 6, ( 2 ) = 12, ( 3 ) = -1 ] )
array( 1 .. 3, [( 1 ) = 1, ( 2 ) = -1, ( 3 ) = 1 ] )
 

Somit ist durch Typesetting:-mrow(Typesetting:-mo(eine Parameterdarstellung der Geraden gegeben. 

 

Die Gerade, die beide senkrecht schneidet, hat die Richtung dN. Diese ergibt sich zum Beispiel aus dem Kreuzprodukt der beiden Richtungsvektoren, 

> dG:=vector(3,[1,0,-2]);
dN:=crossprod(dG,dH);
 

 

array( 1 .. 3, [( 1 ) = 1, ( 2 ) = 0, ( 3 ) = -2 ] )
array( 1 .. 3, [( 1 ) = -2, ( 2 ) = -3, ( 3 ) = -1 ] )
 

Aus der Bedingung fuer die Schnittpunkte dieser Geraden mit G und H ergibt sich das lineare Gleichungssystem  
    Typesetting:-mrow(Typesetting:-mi(  
 

fuer entsprechende Parameter Typesetting:-mrow(Typesetting:-mi( mit  

> pH:=p;
pG:=vector(3,[1,0,3]);
 

 

p
array( 1 .. 3, [( 1 ) = 1, ( 2 ) = 0, ( 3 ) = 3 ] )
 

Schreiben wir das Gleichungssystem mit Hilfe der passenden Matrix  

> A:=concat(convert(dH,matrix),-convert(dG,matrix),convert(dN,matrix));
 

array( 1 .. 3, 1 .. 3, [( 3, 3 ) = -1, ( 3, 2 ) = 2, ( 2, 3 ) = -3, ( 3, 1 ) = 1, ( 1, 1 ) = 1, ( 2, 1 ) = -1, ( 1, 3 ) = -2, ( 2, 2 ) = 0, ( 1, 2 ) = -1 ] )
 

und der rechten Seite 

> b:=evalm(convert(pG,matrix)-convert(pH,matrix));
 

array( 1 .. 3, 1 .. 1, [( 3, 1 ) = 3, ( 1, 1 ) = -6, ( 2, 1 ) = -11 ] )
 

so folgen die passenden Parameter aus der Loesung 

> linsolve(A,b);
 

array( 1 .. 3, 1 .. 1, [( 3, 1 ) = 3, ( 1, 1 ) = 2, ( 2, 1 ) = 2 ] )
 

Somit erhalten  wir etwa mit Typesetting:-mrow(Typesetting:-mi(  einen Aufpunkt pN auf H fuer die senkrechte Gerade N   

> pN = evalm(pH + 2* dH);
 

pN = (array( 1 .. 3, [( 1 ) = 9, ( 2 ) = 9, ( 3 ) = 2 ] ))
 

und die gesuchte Gerade N ist durch die Parameterform  Typesetting:-mrow(Typesetting:-mi(  fuer r in RR gegeben. 

 

Nun suchen wir noch die Ebene parallel zu beiden Geraden mit demselben Abstand. Da die Ebene zu beiden Geraden parallel sein soll, ist durch dN auch die Normalenrichtung der Ebene gegeben. Fuer die Hessische Normalenform berechnen wir die normierte Richtung 

> dN := normalize(dN);
 

array( 1 .. 3, [( 1 ) = `+`(`-`(`*`(`/`(1, 7), `*`(`^`(14, `/`(1, 2)))))), ( 2 ) = `+`(`-`(`*`(`/`(3, 14), `*`(`^`(14, `/`(1, 2)))))), ( 3 ) = `+`(`-`(`*`(`/`(1, 14), `*`(`^`(14, `/`(1, 2)))))) ] )
 

Der Abstand kN der Ebene zum Ursprung ergibt sich mit  

> kG:=innerprod(dN,pG);
kH:=innerprod(dN,pH);
 

 

`+`(`-`(`*`(`/`(5, 14), `*`(`^`(14, `/`(1, 2))))))
`+`(`-`(`*`(`/`(47, 14), `*`(`^`(14, `/`(1, 2))))))
 

und der Bedingung, dass der Abstand zu beiden Geraden gleich sein soll, aus dem Mittelwert 

> kN:=(kG*kH)/2;
 

`/`(235, 28)
 

Damit haben wir die Hessische Normalenform Typesetting:-mrow(Typesetting:-mi( zur gesuchten Ebene bestimmt.