Bellaria 2 Settembre 2000
Problema n.13
Di un tetraedro ABCD si conosce il vertice A(-1,2,-2).
Il piano α della faccia ABC passa per l'origine O(0,0,0) del riferimento ortonormato Oxyz.
La retta AB è parallela al vettore (Overscript[v,  ->])  =(({{-1}, {1}, {0}})) .
La retta che contiene i vertici C e D ha equazione CD:{({{x = t}, {y = 2}, {z = 2 + t}}) .
L'angolo A(Overscript[B,  ∧]) C è di 45°.
La faccia ABD ha la stessa area della faccia ABC.
a) Determina l'equazione cartesiana del piano α;
b) determina le coordinate del vertice C;
c) determina le coordinate del vertice B. Scegli la soluzione più lontana dall'origine.
d) Determina le coordinate del vertice D;
e) verifica che il teraedro così ottenuto ha tutte le facce congruenti.

Premessa alla soluzione:
Poichè nello svolgimento del problema spesso ricorreremo al calcolo:
1) del modulo di un vettore;
2) della distanza tra due punti.
descriviamo, subito, due funzioni atte a determinare tali quantità:

\(Modulo[vett_] := 
      Sqrt[vett[\([1]\)]^2 + vett[\([2]\)]^2 + vett[\([3]\)]^2]; 

    dist2P[P1_, P2_] := 
      Sqrt[\((P1[\([1]\)] - P2[\([1]\)])\)^2 + 
          \((P1[\([2]\)] - P2[\([2]\)])\)^2 + 
          \((P1[\([3]\)] - P2[\([3]\)])\)^2]; \)

Soluzione:
Tracciamo, innanzitutto, il vertice A ed il vettore (Overscript[v,  ->])  nel riferimento ortonormato Oxyz.

g1 = 
      ParametricPlot3D[{{t, 0, 0}, {0, t, 0}, {0, 0, t}}, {t, -5, 5}, 
        ViewPoint -> {-2.250,  -4.000,  1.580}, 
        AxesLabel -> {"x", "y", "z"}, 
        DisplayFunction -> Identity];

\(PO := {0, 0, 0}; 
V := {\(-1\), 1, 0}; 
A := {\(-1\), 2, \(-2\)}; 

    PA := Text["A", A + {0.2, 0.2, 0.2}]; 

    g2 = Graphics3D[{PointSize[.02], {Point[PO], Point[V], Point[A]}, PA}]; 

    g3 = Graphics3D[{AbsoluteThickness[2], Line[{PO, V}]}]; 

    Show[g1, g2, g3, ViewPoint -> {\(-2.250\), \ \(-4.000\), \ 1.580}, 
      DisplayFunction -> $DisplayFunction, AspectRatio -> 1, 
      PlotRange -> {{\(-5\), 5}, {\(-5\), 5}, {\(-5\), 5}}]\)

Tracciamo, quindi, la retta AB parallela al vettore (Overscript[v,  ->])  e la retta CD.

\(rettaAB = A + t*V; 
rettaCD = {t, 2, 2 + t}; 

    g4 = ParametricPlot3D[Evaluate[{rettaAB, rettaCD}], {t, \(-5\), 5}, 
        ViewPoint -> {\(-2.250\), \ \(-4.000\), \ 1.580}, 
        AxesLabel -> {"x", "y", "z"}, 
        DisplayFunction -> Identity]; 

    Show[g1, g2, g3, g4, ViewPoint -> {\(-2.250\), \ \(-4.000\), \ 1.580}, 
      DisplayFunction -> $DisplayFunction, AspectRatio -> 1, 
      PlotRange -> {{\(-5\), 5}, {\(-5\), 5}, {\(-5\), 5}}]\)

Troviamo, a questo punto, l'equazione di α sapendo che il piano passa per O, A ed un punto qualunque sulla retta AB; pertanto, indicato con P il punto di AB che si ottiene ponendo t=1, si ricava:

\(PuntoP = rettaAB /. t -> 1; 
pianoα = a*x + b*y + c*z + d; 

    sol = Solve[{
          pianoα == 0 /. {x -> PO[\([1]\)], y -> PO[\([2]\)], 
              z -> PO[\([3]\)]}, 
          pianoα == 0 /. {x -> A[\([1]\)], y -> A[\([2]\)], 
              z -> A[\([3]\)]}, 
          pianoα == 0 /. {x -> PuntoP[\([1]\)], y -> PuntoP[\([2]\)], 
              z -> PuntoP[\([3]\)]}}, {a, b, c, d}]\)

pianoα = Simplify[pianoα /. Flatten[sol]]/c

Aggiungiamo al disegno il piano α appena determinato:

\(g5 = 
      Plot3D[Evaluate[z /. Flatten[Solve[pianoα == 0, z]]], {x, 
          \(-5\), 5}, {y, \(-5\), 5}, 
        ViewPoint -> {\(-2.250\), \ \(-4.000\), \ 1.580}, 
        AxesLabel -> {"x", "y", "z"}, 
        DisplayFunction -> Identity]; 

    Show[g1, g2, g3, g4, g5, 
      ViewPoint -> {\(-2.250\), \ \(-4.000\), \ 1.580}, 
      DisplayFunction -> $DisplayFunction, AspectRatio -> 1, 
      PlotRange -> {{\(-5\), 5}, {\(-5\), 5}, {\(-5\), 5}}]\)

