Frühere Änderungen im Hauptzweig

Datum

Datei

Version

Änderung

11.01.2006

bmix.f90

5.0

- neue sub. get_lower_bound_species (Interpolieren von species aus init-File für unterste Schicht)
- neue sub. add_to_species (Werte aus EDGAR Emissionsdateien zu species hinzufügen)
- Hauptprogramm verkürzt: Code in Subroutines ausgelagert

11.01.2006

bmix.inp_tmpl

5.0

zusätzliche Angaben für EDGAR Dateien

11.01.2006

bmix.f90

5.1

Syntaxfehler (auf JUMP) korrigiert

16.01.2006

lib_mix.f90

4.3

- neue Funktion "theta2thetadelta"
- nicht mehr genutzte sub. "vert_interpolation" gelöscht

16.01.2006

bmix.f90

5.2

neue Routinen "zeta2alt" und "alt2zeta"; in sub. "add_to_species" wird "theta2thetadelta" und "zeta2alt" für die Berechnung eines Faktors genutzt

16.01.2006

Makefile

3.19

qhull-Library muss nach utils-Library im Link-Pfad stehen

17.01.2006

bmix.f90

5.3

sub. add_to_species: Felder am Ende der Schleife freigeben (mit pgf90 nicht aufgefallen, aber Programm-Absturz auf dem JUMP!)

07.02.2006

bmix.f90

5.4

Das Bound-File für die oberste Schicht soll entweder 2-dimensionale Variablen (lat,time) oder 3-dimensionale Variablen (lat,lon,time) enthalten können. In sub. get_bound_species wird überprüft, ob "lon" als dritte Dimension vorhanden ist. Ist das der Fall, wird statt der Routine "interpol_time_grid" die neue Subroutine "interpol_time_grid_3d" für eine 3-dimensionale Interpolation aufgerufen.

20.02.2006

bmix.f90

5.5

sub. get_lower_bound_species: Es wird ein missing value gesetzt, wenn die Triangel nicht gefunden wurde.

20.03.2006

mix.f90

4.9

ohne Mischen: nthetas=0 an Ausgaberoutine übergeben!

28.03.2006

bmix.f90

5.6

in sub. replace_lower_layer: Sub. get_lower_bound_species wird nur bei Berücksichtung der Orographie (delta_theta>0) aufgerufen.

02.05.2006

bmix.f90

5.7

sub. replace_lower_layer: logische Var. "use_oro" zur korrekten Unterscheidung (mit/ohne Beruecksichtigung der Orographie); Bisher wurde auf delta_theta>0 abgefragt. Das war aber immer .true., da delta_theta bei nicht Berücksichtigung der Orographie auf theta_in_down-theta_down gesetzt wird!

29.05.2006

age.f90

5.1

neues Programm

29.05.2006

Makefile

3.20

Compilation von "age" ergänzt

21.06.2006

bmix.f90

5.8

sub. replace_lower_layer: Aufruf von get_orography vor der Verzweigung (damit theta0 allociert ist)

22.11.2006

bmix.f90

5.9

Änderungen aus Seitenzweig (Version 5.7.2.5) eingefügt

23.11.2006

bmix.f90

5.10

Aufruf der neuen Wichtungsroutine determ_weight_new (utils:lib_interpol.f90)

23.11.2006

age.f90

5.2

Änderungen aus Seitenzweig (Version 5.1.2.1) eingefügt

01.12.2006

lib_io.f90

4.8

Änderungen aus Seitenzweig (Vers. 4.7.2.4) eingefügt

01.12.2006

dynmod:
types_m.f90

4.6

Änderungen aus Seitenzweig (Vers. 4.5.2.4) eingefügt

01.12.2006

dynmod:
ap_m_access.f90

4.9

Änderungen aus Seitenzweig (Vers. 4.8.2.3) eingefügt

01.12.2006

mix.f90

4.10

save_tp wird nicht mehr genutzt (s. Seitenzweig Vers. 4.9.2.2), sonst Probleme mit geänderten Ein-und Ausgaberoutinen

08.12.2006

cmdl/
make_bound_file.f90

1.2

Hiermit können die NOAA CMDL Files in ein NetCDF Boundary File konvertiert werden: Kopie aus Seitenzweig (1.1.2.2.)

08.12.2006

cmdl/
add_to_bound_files.f90

1.2

Hiermit können die nach Netcdf konvertierten NOAA CMDL Files um einen angegebenen Zeitraum erweitert werden: Kopie aus Seitenzweig (1.1.2.3)

08.12.2006

cmdl/
make_bound_file.inp_tmpl

1.2

Kopie aus Seitenzweig (1.1.2.1)

08.12.2006

cmdl/
add_to_bound_files.inp_tmpl

1.2

Kopie aus Seitenzweig (1.1.2.1)

08.12.2006

cmdl/
Makefile

1.2

Makefile aus Seitenzweig (1.1.2.2)

11.12.2006

cmdl/
make_bound_file.inp_tmpl

1.3

weitere Angaben (user, output filename)

12.12.2006

mix.f90

4.11

Erweiterungen aus dem Seitenzweig (4.9.2.8) eingebaut:
- 2 Faktoren + 2 Level
- Abbruch der Schleife "implicit mixing" wenn Anz. sich nicht mehr als vorgegeben verändert
- temporäre Ausgabedatei löschen
- GPL Header

12.12.2006

lib_mix.f90

4.4

GPL Header

12.12.2006

lib_io.f90

4.9

GPL Header

12.12.2006

mix.inp_tmpl

3.1

- unnötige Angaben gelöscht (Bound-File, start/end-offset und save_temp)
- Zeile 6: Faktor1, Faktor2, Ober- und Untergrenze fuer ersten Faktor
- Zeile 8: Max. rel. Abweichung zwischen n und n_old fuer Abbruch der Schleife

12.12.2006

dynmod: ap_m_modify.f90

4.1

- function f_limit: abhängig vom Level Faktor1 od. Faktor2 (für max. Dist) benutzen
- sub. eliminate und new_point: temp und press entfernen

25.05.2007

mix.f90

4.12

zwei Probleme auf dem JUMP behoben:
- in Zeile 439: i => itheta
- temporäre Datei nur von 1. Prozessor löschen lassen

30.05.2007

mix.f90

4.13

Fehler auf JUMP gehoben:
geshiftete Level (grid_switch=1) wurden bei mehreren CPUs nicht korrekt ermittelt (die Hälfte des untersten Intervalls muss wieder subtrahiert werden!)

05.06.2007

bmix.f90

5.11

sub. get_vert_species: Boundfile fuer Nord-/Süd-Rand kann 3-dimensional sein (lon,theta,time)

02.07.2007

mix.f90

4.14

Benutzung von 30-Tage-Monaten möglich

18.09.2007

mix.f90

4.15

Aufruf von nc_write_ap_s mit "dates30"

18.09.2007

bmix.f90

5.12

Benutzung von 30-Tage-Monaten möglich

18.09.2007

dynmod:
ap_m_access.f90

4.11

sub. nc_write_ap_s: Optionalen Parameter "dates30" für 30-Tage-Monate ergänzt

21.09.2007

cmdl/
add_to_bound_files.f90

1.3

Erweitern der Daten in die Vergangenheit:
Es wird zusätzlich ein Startjahr eingelesen und ab diesem bis zu den vorhandenen Daten die Werte des ersten vorhandenen Jahres wiederholt.

21.09.2007

cmdl/
add_to_bound_files.inp_tmpl

1.3

zusätzliche Angabe des Startdatums

24.09.2007

mix.f90

4.16

Warnung bei 30-Tage-Monaten ausgeben

24.09.2007

bmix.f90

5.13

Warnung bei 30-Tage-Monaten ausgeben

02.10.2007

bmix.f90

5.13

Tag "bmix-mit-edgar-files" gesetzt

02.10.2007

bmix.f90

5.14

CO-Update aus Edgar-Datenbank wird nicht mehr ausgeführt

02.10.2007

bmix.inp_tmpl

5.1

Angaben zu Edgar-Files gelöscht;
Interpolation, wenn delta_theta>0 (Orographie), nur wenn "y" in letzter Zeile von bmix.inp angegeben ist

04.10.2007

bmix.f90

5.15

sub. alt2zeta und zeta2alt entfernt (wurde für Edgar-Dateien genutzt)

09.10.2007

Makefile

3.21

für "age" werden nicht alle Libraries gelinkt

23.10.2007

replace_lbound.f90

5.1

neues Programm: Unteren Rand bis zu einem angegebenen Level mit Daten aus der angegebenen Datei ersetzen => z. B. Mopitt-Daten für unteren Rand bis 250K ersetzen (mit replace_lbound), aber ansonsten unteren Rand bis 75K ersetzen (mit bmix) (Aufgebaut wie pos_chem mit der Interpolation am unteren Rand wie in bmix)

23.10.2007

replace_lbound.inp_tmpl

