AstridG är nöjd med hjälpen
AstridG 66
Postad: 24 jan 2023 15:57 Redigerad: 24 jan 2023 15:58

Julia programmering, matriser for loop

Hej

Jag behöver hjälp med min kod, jag kommer skriva ner ett exempel för jag vill inte dela ut koden ifall någon från plugget kommer kopiera.

 

Jag försökte skapa en matris A med 4x4 men får den i 2x1

Function exemple()
	A = [];
	B = [];
	C = #4x4 matris
	for i in 1:4
		B = C[:,i]/norm(C[:,i]);# Får ut 4x1 det stämmer 
		A = [A,B];
	end
	return A #får ut 2x1 som borde bli 4x4
end
		

när jag skriver ut println(A) så får jag massa [] mellan värden, om jag kör i matlab så blir det rätt å få ut A i 4x4

Peter 966
Postad: 24 jan 2023 19:59

Utan att kunna Julia gissar jag att det beror på att i Julia kan man lägga vilken datatyp som helst, var som helst i en matris. När du sätter A=[A,B] första gången så hamnar troligen en tom vektor på första positionen i A. Läs kapitel 19 Här.

Mitt tips är att skriva ut t.ex. size(A) i loopen. Debugutskrifter är programmerarens bästa vän tillsammans med internet.

Att det fungerar annorlunda i Matlab beror helt enkelt på att det är olika språk.

Svara Avbryt
Close