Änderungen in der Utils-Library

26.01.2006

nc_eqlat_utils.f90

1.34 bis 1.36

sub. nc_get_eqlat_all: Korrekturen von Jens-Uwe
Probleme mit vertcoorname: Wenn der Name mit IDL oder NCO in die Datei geschrieben wurde, wurde ein "\0" angehängt und mit ausgelesen! Jetzt wird die Routine nc_get_vertcoorname2 aufgerufen, die Kontrollzeichen automatisch entfernt.

27.01.2006

nc_utils.f90

1.13 und 1.14

sub. nc_get_vertcoorname und sub. nc_get_vertcoorname2: Bisher wurde - wenn das Attr. exp_VERTCOOR_name nicht vorhanden ist - als Default-Wert "theta" gesetzt. Das führte zu Problemen mit der geänderten sub. nc_get_eqlat_all (nc_eqlat_utils.f90), die - wenn das Attr. nicht vorhanden ist - "theta" oder "press" als Vertikalkoordinate nehmen soll (abhängig von der vorhandenen Dimension!). Nun wird in der sub. nc_get_vertcoorname vor dem Setzen des Default-Wertes "theta" noch überprüft, ob der Datensatz eine Dimension mit dem Namen "press" enthält. Für diesen Fall wird vertcoorname auf "press" gesetzt.

27.01.2006

nc_eqlat.f90

1.37

sub. nc_get_eqlat_all: Einlesen des Vertikalkoordinatennamens an neue sub. nc_get_vertcoorname2 angepasst

27.01.2006

nc_eqlat.f90

1.38

write-Befehl korrigiert (am 26.01.06 eingefügt): NAG und xlf compilierten nicht!

27.01.2006

nc_get_put.f90

1.20 und 1.21

sub. nc_get_level: Einlesen des Vertikalkoordinatennamens mit sub. nc_get_vertcoorname2

03.02.2006

nc_get_put.f90

1.22

sub. nc_put_values3: Wenn die Variable bereits existierte, wurde bisher nicht die korrekte "param_modification_time" ausgegeben => korrigiert

07.02.2006

nc_utils.f90

1.15

neue sub. nc_change_history

20.02.2006

lib_triangulate.f90

1.2

Function find_triangle:
- Die max. Entfernung zu den Eckpunkten der Triangel kann optional übergeben werden (max_dist)
- Wird keine Triangel gefunden, gibt die Funktion den Wert -1 zurück
(=> Veränderungen in i3d und bmix erforderlich)

01.03.2006

nc_pack_utils

1.4

Globales Attribut "definition_name" wird nicht mehr auf "def_icg_unpack" umgesetzt! (Es ist nach grib2ncdf auf "def_icg" gesetzt.)

29.03.2006

*.f90

Text für GPL in allen Modulen ergänzt. Alle Module (bis auf dateconv.f90) neu eingecheckt

05.04.2006

dateconv.f90

1.5

Ray-Sterner-Routinen für die Datumskonversion durch eigene ersetzt (Referenz für ymd2jd und jd2ymd: Fliegel und van Flandern)

13.04.2006

Makefile

1.32

Für pgi-Compiler: Versionsnr. an Pfadangaben anhängen

29.05.2006

dateconv.f90

1.6

GPL Header: M. Fisher ergänzt

29.06.2006

nc_utils.f90

1.17

Bildschirmausgaben einkommentiert

29.06.2006

nc_pack_utils.f90

1.6

Bildschirmausgaben einkommentiert

31.08.2006

nc_utils.f90

1.18

sub. nc_set_var_atts und sub. nc_set_global_atts ergänzt

14.09.2006

utils.f90

1.5

neue sub. delete_control_chars

19.09.2006

utils.f90

1.6

sub. delete_control_chars => function delete_control_chars

21.09.2006

utils.f90

1.7

Kommentar geändert

20.10.2006

nc_eqlat_utils.f90

1.40

sub. nc_get_eqlat_all: Dummy-Felder größer allokiert (nc=1000) (wg. Absturz in add_temp_dot)

21.11.2006

lib_interpol.f90

1.4

neue sub. determ_weight_new: Neue Methode die Gewichte zu bestimmen, bei der der vertikale Abstand nicht so stark gewichtet wird. Bisher gab es Ausreißer, wenn ein Punkt exakt auf dem Theta-Level eines der drei Eckpunkte lag. In diesem Fall wurden die anderen Punkte fast nicht berücksichtigt (obwohl sie vielleicht näher liegen!).

23.02.2007

nc_utils.f90

1.19 bis 1.21

neue sub. nc_check_error

09.03.2007

nc_pack_utils.f90

1.7

sub. write_packed_attributes: FillValue wird nur ausgegeben, wenn er nicht dem Standard-FillValue entspricht. Wird der Standard-FillValue immer ausgegeben (auch zusätzlich zu mdi), wird dieser z.B. von ncview für das Filtern der Daten genutzt (und die Daten, die mdi entsprechen, werden mit ausgegeben und verzerren den Wertebereich!)

09.03.2007

nc_utils.f90

1.22

- sub. nc_copy_global_atts: Abfangen, ob History zu lang ist! Wird eine zu lange History (länger als die Variable, auf die sie zugewiesen wird) eingelesen, kann es zum Programmabsturz (mit evtl. merkwürdigen Fehlermeldungen) kommen!
- sub. nc_copy_variable: deallocates ergänzt

19.04.2007

