Ich möchte einen "Füll" -Wert für 4- und 8-Byte-Gleitkommavariablen in einer netcdf-Datei entwerfen, um einen speziellen Fall fehlender Daten darzustellen. Es gibt bereits eine Konstante NF_FILL_FLOAT und mein Verständnis über das Design ist, dass es neben einem großen, seltsamen Wert ein sehr komprimierbares Bitmuster hat. Ich glaube, es ist anders als riesig (x). Ich verwende bereits NF_FILL_FLOAT, um fehlende Werte zu füllen - mein Wert muss unterscheidbar sein. Wie gehe ich vor? Was sind die Überlegungen für die Komprimierung? Vielen Dank.Entwerfen einer großen komprimierbaren binären Gleitkommazahl in Fortran
1
A
Antwort
2
Was ist, wenn Sie NF_FILL_FLOAT nehmen und es durch 2 ** n dividieren, wobei n eine ganze Zahl> = 0 ist? Dies würde Ihnen "n" individuelle "Füllwerte" geben, und im Wesentlichen verschiebt die Division einfach die Bits um n, sollte also immer noch komprimierbar sein.
(Natürlich, wenn Sie auf ein netcdf schreiben, dann ist externe Software nur entworfen, um einen Wert von MISSING zu erkennen, damit Ihre Füllwerte nicht erkannt werden).
Verwandte Themen
- 1. zählen das Auftreten einer kleinen binären Matrix in einer großen binären Matrix
- 2. Erstellen einer binären Matrix in R mit einem großen Datensatz
- 3. So entwerfen Sie die Klassenstruktur anstelle einer großen Enum
- 4. Wie in reinem css ähnlich den großen Websites zu entwerfen
- 5. Ausweichen der Ungenauigkeit einer Gleitkommazahl
- 6. Probleme beim Runden einer Gleitkommazahl
- 7. Entwerfen einer Ähnlichkeitstabelle
- 8. wie Bruchteil einer Gleitkommazahl in Verilog
- 9. Linke Seite einer Gleitkommazahl in Sql Server
- 10. Gleitkommazahl Multiplikationsergebnis
- 11. Doppelpräzisions-Gleitkommazahl in CUDA
- 12. Entwerfen einer Zustandsmaschine in C++
- 13. Gleitkommazahl begrenzen?
- 14. Modulo, Gleitkommazahl
- 15. Entwerfen einer Einstellungsstruktur
- 16. Erstellen einer binären externen Ressourcendatei in Qt
- 17. Entwerfen einer polymorphen Klasse
- 18. Entwerfen einer XACML-API
- 19. Entwerfen einer GUI
- 20. Entwerfen einer untergeordneten Schaltung
- 21. Wie ändere ich das Format einer Gleitkommazahl?
- 22. Erhalte den Dezimalteil aus einer Gleitkommazahl
- 23. Entwerfen eines effizienten Reduzierers für einen großen Zustand mit Redux
- 24. C++: Kompilierzeit den Wert einer Gleitkommazahl bestätigen
- 25. MIPS Eingabe Gleitkommazahl
- 26. Darstellung einer binären Variablen
- 27. Durchführen einer binären Suche
- 28. Gleitkommazahl in Python dynamisch ändern
- 29. Position in einer Datei in Fortran setzen?
- 30. `Fortran Laufzeitfehler: Datei bereits in einer anderen Einheit geöffnet 'in Fortran OpenMP
Das erste offensichtliche Denken zu FO ist, den Wert von NF_FILL_FLOAT als eine reelle Zahl und als ein Bitmuster zu untersuchen. Was sind die Ergebnisse Ihrer Untersuchungen? –
personaly, ich benutze immer den Wert -123456789, der als Integer oder Real mit 4 oder 8 Bytes OK ist. Die Wahrscheinlichkeit, einen wahren Wert zu finden, ist so niedrig ... –