Crée une variable dans un fichier NetCDF.
nccreate(filename, varname, [[name, value]...])
Chemin d'accès complet vers un fichier NetCDF (string).
Nom de la variable (string).
Un ou plusieurs arguments optionnels sous la forme de paires [clé, valeur] :
type de la variable: clé 'Datatype'
, les valeurs possibles sont 'double'
, 'float'
, 'int32'
, 'uint32'
, 'int16'
, 'uint16'
, 'int8'
, 'uint8'
, 'char'
.
dimensions de la variable: clé 'Dimensions'
, la valeur est une list
contenant les noms et les tailles pour chaque dimension comme suit: list(<dim1_name>, <dim1_size>,...,<dimN_name>, <dimN_size>)
.
valeur de remplacement (la valeur utilisée en cas de donnée manquante): clé 'FillValue'
, la valeur est une constante (double, integer, ou un char), ou 'disable'
pour désactiver le mécanisme de remplacement de donnée manquante.
nccreate
crée une variable nommée varname dans le fichier filename.
L'emplacement de la variable dans le fichier (i.e. le chemin du groupe qui contient la variable) peut être spécifié dans varname en utilisant la forme /grp/subgrp/.../varname
.
Les groupes qui n'existent pas seront créés.
La variable peut être un scalaire, une matrice ou une hypermatrice de type nombre flottant, entier ou texte. Par défaut la variable est un scalaire de type double
.
Des arguments optionnels sous la forme d'une suite de paires [clé, valeur] permettent de définir précisément la variable, notamment son type et ses dimensions.
Le type de la variable est spécifié dans une chaîne de caractères après la clé 'Datatype'
:
'double'
ou 'float'
.'int8'
, 'uint8'
, 'int16'
, 'uint16'
, 'int32'
, 'uint32'
(note: les types entier 64 bit ne sont pas supportés dans Scilab 5).'char'
.Les dimensions de la variable sont spécifiées dans une list
Scilab après la clé 'Dimensions'
.
Cette liste comprend pour chaque dimension son nom, et dans l'élément qui suit dans la liste, la taille (le nombre d'éléments maximum) pour cette dimension.
L'ordre des dimensions donné est celui utilisé dans Scilab, i.e. dans l'ordre de l'index qui varie le plus vite en mémoire, en commencant par le nombre de lignes. Par exemple, pour créer une hypermatrice avec hypermat, on spécifie d'abord le nombre de lignes, puis le nombre de colonnes, enfin le nombre de matrices.
Les variables peuvent avoir une taille illimitée, en spécifiant une dimension de taille infinie (%inf
). Cette dimension doit correspondre à l'index qui varie le moins vite en mémoire.
Note: si le fichier NetCDF n'existe pas il est créé (dans le format NetCDF4 étendu), sinon il est repris en écriture (pas d'écrasement).
filename = fullfile(TMPDIR, 'nccreate.nc'); // Crée un double 'x' nccreate(filename, 'x'); // Crée une variable 'n' (int8 scalar) nccreate(filename, 'n', 'Datatype', 'int8'); // Crée une chaîne 'str' dans le groupe 'group' nccreate(filename, '/group/str', 'Datatype', 'char', 'Dimensions', list('len', %inf)); // Crée un vecteur illimité d'entiers 'unltd_vec' nccreate(filename, 'unltd_vec', 'Datatype', 'int32', 'Dimensions', list('idim', %inf)); // Crée une matrice de double 'mat' avec 4 lignes et 3 colonnes nccreate(filename, 'mat', 'Dimensions', list('r', 4, 'c', 3)); // Crée une hypermatrice 'hypermat' composée de 2 matrices, chacune avec 4 lignes et 3 colonnes nccreate(filename, 'hypermat', 'Dimensions', list('m', 2, 'r', 4, 'c', 3)); // Crée une hypermatrice illimitée 'unltd_hypmat', chaque matrice comprend 4 lignes et 3 colonnes nccreate(filename, 'unltd_hypermat', 'Dimensions', list('dim', %inf, 'r', 4, 'c', 3)); ncdisp(filename); | ![]() | ![]() |