nc_utils.f90

1.23

sub. nc_change_history: Abfangen, dass history zu lang sein könnte

04.05.2007

lib_triangulate.f90

1.4

sub. find_triangle: Warnings lassen sich optional ausschalten

16.05.2007

lib_interpol.f90

1.5

sub. determ_weight_new: delta_theta und ratio als Eingabeparameter (NICHT Ausgabeparameter) deklariert. Bisher waren die beiden Variablen versehentlich als intent(out) deklariert und evtl. nicht korrekt belegt, so dass die Berechnung von r in einigen Fällen "inf" ergab und weight somit mit "Nan" belegt wurde !!!

01.06.2007

Makefile

1.33

ifort für 64-Bit-Maschinen ergänzt

12.06.2007

Makefile

1.34

gfortran-Compiler ergänzt

13.06.2007

dateconv.f90

1.7

Datumskonversionsroutinen für 30-Tage-Monate (alle Monate mit 30 Tagen!) ergänzt

15.06.2007

nc_utils.f90

1.24

History-Länge erhöht (sub. nc_copy_global_atts, sub. nc_change_history)

27.08.2007

utils.f90

1.8

sub. uppercase und sub. lowercase: Rückgabeparameter ist nicht mehr ein String der Länge 250, sondern ein String mit der gleichen Länge wie der Eingabeparameter

07.09.2007

read2d_utils.f90

1.15

Abfrage, ob ithe1<1 korrigiert (bisher wurde auch an dieser Stelle versehentlich "ithe" statt "ithe1" überprüft!)

19.10.2007

nc_eqlat_utils.f90

1.41

sub. get_pvlim: Wenn PV nur missing-values enthält, führte das bisher zum Absturz, da minval und maxval nicht ermittelt werden können. Das wird jetzt abgefangen, indem man überprüft, ob minval=HUGE(x) ist (d.h. Minimum konnte nicht ermittelt werden)

03.12.2007

read2d_utils

1.16

sub. interpol_2d_values: Abfragen, ob optionaler Parameter (time2d) vorhanden ist (=> löste einen Absturz auf dem JUMP in pos_chem aus)

18.01.2008

nc_utils.f90

1.25

Kommentar geändert

18.02.2008

nc_eqlat_utils.f90

1.42

sub. get_pvlim: stop durch return ersetzt (kein Abbruch, wenn PV nur missing values enthält)

21.02.2008

nc_eqlat_utils.f90

1.43

sub. nc_get_eqlat_all: wenn "press" Vertikalkoordinate ist, werden missing_values auf PV und TEMP zugelassen

20.03.2008

nc_pack_utils.f90

1.8

neue Funktion put_packed_var4 zum Wegschreiben von gepackten Variablen

20.03.2008

nc_get_put.f90

1.24

sub. nc_put_values3: zusätzlicher optionaler Parameter "packed" (ermöglicht die Ausgabe gepackter Daten)

20.03.2008

nc_func.f90

1.9

Interface von sub. nc_put_values3: zusätzlicher optionaler Parameter "packed"

20.03.2008

nc_eqlat_utils.f90

1.44

sub. nc_get_eqlat_all: "filename_tot" auch belegen, wenn kein Verzeichnisname übergeben wird

25.04.2008

nc_utils.f90

1.26 bis 1.29

neue sub. nc_change_history2 (wie nc_change_history, nur wird die ncid statt des Filenames übergeben)

25.04.2008

nc_io.f90

1.11

sub. write_global_att: History-Länge überprüfen

06.05.2008

nc_utils.f90

1.30

neue Funktionen nc_set_new_history und nc_set_new_history2: Die bisherige History wird gelöscht und eine neue History erzeugt, die nur aus dem aktuellen Datum und dem Namen des aufrufenden Programms besteht (wird im Moment von mix genutzt)

06.05.2008

nc_utils.f90

1.31

kein "return", wenn history nicht gelöscht werden kann (History kann evtl. nicht gelöscht werden, weil sie noch nicht vorhanden war!)

15.05.2008

nc_eqlat_utils.f90

1.45

neue Subroutine "make_eqlatbins_all" (für clams-tools: zonal_mean.f90)

20.05.2008

nc_eqlat_utils.f90

1.46

Bildschirmausgaben in sub. make_eqlatbins_all entfernt

27.05.2008

utils.f90

1.9

sub. delete_control_chars: Länge des Rückgabestrings entspricht der Länge des übergebenen Strings

18.08.2008

nc_utils.f90

1.32 und 1.33

neue sub. nc_set_file_creation_time, nc_set_param_creation_time, nc_set_file_mod_time und nc_set_param_mod_time

30.01.2009

Makefile

1.35

Beim Intel-Compiler wird die Versionsnr. an den Pfad angehängt

05.10.2010

nc_utils.f90

1.34

Änderungen für Modelldatensätze:
sub. nc_get_vertcoorname geändert: Modelldaten und Daten auf Zeta-Niveaus werden am Dimensionsnamen erkannt

25.10.2010

lib_bval3d.f90

1.6

Änderungen für Modelldatensätze
- function no_area: 2 Werte übergeben (statt vollst. Datenfeld und Indizes)
- function bval3d: Aufruf einer neuen Funktion bval3d_new
- function bval3d_new: 4 Werte übergeben (statt des vollst. Datenfeldes und der Indizes)

UtilsLibrary/Changes (last edited 2010-11-09 10:27:13 by NicoleThomas)