eine Variable als globales es vor der Verwendung zuerst erklären:
global my_glob_var;
MATLAB nicht wirklich das Konzept der ‚uninitialised‘ Variablen unterstützen, aber Sie können eine Reihe von NaNs (keine Zahl) erstellen, um anzuzeigen, dass jeder Wert noch nicht vergeben wurde. Die Argumente für die nan
Funktion zeigen die Größe des NaN Array Sie erstellen möchten:
my_glob_var = nan(200, 200)
Es gibt noch weitere ähnliche Funktionen, falls Sie möchten initialisieren Arrays von Nullen, Einsen, Inf usw.
Dann innerhalb der Funktionen, die Sie es in, erklären sie als global wieder verwenden möchten:
function my_function
global my_glob_var % allows this function to use the global variable
my_glob_var % outputs the variable to command
als Nebenwirkung beachten Sie, dass Sie „es bis zu einem gewissen Wert initialisieren später mit einer for-Schleife“ wird. Abhängig davon, wie Sie das Array initialisieren, kann es einen vektorisierten Weg geben, dies zu erreichen (d. H. Ohne eine For-Schleife zu verwenden). Vektorisierte Operationen sind in MATLAB normalerweise viel schneller.
Wenn Sie eine Variable global machen und ihr einen Wert zuweisen (in Ihrem Fall eine 2-D-Matrix), sind dies völlig separate und unabhängige Operationen. –