/ Forside / Karriere / Uddannelse / Højere uddannelser / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Højere uddannelser
#NavnPoint
Nordsted1 1588
erling_l 1224
ans 1150
dova 895
gert_h 800
molokyle 661
berpox 610
creamygirl 610
3773 570
10  jomfruane 570
matlab syntax
Fra : Søren N


Dato : 04-10-04 21:02

Jeg har en matrise i tre dimensioner A. Jeg har også en anden matrise i to
dimensioner (3*n) B hvor hver søjle er en 3dkoordinat.
Jeg vil nu gerne tolke 3dkoordinaterne B som index ind i A og sætte alle de
tilsvarende punkter til en værdi.
Eksempelvis har jeg koordinaten (3,6,2) i B og vil gerne sætte A(3,6,2) til
en værdi.

Jeg forsøgte dette
A(B(1,:),B(2,:),B(3,:))=567;
men det sætter samtlige kombinationer af de tre b-værdier i a til 567. Hver
kolon-iterator kører selvstændigt, så det reelt svarer til
for b1=1 to length(b)
for b2=1 to length(b)
for b3=1 to length(b)
a(b1,b2,b3)=567;

Det jeg ønsker er mere
for i=1 to length(b)
a(b(1,i),b(2,i),b(3,i))=567;

Kan nogen her give mig et tip til hvordan jeg lige opnår dette med
vektornotation. Det er nemt nok med løkker, men også langsommere.



 
 
Niels L Ellegaard (04-10-2004)
Kommentar
Fra : Niels L Ellegaard


Dato : 04-10-04 21:22

On Mon, 4 Oct 2004 22:01:53 +0200
"Søren N" <soren@ni.mail.dk> wrote:

> Jeg har en matrise i tre dimensioner A. Jeg har også en anden matrise > i to dimensioner (3*n) B hvor hver søjle er en 3dkoordinat.
> Jeg vil nu gerne tolke 3dkoordinaterne B som index ind i A og sætte
> alle de tilsvarende punkter til en værdi.
> Eksempelvis har jeg koordinaten (3,6,2) i B og vil gerne sætte
> A(3,6,2) til en værdi.

Frit efter hukommelsen: Der er noget med at man kan opfatte alle matricer some vektorer. Det betyder at du kan gøre sådan her
A([1,2,3]) = 3

Det betyder det samme som
A(1,1,1)=3
A(2,1,1)=3
A(3,1,1)=3

Nu er spørgsmålet hvordan du skriver B om til en vektor bestående af elementer. Det kan man sikkert gøre på flere måder.










Søg
Reklame
Statistik
Spørgsmål : 177552
Tips : 31968
Nyheder : 719565
Indlæg : 6408847
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste