nc_varid

nc_varid erfragt die Identifikations-Nummer einer netCDF-Variablen, wobei der Variablen-Name vorgegeben wird.

varid = nc_varid(ncid, ssName)

Returnwert

varid ist die Identifikations-Nummer der Variablen ssName. Im Fehlerfall hat varid den Wert -1.

Parameter

ncid

ncid ist die Zugriffsnummer, die von einem erfolgreichen Aufruf der Funktionen nc_create oder nc_open geliefert wurde.

ssName

ssName ist der Name der netCDF-Variablen.

Kommentar

Ab UniPlot 5.14.5 dürfen die Kanalnamen die folgenden Sonderzeichen enthalten: ., -, +, $, #, ~, !, ^, &, %. Damit der Formelinterpreter weiterhin wie gewohnt benutzt werden kann und keine Probleme beim Datenaustausch oder in Automatisierungen entstehen, kann der Kanalname alternativ auch mit Unterstrichen anstatt Sonderzeichen an die Funktion übergeben werden. Beispiel: Die NC-Datei enthält einen Kanal AI50%+m. Die folgenden beiden Aufrufe liefern die selbe varid:

varid = nc_varid(ncid, "AI50%+m");
varid = nc_varid(ncid, "AI50__m");

Wenn die NC-Datei jedoch Kanalnamen enthält, die sich nur durch Sonderzeichen unterscheiden, liefert der Aufruf mit Unterstrichen unter Umständen verschiedene varids zurück. Der Grund dafür ist, dass die Funktion die Suche beim ersten passenden Kanalnamen beendet. Beispiel: Eine NC-Datei enthält die Kanalnamen AI50%+m (varid 0), AI50%-m (varid 1):

Der folgende Aufruf liefert die varid = 1:

varid = nc_varid(ncid, "AI50%-m");

Beim Aufruf mit zwei Unterstrichen liefert die Funktion die varid der Variablen AI50%+m, also die varid = 0:

varid = nc_varid(ncid, "AI50__m");

Um Probleme mit dem Formelinterpreter zu vermeiden, sollten sich alle Kanalname unterscheiden, auch wenn die Sonderzeichen durch Unterstriche ersetzt würden. Falls die NC-Datei mit UniPlot erzeugt worden ist, werden die Variablen die sich nur durch die Sonderzeichen unterscheiden durchnummeriert. Dabei bleibt der erste Kanal unverändert. Alle folgenden Kanäle, die sich nur durch die Sonderzeichen unterscheiden werden beginnend bei 0 durchnummeriert.

History

Version Beschreibung
5.14.5 Behandlung von Sonderzeichen im Kanalnamen geändert.

id-576645