GoGPT Best VPN GoSearch

OnWorks-favicon

ncmpigen - Online in de cloud

Voer ncmpigen uit in de gratis hostingprovider van OnWorks via Ubuntu Online, Fedora Online, Windows online emulator of MAC OS online emulator

Dit is de opdracht ncmpigen die kan worden uitgevoerd in de gratis hostingprovider van OnWorks met behulp van een van onze meerdere gratis online werkstations zoals Ubuntu Online, Fedora Online, Windows online emulator of MAC OS online emulator

PROGRAMMA:

NAAM


ncmpigen - Genereer vanuit een CDL-bestand een netCDF-bestand, een C-programma of een Fortran-programma

KORTE INHOUD


ncmpigen [-b] [-c] [-f] [-n] [-o netcdf_bestandsnaam] [-v bestandsformaat] Invoer bestand

PRODUCTBESCHRIJVING


ncmpigen genereert een netCDF-bestand, of C- of Fortran-broncode om een ​​netCDF te maken
bestand. De invoer voor ncmpigen is een beschrijving van een netCDF-bestand in een kleine bekende taal
als CDL (netwerk Common Data form Language), hieronder beschreven. Als er geen opties zijn opgegeven
bij het aanroepen ncmpigen, controleert het alleen de syntaxis van het ingevoerde CDL-bestand en produceert het een fout
berichten voor eventuele schendingen van de CDL-syntaxis. Andere opties kunnen worden gebruikt om de
corresponderend netCDF-bestand, om een ​​C-programma te genereren dat de netCDF C-interface gebruikt om
het netCDF-bestand maken of een Fortran-programma genereren dat gebruikmaakt van het netCDF Fortran
interface om hetzelfde netCDF-bestand te maken.

ncmpigen kan worden gebruikt met het begeleidende programma ncmpidump om wat simpels uit te voeren
bewerkingen op netCDF-bestanden. Als u bijvoorbeeld een dimensie in een netCDF-bestand wilt hernoemen, gebruikt u
ncmpidump Om een ​​CDL-versie van het netCDF-bestand te krijgen, bewerkt u het CDL-bestand waarvan u de naam wilt wijzigen
de afmetingen en het gebruik ncmpigen om het overeenkomstige netCDF-bestand te genereren uit het bewerkte bestand
CDL-bestand.

OPTIES


-b Maak een (binair) netCDF-bestand aan. Als de -o optie is afwezig, een standaard bestandsnaam
wordt opgebouwd uit de netCDF-naam (gespecificeerd na de netcdf trefwoord in de
invoer) door de extensie `.nc' toe te voegen. Als er al een bestand bestaat met de
opgegeven naam, wordt deze overschreven.

-c Genereer een C broncode die een netCDF-bestand maakt dat overeenkomt met de netCDF
specificatie. De C-broncode wordt naar standaarduitvoer geschreven.

-f Genereer een Fortran broncode die een netCDF-bestand maakt dat overeenkomt met de netCDF
specificatie. De Fortran-broncode wordt naar standaarduitvoer geschreven.

-o netcdf_bestand
Naam voor het gemaakte binaire netCDF-bestand. Als deze optie is opgegeven, betekent dit dat
de "-b" optie. (Deze optie is nodig omdat netCDF-bestanden niet kunnen worden geschreven
rechtstreeks naar standaarduitvoer, aangezien standaarduitvoer niet kan worden gezocht.)

-n Like -b optie, behalve dat er een netCDF-bestand wordt gemaakt met de verouderde `.cdf'-extensie
in plaats van de extensie `.nc', bij afwezigheid van een uitvoerbestandsnaam gespecificeerd door
the -o keuze. Deze optie wordt alleen ondersteund voor achterwaartse compatibiliteit.

-v bestandsformaat
Bestandsindeling van het uitgevoerde netCDF-bestand. De waarde van file_format kan zijn: 1 of
klassiek voor CDF-1-formaat. 2 of 64-bits offset is CDF-2. 5 of 64-bit-variabel voor
CDF-5. De standaardinstelling (als deze optie niet wordt gegeven) is CDF-1, het klassieke formaat.

Voorbeelden


Controleer de syntaxis van het CDL-bestand `foo.cdl':

ncmpigen foo.cdl

Van het CDL-bestand `foo.cdl', genereer een equivalent binair netCDF-bestand met de naam `x.nc':

ncmpigen -o x.nc foo.cdl

