Operazioni su sfere in coordinate polari

Willy881
Salve a tutti, sto lavorando in un progetto che richiede che io misure la distanza che c'e' fra diversi punti sulla superficie di diverse sfere. Le sfere vengono disegnate usando coordinate polari, perche' piu' efficiente dal punto di vista computazionale.
Ora poste due sfere come faccio a misurare la distanza che c'e' fra il punto a1 nella sfere 1 ed il punto a2 nella sfera 2?

Attualmente lo faccio calcolando le coordinate dei singoli punti (x,y,z) a partire di theta e phi per la prima sfera, e la stessa operazione per la sfere 2 sommando i valori (x,y,z) che corrispondono al centro della seconda sfera. (ovviamente la prima era centrata in (0,0,0). Idealmente vorrei sapere se esiste un modo di calcolare la distanza fra le superficie delle diverse sfere(possono essere piu' di 2) usando come informazione phi, theta e le coordinate del centro senza dover passare per la conversione a coordinate (x,y,z), cioe' voglio fare operando su vettori.

Grazie mille, e se non sono stato chiaro( cosa molto probabile) chiedete pure.

willy88

Risposte
killing_buddha
Il problema e' mal posto nel momento in cui non specifichi "come" vuoi che troviamo la distanza tra i punti.
se vuoi che ci si possa spostare in tutto lo spazio ambiente, il problema si banalizza molto: e' sufficiente prendere la distanza euclidea tra punti, che con pochi concetti di algebra lineare si calcola rapidamente.
L'unica alternativa sensata e' che tu voglia percorrere la superficie della sfera, dal punto $a_1$ sulla sfera $S_1$, fino al punto $p_1$ di $S_1$ che ha distanza minima da $S_2$, poi lungo il segmento minimo che unisce $S_1, S_2$, e poi di nuovo da $p_2$, il punto che incontri su $S_2$, ad $a_2$. D'altra parte:
1) cosi' ad intuito l'arco $a_ip_i$ dovra' essere un arco di cerchio massimo: non e' chiaro quale scegliere, perche' ce ne sono molti (non e' chiaro nemmeno che effettivamente esista, unica, una soluzione ottimale al problema, ma questo spero di si')
2) non e' chiaro cosa succeda in casi degeneri dove, per esempio, le sfere hanno distanza zero.

Willy881
grazie della risposta killing_buddha, cerchero' di essere piu' chiaro, prese due sfere una di centro (0,0,0) ed un altra di centro (x,y,z), voglio calcolare la distanza euclidea che c'e' fra due punti situati sulla superficie delle sfere. Ciascun punto e' determinato dalle coordinate polari (r1,phi1, theta1), ed (r2,phi2,theta2). Ora poiche' sono in forma polare io per calcolare la distanza convertivo le coordinate polari in punti del piano cartesiano (x,y,z), e calcolavo la distanza nel modo tradizionale in cui si calcola la distanza euclidea. Esiste un modo per farlo direttamente nel sistema polare?, tenendo conto che le due sfere non sono concentriche?. Ecco un disegno per chiarire meglio.

killing_buddha
Beh, allora certo che esiste: se $P_1,P_2$ sono due punti nello spazio, $(r_1,\theta_1,\varphi_1), (r_2,\theta_2,\varphi_2)$ le loro coordinate sferiche, la distanza tra i due si ottiene sositituendo le espressioni per le coordinate sferiche nella formula euclidea: viene fuori che la distanza al quadrato e'
\[r_1 r_2 (\sin (\theta_1) \sin (\theta_2) \cos
(\varphi_1-\varphi_2)+\cos (\theta_1) \cos
(\theta_2))+r_1^2+r_2^2\]

Willy881
ma quella formula funziona solo se le sfere sono concentriche, nel mio caso che non lo sono non funziona.

Rispondi
Per rispondere a questa discussione devi prima effettuare il login.