5.1

Template für replace_lbound.inp

23.10.2007

Makefile

3.22

Programm replace_lbound ergänzt

26.11.2007

lib_io.f90

4.10

sub. get_lowest_layer: Feldüberschreitung in theta0 abgefangen (Es wird nur noch theta0(ilat,ilon) genutzt, nicht mehr die umliegenden Feldelemente)

30.11.2007

Absturz von bmix auf dem JUMP: ap_s_1(i)%ind wurde nicht initialisiert (nullify)

30.11.2007

bmix.f90

5.16

ap_s_1 wird jetzt in sub. get_lowest_layer allokiert (in der richtigen Größe)

30.11.2007

lib_io.f90

4.11

Feld ap_s_1 wird in der richtigen Größe allokiert (und nullify für pointer "ind")

04.12.2007

Absturz von bmix auf 64-Bit-Maschinen

04.12.2007

bmix.f90

5.17

Größe von ap_s_1 wird durch Aufruf von sub. get_nparts_lowest_layer ermittelt

04.12.2007

lib_io.f90

4.12

neue sub. get_nparts_lowest_layer, keine Allokierungen mehr in sub. get_lowest_layer (jetzt im HP)

10.12.2007

lib_io.f90

4.13

Absturz, wenn PV_INIT nicht in Bound-File vorhanden ist:
sub. nc_read_ap_s: PV_init immer mit Größe "nparts" allokieren

14.12.2007

bmix.f90

5.18

Absturz, wenn für unterstes Level Interpolation vom Init-File eingeschaltet wird:
sub. get_lower_bound_species: Dim. der Felder ap0_coor und ap1_coor angepaßt

17.12.2007

cmdl/
make_bound_file.f90

1.3

Erweiterungen für N2O- und F11-Daten:
- Ermittlung von ntimes geändert
- sub. read_species: umrechnen von ppm,ppb oder ppt

14.02.2008

cmdl/
add_to_bound_files.f90

1.4

nyeartimes angeben (NICHT berechnen) => Zeitangaben werden sonst evtl. zu ungenau

14.02.2008

cmdl/
make_bound_file.f90

1.4

Eingabedateien können mit Verzeichnis angegeben werden

15.02.2008

bmix.f90

5.19

Verwendung eines HCN Boundary-Files möglich

22.02.2008

Makefile

3.23

lokale Testversion (unter $HOME/clams/utils) von utils-Library kann genutzt werden

22.02.2008

dynmod: Makefile

4.6

lokale Testversion (unter $HOME/clams/utils) von utils-Library kann genutzt werden

03.03.2008