Trovato il piano α, per determinare le coordinate di C è sufficiente trovare il punto d'intersezione tra la retta CD ed il piano α. Infatti:

\(sol = 
      Solve[pianoα == 0 /. {x -> rettaCD[\([1]\)], 
            y -> rettaCD[\([2]\)], z -> rettaCD[\([3]\)]}, t]; 

    PC = rettaCD /. Flatten[sol]\)

\(PCT := Text["C", PC + {0.2, 0.2, 0.2}]; 

    g6 = Graphics3D[{PointSize[.02], Point[PC], PCT}]; 

    Show[g1, g2, g3, g4, g5, g6, 
      ViewPoint -> {\(-2.250\), \ \(-4.000\), \ 1.580}, 
      DisplayFunction -> $DisplayFunction, AspectRatio -> 1, 
      PlotRange -> {{\(-5\), 5}, {\(-5\), 5}, {\(-5\), 5}}]\)

Per determinare le coordinate di B, sfruttiamo le due condizioni:
1) appartenenza di B alla retta AB;
2) l'angolo A(Overscript[B, ∧])C=45°.

\(vettBA = A - rettaAB; 
vettBC = PC - rettaAB; 

    sol = Solve[vettBA.vettBC == Modulo[vettBA]*Modulo[vettBC]*Cos[π/4], 
        t]\)

-3, 4, -2)

Sostituendo i valori di t nelle equazioni parametriche della retta AB si ottiene:

\(B1 = rettaAB /. Flatten[sol[\([1]\)]]; 

    B2 = rettaAB /. Flatten[sol[\([2]\)]]; 

    B3 = rettaAB /. Flatten[sol[\([3]\)]]; \)

B1

B2

B3

Poichè B2 coincide con A, per decidere quale tra i punti B1 e B3 sia il punto B richiesto dal problema resta ancora da determinare la distanza di B1 e B3 da O.

distB1O = dist2P[B1, PO]

distB3O = dist2P[B3, PO]

Dunque:

B = B3

Pertanto, graficamente, si ha:

\(PBT := Text["B", B + {0.2, 0.2, 0.2}]; 

    g7 = Graphics3D[{PointSize[.02], Point[B], PBT}]; 

    Show[g1, g2, g3, g4, g5, g6, g7, 
      ViewPoint -> {\(-2.250\), \ \(-4.000\), \ 1.580}, 
      DisplayFunction -> $DisplayFunction, AspectRatio -> 1, 
      PlotRange -> {{\(-5\), 5}, {\(-5\), 5}, {\(-5\), 5}}]\)

Per determinare il vertice D del tetraedro dobbiamo, innanzitutto, calcolare l'area della faccia ABC:

AreaABC = 1/2*(dist2P[A, B]*dist2P[B, PC]*Sin[π/4])

A questo punto, sapendo che D appartiene alla retta CD e che la faccia ABD ha la stessa area della faccia ABC, possiamo determinare le coordinate del punto D:

\(vettBD = rettaCD - B; 
vettBA = B - A; 

    sol = Solve[
        1/2*\((Modulo[vettBD]*Modulo[vettBA]*
                Sqrt[1 - 
                    \((\((vettBD.vettBA)\)/
                          \((Modulo[vettBD]*Modulo[vettBA])\))\)^2])\) == 
          AreaABC, t]\)

Pertanto:

D1 = rettaCD /. Flatten[sol[[1]]]

D2 = rettaCD /. Flatten[sol[[2]]]

Poichè D2 coincide con C, il punto D sarà il punto D1; per cui:

PD = D1;

Graficamente:

\(PDT := Text["D", PD + {0.2, 0.2, 0.2}]; 

    g8 = Graphics3D[{PointSize[.02], Point[PD], PDT}]; 

    Show[g1, g2, g3, g4, g5, g6, g7, g8, 
      ViewPoint -> {\(-2.250\), \ \(-4.000\), \ 1.580}, 
      DisplayFunction -> $DisplayFunction, AspectRatio -> 1, 
      PlotRange -> {{\(-5\), 5}, {\(-5\), 5}, {\(-5\), 5}}]\)

Tracciamo ora il tetraedro di vertici ABCD:

\(g9 = Graphics3D[Polygon[{A, B, PC, A}]]; 

    g10 = Graphics3D[Polygon[{A, PC, PD, A}]]; 

    g11 = Graphics3D[Polygon[{B, PC, PD, B}]]; 

    g12 = Graphics3D[Polygon[{A, B, PD, A}]]; 

    Show[g1, g2, g3, g4, g6, g7, g8, g9, g10, g11, g12, 
      ViewPoint -> {\(-2.250\), \ \(-4.000\), \ 1.580}, 
      DisplayFunction -> $DisplayFunction, AspectRatio -> 1, 
      PlotRange -> {{\(-5\), 5}, {\(-5\), 5}, {\(-5\), 5}}]\)

Passiamo, a questo punto, a verificare che il tetraedro ottenuto ha tutte le facce congruenti.
A tale scopo calcoliamo le lunghezze degli spigoli del tetraedro, ottenendo:

AB = dist2P[A, B]

AC = dist2P[A, PC]

CB = dist2P[PC, B]

CD = dist2P[PC, PD]

AD = dist2P[A, PD]

BD = dist2P[B, PD]

Dal confronto dei risultati ottenuti si giunge a dimostrare la congruenza mediante l'applicazione del terzo criterio di congruenza.