Coordinate frazionarie e cartesiane

6

Ho un set di coordinate frazionali.

Ho anche una matrice di rotazione che opera su coordinate cartesiane.

Qualcuno sa come posso convertire la mia matrice di rotazione in modo da poter operare sulle coordinate frazionarie?

Le coordinate frazionarie sono funzioni dei vettori di base a, b, c e il corrispondente alpha, beta, gamma.

Il seguente link spiega come eseguire le trasformazioni di coordinate. Non sono sicuro di come utilizzare le matrici elencate per operare sulla matrice di rotazione.

link

Qualche idea?

Grazie

    
posta Rodney 15.08.2012 - 17:43
fonte

2 risposte

7

Consente a CF di essere la matrice "Frazionaria a Cartesiana" e FC è la matrice "Cartesiana a Frazionaria" (quelli nel tuo articolo di Wikipedia). Sia RC la matrice di rotazione e xf un vettore frazionario. Quindi per calcolare la rotazione, devi trasformare xf in cartesiano ( xc = CF * xf ), ruotarlo ( xc_rotated = RC * xc ) e trasformarlo di nuovo ( xf_rotated = FC * xc_rotated ). Metti insieme questo e ottieni

xf_rotated =  FC * RC * CF * xf

Quindi, la matrice che stai cercando è FC * RC * CF .

    
risposta data 15.08.2012 - 18:05
fonte
1

Sembra che tu debba fare:

  1. Converti coordinate frattali - > Coordinate cartesiane (CC1).
  2. Crea una matrice posizionale (PM) dal tuo CC1.
  3. Esegui la rotazione sul PM usando la matrice di rotazione per ottenere una Matrice Trasformata (TM).
  4. Ottieni le coordinate cartesiane (CC2) dalla TM.
  5. Converti CC2 - > Coordinate frattali.
risposta data 15.08.2012 - 17:56
fonte

Leggi altre domande sui tag