Sto calcolando il vettore normale a unasse piana + con + cz + d = 0

Secondo il libro:

Il vettore normale N è spesso normalizzato alla lunghezza unitaria perché in quel caso lequazione

d = N ⋅Q + D 

fornisce la distanza con segno dal piano a un arbitrario punto Q. Se d = 0, il punto Q giace nel piano. Se d> 0, diciamo che il punto Q giace sul lato positivo del piano poiché Q sarebbe sul lato in cui punta il vettore normale.

Come si ottiene il N (vettore normale)? Grazie

Risposta

Da MathWorld :

Dato laereo

inserisci qui la descrizione dellimmagine

Quindi il vettore normale è

inserisci qui la descrizione dellimmagine

Il normale vettore di unità n è dato da:

inserisci qui la descrizione dellimmagine

Pertanto, per laereo 5x+2y+3z-1=0,

Il vettore normale N è

N = [5,2,3]

La grandezza | N | è

| N | = sqrt (5 ^ 2 + 2 ^ 2 + 3 ^ 2)

| N | = 6.1644

Il vettore di unità normale n è quindi circa:

n = N / | N |

n = [0.8111, 0.3244, 0.4866]

che puoi controllare misurando la lunghezza di n .

Codice:

import math def mag(V): return math.sqrt(sum([x*x for x in V])) def n(V): v_m = mag(V) return [ vi/v_m for vi in V] 

In una shell Python interattiva:

>>> N = [5,2,3] >>> mag(N) 6.164414002968976 >>> n(N) [0.8111071056538127, 0.3244428422615251, 0.48666426339228763] >>> mag(n(N)) 1.0 

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *