.. highlightlang:: us .. index:: NC_TimeInterpolation .. _nc_timeinterpolation: NC_TimeInterpolation ==================== .. us.tag NC_TimeInterpolation GERMAN nc.misc New5200 :ref:`NC_TimeInterpolation` interpoliert die Kanäle einer NC-Datei mit unterschiedlichen Abtastraten auf eine Abtastrate. .. function:: ncid = NC_TimeInterpolation(ncid, ssNewNCName, ssTimeName) ncid = NC_TimeInterpolation(ssNCName, ssNewNCName, ssTimeName) ncid = NC_TimeInterpolation(ncid, ssNewNCName, ssTimeName, svChannelList) ncid = NC_TimeInterpolation(ssNCName, ssNewNCName, ssTimeName, svChannelList) ncid = NC_TimeInterpolation(ncid, ssNewNCName, ssTimeName, svChannelList, rvTimeDef) ncid = NC_TimeInterpolation(ssNCName, ssNewNCName, ssTimeName, svChannelList, rvTimeDef) .. us.return **Returnwert** *ncid* ist die ID der öffenen NC-Datei. Die Datei muss mit :ref:`nc_close` geschlossen werden. Die Funktion :ref:`NC_Interpolation` schließt die Datei und liefert stattdessen einen bool. .. us.params **Parameter** .. uparam:: ncid *ncid* ist die Zugriffsnummer einer geöffneten NC-Datei, die von einem erfolgreichen Aufruf der Funktionen :ref:`nc_open` geliefert wurden. .. uparam:: ssNCName *ssNCName* ist der Name der NC-Datei, die auf ein Zeitraster interpoliert werden soll. Der Name kann alternative zum Parameter *ncid* angegeben werden. .. uparam:: ssNewNCName *ssNewNCName* ist der Name der NC-Datei, in der die interpolierten Daten gespeichert werden. Die Ergebnisdatei wird im NC-Format der Quelldatei gespeichert. .. uparam:: ssTimeName *ssTimeName* ist der Name eines Zeit-Kanals der Quelldatei. Die Daten des Kanals müssen monoton aufsteigend sortiert sein. .. uparam:: svChannelList Ist ein Vektor mit Kanalnamen, die in die Zieldatei geschrieben werden sollen. Falls *svChannelList* ein leerer String ist, werden alle Kanäle interpoliert. .. uparam:: rvTimeDef Der Parameter *rvTimeDef* entält die Schrittweite in Sekunden ür die Zieldatei. Z. B. 0.1 für eine Abtastrate von 10Hz. Anstatt der Schrittweite kann auch ein Vektor mit drei Elementen übergeben werden: [Startwert, Endwert, Schrittweite]. Beispiel: [0, 100, 0.1]; von 0 Sekunden bis 100 Sekunden in Schritten von 0.1 Sekunden. Falls der Parameter nicht angegeben wird, wird für die Interpolation der Kanal *ssTimeName* verwendet. Falls der Parameter nur die Schrittweite enthält, wird der Start- und Endwert von Kanal *ssTimeName* übernommen. .. us.example **Beispiel** :: ssNCName = auto_ImportData("d:/Inca_file.dat"); ssNewNCName = auto_ImportData("d:/Inca_file_interpol.dat"); ssTimeName = "time"; ncid = NC_TimeInterpolation(ssNCName, ssNewNCName, ssTimeName) if (ncid != -1) { nc_close(ncid); } ssNCName = auto_ImportData("d:/Inca_file.dat"); ssNewNCName = auto_ImportData("d:/Inca_file_interpol.dat"); ssTimeName = "time; svChannelList = "" // alle Kanäle rvTimeDef = 0.1 // 10 Hz ncid = NC_TimeInterpolation(ssNCName, ssNewNCName, ssTimeNamesv, ChannelList, rvTimeDef) if (ncid != -1) { nc_close(ncid); } ssNCName = auto_ImportData("d:/Inca_file.dat"); ssNewNCName = auto_ImportData("d:/Inca_file_interpol.dat"); ssTimeName = "time; svChannelList = ["ENG_N", "Fuel", "ATL_Drz", "VFzg"] // Kanalauswahl rvTimeDef = 0.1 // 10 Hz ncid = NC_TimeInterpolation(ssNCName, ssNewNCName, ssTimeNamesv, ChannelList, rvTimeDef) if (ncid != -1) { nc_close(ncid); } .. us.history **History** .. list-table:: :header-rows: 1 * - Version - Beschreibung * - 5.20.0 - Neu. .. seealso:: :ref:`uberblick-netcdf-dateien`, :ref:`NC_Interpolation`, :ref:`nc_create` :sub:`id-1833573`