Van het CDL-bestand `foo.cdl', genereer een C-programma met de netCDF-functie
aanroepen die nodig zijn om een ​​equivalent binair netCDF-bestand met de naam ` . te makenx.nc':

ncmpigen -c -o x.nc foo.cdl

GEBRUIK


CDL Syntaxis Samenvatting
Hieronder is een voorbeeld van CDL-syntaxis, die een netCDF-bestand beschrijft met verschillende benoemde dimensies
(lat, lon en time), variabelen (Z, t, p, rh, lat, lon, time), variabele attributen (eenheden,
long_name, valid_range, _FillValue) en enkele gegevens. CDL-zoekwoorden zijn vetgedrukt. (Dit
voorbeeld is bedoeld om de syntaxis te illustreren; een echt CDL-bestand zou een completer hebben
set attributen zodat de gegevens vollediger zelfbeschrijvend zouden zijn.)

netcdf foo { // een voorbeeld van een netCDF-specificatie in CDL

Afmeting:
lat = 10, lon = 5, tijd = onbeperkt ;

variabelen:
lang lat(lat), lon(lon), tijd(tijd);
drijven Z(tijd,lat,lon), t(tijd,lat,lon);
verdubbelen p(tijd,lat,lon);
lang rh(tijd,lat,lon);

// variabele attributen
lat:long_name = "breedtegraad";
lat:units = "graden_noord";
lon:long_name = "lengtegraad";
lon:units = "graden_oost";
time:units = "seconden sinds 1992-1-1 00:00:00";
Z:units = "geopotentiaalmeters";
Z:geldig_bereik = 0., 5000.;
p:_FillValue = -9999.;
rh:_FillValue = -1;

gegevens:
lat = 0, 10, 20, 30, 40, 50, 60, 70, 80, 90;
lon = -140, -118, -96, -84, -52;
}

Alle CDL-instructies worden afgesloten met een puntkomma. Spaties, tabs en nieuwe regels kunnen worden gebruikt
vrij voor de leesbaarheid. Opmerkingen kunnen op elke regel de tekens `//' volgen.

Een CDL-beschrijving bestaat uit drie optionele delen: Afmeting, variabelenen gegevens,
beginnend met het trefwoord dimensies:, variabelen:en gegevens, respectievelijk. De variabele
onderdeel kan bevatten variabele verklaringen en attribuut opdrachten.

Een netCDF dimensie wordt gebruikt om de vorm van een of meer van de multidimensionale te definiëren
variabelen in het netCDF-bestand. Een netCDF-dimensie heeft een naam en een grootte. Bij
de meeste dimensies in een netCDF-bestand kunnen de onbeperkt grootte, wat een variabele betekent
het gebruik van deze dimensie kan tot elke lengte groeien (zoals een recordnummer in een bestand).

A variabele staat voor een multidimensionale reeks waarden van hetzelfde type. Een variabele heeft
een naam, een gegevenstype en een vorm die wordt beschreven door de lijst met dimensies. Elke variabele kan
hebben ook geassocieerd met attributen (zie hieronder) evenals gegevenswaarden. De naam, het gegevenstype,
en vorm van een variabele worden gespecificeerd door zijn declaratie in de variabele sectie van een CDL
Omschrijving. Een variabele kan dezelfde naam hebben als een dimensie; volgens afspraak zoals
variabele is eendimensionaal en bevat coördinaten van de dimensie die het noemt.
Dimensies hoeven geen overeenkomstige variabelen te hebben.

Een netCDF attribuut bevat informatie over een netCDF-variabele of over de hele netCDF
gegevensset. Attributen worden gebruikt om eigenschappen te specificeren zoals eenheden, speciale waarden, maximum
en minimum geldige waarden, schaalfactoren, offsets en parameters. Attribuut informatie
wordt weergegeven door enkele waarden of arrays van waarden. Bijvoorbeeld, "eenheden" is een attribuut
weergegeven door een tekenreeks zoals "celsius". Een attribuut heeft een geassocieerd
variabele, een naam, een gegevenstype, een lengte en een waarde. In tegenstelling tot variabelen die
bedoeld voor data, attributen zijn bedoeld voor metadata (data over data).

In CDL wordt een attribuut aangeduid door een variabele en attribuutnaam, gescheiden door `:'. Het
is mogelijk toe te wijzen globaal attributen die niet aan een variabele zijn gekoppeld aan de netCDF as
een geheel door `:' voor de attribuutnaam te gebruiken. Het gegevenstype van een attribuut in CDL is
afgeleid van het type waarde dat eraan is toegewezen. De lengte van een attribuut is de
aantal gegevenswaarden dat eraan is toegewezen, of het aantal tekens in de tekenreeks
eraan toegewezen. Meerdere waarden worden toegewezen aan niet-tekenattributen door ze te scheiden
de waarden met komma's. Alle waarden die aan een kenmerk zijn toegewezen, moeten van hetzelfde type zijn.

De namen voor CDL-dimensies, variabelen en attributen moeten beginnen met een letter
teken of `_', en volgende tekens kunnen alfanumeriek of `_' of `-' zijn.

De optionele gegevens sectie van een CDL-specificatie is waar netCDF-variabelen kunnen zijn
begonnen. De syntaxis van een initialisatie is eenvoudig: een variabelenaam, een isgelijkteken,
en een door komma's gescheiden lijst van constanten (mogelijk gescheiden door spaties, tabs en nieuwe regels)
afgesloten met een puntkomma. Voor multidimensionale arrays varieert de laatste dimensie
snelste. Dus rijvolgorde in plaats van kolomvolgorde wordt gebruikt voor matrices. Als er minder waarden zijn
worden geleverd dan nodig zijn om een ​​variabele te vullen, wordt deze uitgebreid met een typeafhankelijke
`vulwaarde', die kan worden overschreven door een waarde op te geven voor een onderscheidende variabele
attribuut genaamd `_FillValue'. De typen constanten hoeven niet overeen te komen met het type dat is gedeclareerd voor
een variabele; dwang wordt uitgeoefend om bijvoorbeeld gehele getallen om te zetten in drijvende komma. De
constante `_' kan worden gebruikt om de vulwaarde voor een variabele aan te geven.

Primitief Data Types
verkolen tekens
byte 8-bit data
kort 16-bits gehele getallen met teken
lang 32-bits gehele getallen met teken
int (synoniem met lang)
drijven IEEE enkele precisie drijvende komma (32 bits)
vast (synoniem met drijven)
verdubbelen IEEE dubbele precisie drijvende komma (64 bits)

Behalve het toegevoegde gegevenstype byte en het gebrek aan Ongesigneerd, ondersteunt CDL hetzelfde
primitieve gegevenstypen als C. De namen voor de primitieve gegevenstypen zijn gereserveerde woorden in
CDL, dus de namen van variabelen, dimensies en attributen mogen geen typenamen zijn. In
declaraties kunnen typenamen worden opgegeven in hoofdletters of kleine letters.

Bytes verschillen van karakters doordat ze bedoeld zijn om acht bits aan gegevens te bevatten,
en de nulbyte heeft geen speciale betekenis, zoals voor karaktergegevens. ncmpigen
bekeerlingen byte declaraties aan verkolen declaraties in de output C-code en naar de
niet standaard BYTE declaratie in uitvoer Fortran-code.

Shorts kunnen waarden tussen -32768 en 32767 bevatten. ncmpigen bekeerlingen kort declaraties aan
kort verklaringen in de output C-code en de niet-standaard GEHEEL GETAL*2 aangifte in
uitvoer Fortran-code.

Longs kunnen waarden bevatten tussen -2147483648 en 2147483647. ncmpigen bekeerlingen lang
declaraties aan lang declaraties in de output C-code en to GEHEEL GETAL declaraties binnen
uitvoer Fortran-code. int en geheel getal worden geaccepteerd als synoniemen voor lang in CDL
verklaringen. Nu er platforms zijn met 64-bits representaties voor C longs, is het
misschien beter om de int synoniem om verwarring te voorkomen.

Floats kunnen waarden bevatten tussen ongeveer -3.4+38 en 3.4+38. Hun externe vertegenwoordiging is
als 32-bits IEEE genormaliseerde single-precision floating point getallen. ncmpigen bekeerlingen
drijven declaraties aan drijven declaraties in de output C-code en to REAL declaraties binnen
uitvoer Fortran-code. vast wordt geaccepteerd als synoniem voor drijven in CDL-aangiften.

Doubles kunnen waarden bevatten tussen ongeveer -1.7+308 en 1.7+308. Hun externe vertegenwoordiging
is als 64-bits IEEE-standaard genormaliseerde dubbele precisie drijvende-kommagetallen. ncmpigen
bekeerlingen verdubbelen declaraties aan verdubbelen declaraties in de output C-code en to DUBBELE
PRECISION declaraties in output Fortran-code.

CDL constanten
Constanten die aan attributen of variabelen zijn toegewezen, kunnen van elk van de basistypen van netCDF zijn.
De syntaxis voor constanten is vergelijkbaar met de C-syntaxis, behalve dat typeachtervoegsels:
toegevoegd aan shorts en drijvers om ze te onderscheiden van longs en doubles.

A byte constante wordt weergegeven door een escape-reeks van één teken of meerdere tekens
tussen enkele aanhalingstekens geplaatst. Bijvoorbeeld,
'a' // ASCII 'a'
'\0' // een nulbyte
'\n' // ASCII-teken voor nieuwe regel
'\33' // ASCII-escape-teken (33 octaal)
'\x2b' // ASCII plus (2b hex)
'\377' // 377 octaal = 255 decimaal, niet-ASCII

Tekenconstanten staan ​​tussen dubbele aanhalingstekens. Er kan een tekenarray worden weergegeven
als een string tussen dubbele aanhalingstekens. De gebruikelijke ontsnappingsconventies in de C-reeks worden gerespecteerd.
Bij voorbeeld
"a" // ASCII `a'
"Twee\nlijnen\n" // een tekenreeks van 10 tekens met twee ingesloten nieuwe regels
"a bell:\007" // een string met een ASCII-bel
Merk op dat de netCDF-tekenarray "a" zou passen in een variabele met één element, aangezien no
afsluitend NULL-teken wordt aangenomen. Een nulbyte in een tekenreeks is echter
geïnterpreteerd als het einde van de significante karakters door de ncmpidump programma, volgt
de C-conventie. Daarom mag een NULL-byte niet in een tekenreeks worden ingebed
tenzij op het einde: gebruik de byte gegevenstype in plaats daarvan voor byte-arrays die de nul bevatten
byte. NetCDF en CDL hebben geen stringtype, maar alleen karakterarrays met een vaste lengte
kan multidimensionaal zijn.

kort integer-constanten zijn bedoeld voor het weergeven van 16-bits getekende hoeveelheden. Het formulier
een kort constante is een geheel getal constant met een `s' of `S' toegevoegd. Als een kort
constante begint met '0', wordt het geïnterpreteerd als octaal, behalve dat als het begint met '0x',
het wordt geïnterpreteerd als een hexadecimale constante. Bijvoorbeeld:
-2s // een korte -2
0123s // octaal
0x7ffs //hexadecimaal

Lang integer-constanten zijn bedoeld voor het weergeven van 32-bits getekende hoeveelheden. Het formulier
een lang constante is een gewone constante met een geheel getal, hoewel het acceptabel is om een ​​toe te voegen
optionele `l' of `L'. Als een lang constante begint met `0', wordt geïnterpreteerd als octaal,
behalve dat als het begint met `0x', het wordt geïnterpreteerd als een hexadecimale constante. Voorbeelden
van geldig lang constanten zijn onder meer:
-2
1234567890L
0123 // octaal
0x7ff // hexadecimaal

Drijvende-kommaconstanten van het type drijven geschikt zijn om drijvende komma weer te geven
gegevens met een nauwkeurigheid van ongeveer zeven significante cijfers. de vorm van a drijven constante is
hetzelfde als een constante C met een drijvende komma waaraan een 'f' of 'F' is toegevoegd. bijvoorbeeld de
volgende zijn allemaal acceptabel: drijven constanten:
-2.0f
3.14159265358979f // wordt afgekapt met minder precisie
1. f

Drijvende-kommaconstanten van het type verdubbelen geschikt zijn om drijvende komma weer te geven
gegevens met een nauwkeurigheid van ongeveer zestien significante cijfers. de vorm van a verdubbelen constante is
hetzelfde als een drijvende-kommaconstante C. Een optionele `d' of `D' kan worden toegevoegd. Voor
voorbeeld de volgende zijn allemaal acceptabel: verdubbelen constanten:
-2.0
3.141592653589793
1.0e-20
1. d

DATUM


$Datum: 2014-04-16 13:38:34 -0500 (wo, 16 april 2014) $

Gebruik ncmpigen online met behulp van onworks.net-services


Gratis servers en werkstations

Windows- en Linux-apps downloaden

Linux-commando's

Ad




×
advertentie
❤️Koop, boek of koop hier — het is gratis, en zo blijven onze diensten gratis.