cmdl/data/*

Dateien unter cmdl/data eingecheckt

04.03.2008

cmdl/input_data/*

Dateien unter cmdl/input_data eingecheckt

04.03.2008

cmdl/
cats_f11.f90

1.1

F11-Dateien (unter cmdl/input_data) werden in das Format der CMDL-Files konvertiert (nach cmdl/data)

04.03.2008

cmdl/
cats_n2o.f90

1.1

N2O-Dateien (unter cmdl/input_data) werden in das Format der CMDL-Files konvertiert (nach cmdl/data)

04.03.2008

cmdl/
ccval.f90

1.1

ccmval-File (unter cmdl/input_data) wird in das Format der CMDL-Files konvertiert (nach cmdl/data)

07.03.2008

cmdl/
readme.txt

1.1

Beschreibung der Boundfiles im Verzeichnis "data" und der Erstellung von Boundfiles für bmix aus diesen Dateien

10.03.2008

bmix.f90

5.20

Die Namen der zusätzlichen Boundfiles und die Spezies, die von diesen am oberen oder unteren Rand ersetzt werden sollen, werden von bmix.inp eingelesen.

10.03.2008

bmix.inp_tmpl

5.2

Namen der Boundfiles können optional angegeben werden

14.03.2008

bmix.f90

5.21, 5.22

Kommentare in bmix.inp in Zeilen mit Boundfiles möglich

31.03.2008

lib_io.f90

4.14

Funktion get_nparts_lowest_layer und sub. get_lowest_layer: modulo(lon,360.) verwenden, damit immer lon<360. (sonst evtl. Absturz in bmix)

31.03.2008

ap_m_modify

4.2

Function kart2ukmo: sicherstellen, dass lon<360. ist (sonst evtl. Absturz in bmix => Feldüberschreitung in lib_io.f90: get_nparts_lowest_layer)

07.04.2008

lib_io.f90

4.15

sub. nc_read_ap_s_0_info: spec_arr mit Leerstring vorbelegen

07.04.2008

bmix.f90

5.23

In den eingelesenen Bound-files wurde irrtümlich die einglesenen Werte aller Spezies am unteren Rand auf den unteren Bereich der ersten Spezies in spec_arr geschrieben
=> in sub. get_bound_species: c_spec_arr nutzen (nicht globales Feld (spec_arr) überschreiben und an sub.interpol_time_grid[_3d] weitergeben
=> sub. interpol_time_grid u. interpol_time_grid_3d: Position der aktuellen Spezies (in c_spec_arr) im globalen Feld "spec_arr" suchen

07.04.2008

lib_io.f90

4.16

Änderung aus 4.15 wieder rückgängig gemacht (sonst enthält Species im Ausgabedatensatz Kontrollzeichen ?!)

07.04.2008

bmix.f90

5.24

sub.interpol_time_grid: nur mit den ersten 10 Zeichen von spec_arr vergleichen. Da spec_arr nicht mehr vorbelegt wird (s. lib_io.f90), kann es nach der 10. Stelle Kontrollzeichen enthalten.

08.04.2008

bmix.f90

5.25

sub.interpol_time_grid_3d: wie sub. interpol_time_grid (s.07.04.) geändert

10.04.2008

bmix.f90

5.26

Testausgabe entfernt

06.05.2008

mix.f90

4.17

Aufruf der Funktion nc_set_new_history zum Erzeugen einer neuen History, die nur aus dem aktuellen Datum und dem Namen des Programmes (mix) besteht (Bisher wurde die History vom Init-File des Vortags kopiert und somit mit jedem Tag eines Clams-Laufes länger !)

19.05.2008

*.f90

Tag "bmix-ohne-add" gesetzt (Version vor dem Branch "mix-mit-add" mit einer Testversion für Robert)

17.06.2008

cmdl/Makefile

1.3

an Clams-Makefile-Struktur angepaßt (nutze mkincl)

26.06.2008

age.inp_tmpl

5.1

Template für age.inp (bisher nur im Branch new-mix-test eingecheckt)

03.07.2008

mix.f90

4.18

Kontrollausgabe von spec_arr geändert

10.07.2008

bmix.f90

5.27

STATE für unteren/oberen Rand auf 10/11 setzen

27.10.2008

replace_lbound.f90

5.2

Es wird nicht mehr unterhalb eines angegebenen Zeta-Levels, sondern oberhalb eines angegebenen Druckniveaus (z.B. >=500hPa) ersetzt. Der untere Rand aus bmix (STATE=10) kann von der Ersetzung ausgenommen werden.

27.10.2008

replace_lbound.inp_tmpl

5.2

In der 5. Zeile wird jetzt der Druck in hPa angegeben. Es gibt eine zusätzlich 6. Zeile, in der angegeben wird, ob die unterste Schicht ersetzt werden soll oder nicht.

06.04.2009

mix.f90

4.19

variable horizontale Auflösung möglich:
- sub. set_adapt_par: Bildschirmausgaben entfernt, unnötige Berechnungen entfernt, wenn R_GRID vorhanden ist, werden r_mean_h und r_mean_c entsprechend berechnet
- Komponenten von adapt_par umbenannt
- r_grid an Unterprogramme übergeben (nc_read_ap_s_0_info, nc_create_outfile, nc_write_ap_s)
- sub. set_adapt_par in Schleife über Theta-Level aufrufen (so dass r_mean_h und r_mean_c für jedes Level entspr. R_GRID gesetzt werden)

06.04.2009

bmix.f90

5.28

Gitter mit variabler horizontaler Auflösung einlesen und wieder ausgeben (Parameter r_grid an Einlese- und Ausgaberoutinen übergeben)

06.04.2009

lib_io.f90

4.17

sub. nc_read_ap_s_0_info:
- R_GRID einlesen (falls vorhanden)
- netcdf-Fehler mit nc_check_error überprüfen

06.04.2009

dynmod: types_m.f90

4.8

type adapt_set: Komponenten umbenannt und entfernt

06.04.2009

dynmod: ap_m_access.f90

4.12

sub. nc_write_ap_s: R_GRID ausgeben (falls vorhanden)

06.04.2009

dynmod: ap_m_modify.f90

4.3

- function f_limit: Komponenten von adapt_par umbenannt;
- sub. put_on_level: Zeilen für dim=4 auskommentiert

mix/Changes/Changes_old (last edited 2010-11-11 08:12:22 by NicoleThomas)