Variablenübergabe

Hallo allerseits,

ich bin gerade dabei in Matlab was zu programmieren. Ich habe einige Matrizen/arrays die anfangs mal erstellt werden und dann nicht mehr geändert werden. Mein Programm besitzt einige Unterprogramme, die auf diese Matrizen zugreifen müssen. Bei jedem Funktionsaufruf übergebe ich teilweise die kompletten Matrizen. Jetzt meine Frage: Ist es ratsam, diese Matrizen als globale Variablen zu verwenden? Bzw. wie viel schneller wird das ganze sein, wenn überhaupt?
Ich tendiere dazu die Matrizen als globale Variablen zu deklarieren, bin mir aber noch nicht 100% schlüssig.

Ich hoffe es weiss jemand weiter.

Gruss x303

ich bin gerade dabei in Matlab was zu programmieren. Ich habe
einige Matrizen/arrays die anfangs mal erstellt werden und
dann nicht mehr geändert werden. Mein Programm besitzt einige
Unterprogramme, die auf diese Matrizen zugreifen müssen. Bei
jedem Funktionsaufruf übergebe ich teilweise die kompletten
Matrizen. Jetzt meine Frage: Ist es ratsam, diese Matrizen als
globale Variablen zu verwenden? Bzw. wie viel schneller wird
das ganze sein, wenn überhaupt?

Laut Doku MATLAB handles arguments passed in function calls in a similar way. When you pass a variable to a function, you are actually passing a pointer to the data that the variable represents. wird eh nur ein Zeiger übergeben. Erst wenn die übergebenen Variablen/Arrays in der Funktion geändert werden, wird eine Kopie erstellt. Die globale Deklaration ändert an der Ausführungsgeschwindigkeit also nichts.

HTH
Schorsch

Danke für die schnelle Antwort.

Gruss x303