Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 5 odgovora
  • 5.860 pregleda

Najnovija ↓

CUDA Rotacija Matrice 11.05.2011. u 18:11 · pre 188 meseci #1
Zdravo, nedavno sam dobio zadatak da napravim funkciuju za Rotacju Matrice no moram da koristim nvidia-jinu CUDA tehnologiju :)

Funkcija kao argumente prima jednu NxN matricu i vektor sa uglovima, a treba da vrati zarotiranu matricu

Ako neko moze da mi pomogne ja bih bio veoma zahvalan.....
Re: CUDA Rotacija Matrice 20.05.2011. u 23:30 · pre 188 meseci #2
Da li bi mogao da budes malo precizniji? Sta predstavlja ta matrica NxN? Koja je dimenzija vektora sa uglovima? Sta mislis pod rotiranjem matrice?
Previse malo podataka si dao. Npr. jedno od tumacenja bi moglo biti da se u ulaznoj matrici nalaze vektori koje je potrebno rotirati za uglove iz ulaznog vektora (tako sto ces pomocu tih uglova kreirati rotacionu matricu i primeniti je na vektore ulazne matrice).
Potpis
Q: Are there really any systems where
void main() doesn't work?
A: It has been reported that programs using void main() can crash.
Q: The book I've been using, _C Programing for the Compleat Idiot_,
always uses void main().
A: Perhaps its author counts himself among the target audience.
Re: CUDA Rotacija Matrice 21.05.2011. u 08:20 · pre 188 meseci #3
NxN predstavlja dimeziju matrice, zanci to bi bilo kvadrdna matrica. Vektor ima N elementa. U oba slucaja N treba da bude isti broj. Na primer matrica dimenzije 4x4, i vektor sa 4 elementa.

Ovo tvoje tumacejne mi najvisi odogovara citiram "Npr. jedno od tumacenja bi moglo biti da se u ulaznoj matrici nalaze vektori koje je potrebno rotirati za uglove iz ulaznog vektora (tako sto ces pomocu tih uglova kreirati rotacionu matricu i primeniti je na vektore ulazne matrice)."

Re: CUDA Rotacija Matrice 21.05.2011. u 12:14 · pre 188 meseci
izmenjeno 3 puta, poslednji put Nothingman 21.05.2011. u 12:33
  1. Nothingman21.05.2011. u 12:33zapis iz teksta poruke
  2. Nothingman21.05.2011. u 12:32zapis iz teksta poruke
  3. Nothingman21.05.2011. u 12:31zapis iz teksta poruke
#4
Pa cekaj, zar u postavci zadatka nisi dobio informaciju sta ta rotacija predstavlja? Jel imas kompletan tekst tog zadatka?
Ovo moje tumacenje koje sam ti rekao samo za dimenziju N = 3 ima veze sa ovim podforumom (3d programiranje, racunarska grafika).
Za dimenzije N>3 to vise nema nikakve veze sa 3d programiranjem, i spada u apstraktnu linearnu algebru. Potrazi na googlu dokumente kako algoritamski konstruisati rotacione N-dimenzionalne matrice, mada mislim da za tako nesto nemas dovoljno ulaznih parametara, jer ti fale "ose" oko kojih bi rotirao u tim visim dimenzijama (tacnije imao bi dovoljno parametara, ali bi morao da trazis ortonormiranu bazu vektorskog prostora za n-dimenzionalni slucaj, pa da rotiras oko vektora koji cine tu bazu).

U svakom slucaju zadatak je jako nejasno postavljen, i nema mnogo veze sa ovim forumom, osim u slucaju kada je N=3.
Potpis
Q: Are there really any systems where
void main() doesn't work?
A: It has been reported that programs using void main() can crash.
Q: The book I've been using, _C Programing for the Compleat Idiot_,
always uses void main().
A: Perhaps its author counts himself among the target audience.
Re: CUDA Rotacija Matrice 23.05.2011. u 23:26 · pre 187 meseci #5
Rotacija matrice \tex{A} je prosto \hat{A}'=\hat{R}^\top\hat{A}\hat{R}, gde je \hat{R} obicna matrica rotacije (podseti se elementarne linearne algebre i kako linearna transformacija u vektorskom prostoru indukuje linearnu transformaciju u operatorskom prostoru nad tim vektorskim prostorom). Po komponentama je A'_{il}=\sum_{j=1}^3\sum_{k=1}^3(\hat{R}^\top)_{ij}A_{jk}R_{kl}.

Najprostije (ne i najbrze) je da paralelizujes po indeksima i i l a da GPU kernel funkcija bude sumiranje po j i k. Drugim recima, istovremeno racunas sve matricne elemente rotirane matrice.

Imas po netu gomilu primera kako se radi matricno mnozenje sa CUDAom. Na osnvu toga ce ti odmah jasno kako da implementiras ovo gore.
Potpis
#define TRUE FALSE /*Happy debugging suckers*/
Re: CUDA Rotacija Matrice 24.05.2011. u 14:15 · pre 187 meseci #6
Kao sto rekoh, u slucaju takvog tumacenja zadatka, originalno pitanje vise nema nikakve veze sa podforumom 3d programiranje i racunarska grafika, nego sa linearnom algebrom i gpgpu-om.
Potpis
Q: Are there really any systems where
void main() doesn't work?
A: It has been reported that programs using void main() can crash.
Q: The book I've been using, _C Programing for the Compleat Idiot_,
always uses void main().
A: Perhaps its author counts himself among the target audience.
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme