To jest polecenie mincgen, które można uruchomić u dostawcy bezpłatnego hostingu OnWorks, korzystając z jednej z naszych wielu bezpłatnych stacji roboczych online, takich jak Ubuntu Online, Fedora Online, emulator online Windows lub emulator online MAC OS
PROGRAM:
IMIĘ
mincgen - Generuj plik MINC z pliku CDL.
STRESZCZENIE
mincgen [-b] [-n] [-o minc_nazwa_pliku] plik_wejściowy
OPIS
mincgen generuje plik MINC. Wejście do mincgen jest opisem pliku MINC w a
mały język znany jako CDL (network Common Data form Language), opisany poniżej. Jeśli nie
opcje są określone w wywołaniu mincgen, sprawdza jedynie składnię wejściowego CDL
pliku, generując komunikaty o błędach dla wszelkich naruszeń składni CDL. Inne opcje mogą być
używany do tworzenia odpowiedniego pliku MINC.
mincgen może być używany z programem towarzyszącym mincdump wykonać kilka prostych operacji
na plikach MINC. Na przykład, aby zmienić nazwę wymiaru w pliku MINC, użyj mincdump aby uzyskać
wersja CDL pliku MINC, edytuj plik CDL, aby zmienić nazwę wymiarów i
posługiwać się mincgen aby wygenerować odpowiedni plik MINC z edytowanego pliku CDL.
OPCJE
-b Utwórz (binarny) plik MINC. Jeśli -o opcja jest nieobecna, domyślna nazwa pliku będzie
być skonstruowane z nazwy MINC (określonej po netcdf or hdf5 słowo kluczowe w
dane wejściowe), dołączając rozszerzenie `.mnc'. Jeśli plik już istnieje z
podaną nazwę, zostanie nadpisana.
-o minc_nazwa_pliku
Nazwa utworzonego binarnego pliku MINC. Jeśli ta opcja jest określona, oznacza to, że
"-bopcja ". (Ta opcja jest konieczna, ponieważ nie można zapisywać plików MINC
bezpośrednio na standardowe wyjście, ponieważ standardowego wyjścia nie można przeszukiwać).
PRZYKŁADY
Sprawdź składnię pliku CDL `foo.cdl':
mincgen foo.cdl
Z pliku CDL `foo.cdl', wygeneruj odpowiedni binarny plik MINC o nazwie `x.mnc':
mincgen -o x.mnc foo.cdl
ZASTOSOWANIE
CDL Składnia Podsumowanie
Poniżej znajduje się przykład składni CDL, opisujący plik MINC z kilkoma nazwanymi wymiarami
(xspace, yspace i zspace), zmienne (zspace, obraz), atrybuty zmiennych (valid_range,
typ znaku) i trochę danych. Słowa kluczowe CDL są pogrubione. (Ten przykład ma na celu:
zilustrować składnię; prawdziwy plik CDL miałby pełniejszy zestaw atrybutów, więc
że dane będą bardziej samoopisujące się.)
netcdf foo { // przykładowa specyfikacja MINC w CDL
Wymiary:
xspacja = 8;
yspacja = 8;
spacja = 5;
zmienne:
unosić się xprzestrzeń;
unosić się yspacja;
unosić się zspacja(zspacja);
krótki obraz(zspace,yspace,xspace);
Podwójna obraz-min(zspace)
Podwójna image-max(zspace)
// zmienne atrybuty
obraz: prawidłowy_zakres = 0,5;
dane:
image-min = -1,-1,-1,-1,-1;
obraz-maks = 1,1,1,1,1;
obraz =
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,
3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,
5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,
5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5;
spacja = 0,2,3.5,7,10;
}
Wszystkie instrukcje CDL są zakończone średnikiem. Można używać spacji, tabulatorów i znaków nowej linii
swobodnie dla czytelności. Komentarze mogą następować po znakach `//' w dowolnym wierszu.
Opis CDL składa się z trzech opcjonalnych części: Wymiary, zmienne, dane,
zaczynając od słowa kluczowego wymiary:, zmienne:, dane, odpowiednio. Zmienna
część może zawierać zmienna Oświadczenia i atrybut Zadania.
MINC wymiar służy do określenia kształtu jednego lub więcej wielowymiarowych
zmienne zawarte w pliku MINC. Wymiar MINC ma nazwę, rozmiar i prawdopodobnie
kilka innych atrybutów.
A zmienna reprezentuje wielowymiarową tablicę wartości tego samego typu. Zmienna ma
nazwę, typ danych i kształt opisany przez jego listę wymiarów. Każda zmienna może
również skojarzone atrybuty (patrz poniżej), a także wartości danych. Nazwa, typ danych,
i kształt zmiennej określa jej deklaracja w zmienna sekcja CDL
opis. Zmienna może mieć taką samą nazwę jak wymiar; umownie takie
zmienna jest jednowymiarowa i zawiera współrzędne wymiaru, który nazywa.
Wymiary nie muszą mieć odpowiednich zmiennych.
NetCDF atrybut zawiera informacje o zmiennej netCDF lub o całym netCDF
zbiór danych. Atrybuty służą do określenia takich właściwości jak jednostki, wartości specjalne, maksimum
oraz minimalne prawidłowe wartości, współczynniki skalowania, przesunięcia i parametry. Informacje o atrybucie
jest reprezentowana przez pojedyncze wartości lub tablice wartości. Na przykład „jednostki” to atrybut
reprezentowana przez tablicę znaków, taką jak „Celsius”. Atrybut ma skojarzony
zmienna, nazwa, typ danych, długość i wartość. W przeciwieństwie do zmiennych, które są
przeznaczone dla danych, atrybuty są przeznaczone dla metadanych (danych o danych).
W CDL atrybut jest wyznaczany przez zmienną i nazwę atrybutu, oddzielone znakiem `:'. Ono
można przypisać światowy atrybuty niezwiązane z żadną zmienną do pliku jako a
w całości, używając `:' przed nazwą atrybutu. Typ danych atrybutu w CDL to
pochodną typu przypisanej do niego wartości. Długość atrybutu to
liczba przypisanych do niej wartości danych lub liczba znaków w ciągu znaków
przypisane do niego. Wiele wartości jest przypisywanych do atrybutów nieznakowych przez rozdzielenie
wartości z przecinkami. Wszystkie wartości przypisane do atrybutu muszą być tego samego typu.
Nazwy wymiarów, zmiennych i atrybutów CDL muszą zaczynać się od alfabetu
znak lub `_', a kolejne znaki mogą być alfanumeryczne lub `_' lub `-'.
Opcjonalne dane sekcja specyfikacji CDL to miejsce, w którym można inicjować zmienne.
Składnia inicjalizacji jest prosta: nazwa zmiennej, znak równości i przecinek
rozdzielana lista stałych (ewentualnie oddzielona spacjami, tabulatorami i znakami nowej linii) zakończona
ze średnikiem. W przypadku tablic wielowymiarowych ostatni wymiar zmienia się najszybciej. Zatem
W przypadku macierzy używana jest kolejność wierszy, a nie kolejność kolumn. Jeśli podano mniej wartości
niż są potrzebne do wypełnienia zmiennej, jest ona rozszerzana o zależną od typu `wartość wypełnienia',
które można nadpisać, podając wartość atrybutu zmiennej wyróżnianej o nazwie
`_WypełnijWartość'. Typy stałych nie muszą być zgodne z typem zadeklarowanym dla zmiennej;
na przykład przymusy są wykonywane w celu konwersji liczb całkowitych na zmiennoprzecinkowe. Stała `_'
może służyć do wyznaczenia wartości wypełnienia zmiennej.
Prymitywny Dane rodzaje
zwęglać znaków
bajt Dane 8-bit
krótki 16-bitowe liczby całkowite ze znakiem
długie 32-bitowe liczby całkowite ze znakiem
int (jednoznaczne z długie)
unosić się Liczba zmiennoprzecinkowa pojedynczej precyzji IEEE (32 bity)
real (jednoznaczne z unosić się)
Podwójna Liczba zmiennoprzecinkowa podwójnej precyzji IEEE (64 bity)
Z wyjątkiem dodanego typu danych bajt i brak unsigned, CDL obsługuje to samo
prymitywne typy danych jako C. Nazwy pierwotnych typów danych są słowami zastrzeżonymi w
CDL, więc nazwy zmiennych, wymiarów i atrybutów nie mogą być nazwami typów. w
deklaracje, nazwy typów mogą być podane z dużych lub małych liter.
Bajty różnią się od znaków tym, że są przeznaczone do przechowywania pełnych ośmiu bitów danych,
a bajt zerowy nie ma specjalnego znaczenia, tak jak ma to miejsce w przypadku danych znakowych.
Spodenki mogą zawierać wartości od -32768 do 32767.
Długie pozycje mogą zawierać wartości od -2147483648 do 2147483647. int i liczba całkowita są akceptowane jako
synonimy dla długie w deklaracjach CDL. Teraz, gdy istnieją platformy 64-bitowe
reprezentacje dla C długich, może lepiej użyć int synonim, aby uniknąć nieporozumień.
Float może zawierać wartości od około -3.4+38 do 3.4+38. Ich zewnętrzna reprezentacja to
jako 32-bitowe liczby zmiennoprzecinkowe znormalizowane IEEE o pojedynczej precyzji. real jest akceptowany jako
synonim słowa unosić się w deklaracjach CDL.
Podwójna może mieć wartości od około -1.7+308 do 1.7+308. Ich zewnętrzna reprezentacja
to 64-bitowe, znormalizowane liczby zmiennoprzecinkowe o podwójnej precyzji zgodne ze standardem IEEE.
CDL Stałe
Stałe przypisane do atrybutów lub zmiennych mogą być dowolnego z podstawowych typów MINC. ten
składnia stałych jest podobna do składni C, z wyjątkiem tego, że sufiksy typów muszą być dołączone do
szorty i pływaki, aby odróżnić je od długich i podwójnych.
A bajt stała jest reprezentowana przez jednoznakową lub wieloznakową sekwencję ucieczki
ujęte w pojedynczych cudzysłowach. Na przykład,
'a' // ASCII 'a'
'\0' // bajt zerowy
'\n' // znak nowej linii ASCII
'\33' // Znak zmiany znaczenia ASCII (33 ósemkowe)
'\x2b' // ASCII plus (szesnastkowy 2b)
'\377' // 377 ósemkowe = 255 dziesiętne, inne niż ASCII
Stałe znakowe są ujęte w podwójne cudzysłowy. Może być reprezentowana tablica znaków
jako ciąg ujęty w podwójne cudzysłowy. Zwykłe konwencje ucieczki ciągów C są honorowane.
Na przykład
"a" // ASCII "a"
"Dwa\nwiersze\n" // 10-znakowy ciąg z dwoma osadzonymi znakami nowej linii
"dzwonek:\007" // ciąg zawierający dzwonek ASCII
Zauważ, że tablica znaków "a" zmieściłaby się w jednoelementowej zmiennej, ponieważ no
zakładany jest znak kończący NULL. Jednak bajt zerowy w tablicy znaków to
interpretowane jako koniec znaczących znaków przez mincdump program, śledzenie
konwencja C. Dlatego bajt NULL nie powinien być osadzony w ciągu znaków
chyba że na końcu: użyj bajt typ danych zamiast dla tablic bajtowych zawierających zero
bajt. MINC i CDL nie mają typu łańcuchowego, a jedynie tablice znaków o stałej długości, które mogą:
być wielowymiarowym.
krótki Stałe całkowite są przeznaczone do reprezentowania 16-bitowych liczb ze znakiem. Forma
z krótki stała jest stałą całkowitą z dołączonym `s' lub `S'. Jeśli krótki
stała zaczyna się od `0', jest interpretowana jako ósemkowa, z wyjątkiem tego, że jeśli zaczyna się od `0x',
jest interpretowana jako stała szesnastkowa. Na przykład:
-2s // krótki -2
0123s // ósemkowe
0x7ffs //szesnastkowy
długo Stałe całkowite są przeznaczone do reprezentowania 32-bitowych liczb ze znakiem. Forma
z długie stała jest zwykłą stałą całkowitą, chociaż dopuszczalne jest dodanie
opcjonalne l lub l. Jeśli długie stała zaczyna się od `0', jest interpretowana jako ósemkowa,
z wyjątkiem tego, że jeśli zaczyna się od `0x', jest interpretowane jako stała szesnastkowa. Przykłady
ważne długie stałe obejmują:
-2
1234567890L
0123 // ósemkowe
0x7ff // szesnastkowy
Stałe zmiennoprzecinkowe typu unosić się są odpowiednie do reprezentowania liczby zmiennoprzecinkowej
dane z około siedmioma cyframi znaczącymi precyzji. Forma unosić się stała to
tak samo jak stała zmiennoprzecinkowa C z dołączonym `f' lub `F'. Na przykład
wszystkie poniższe są dopuszczalne unosić się stałe:
-2.0f
3.14159265358979f // zostanie obcięty z mniejszą precyzją
xnumx.f
Stałe zmiennoprzecinkowe typu Podwójna są odpowiednie do reprezentowania liczby zmiennoprzecinkowej
dane z dokładnością do około szesnastu cyfr znaczących. Forma Podwójna stała to
tak samo jak stała zmiennoprzecinkowa C. Można dołączyć opcjonalne `d' lub `D'. Do
przykład następujące są dopuszczalne Podwójna stałe:
-2.0
3.141592653589793
1.0e-20
1.d
Korzystaj z mincgen online za pomocą usług onworks.net