| Size: 1538 Comment:  | Size: 3618 Comment:  | 
| Deletions are marked like this. | Additions are marked like this. | 
| Line 1: | Line 1: | 
| == Daten == | |
| Line 9: | Line 11: | 
| == Skript == | |
| Line 10: | Line 14: | 
| #!/bin/tcsh | |
| Line 18: | Line 24: | 
| #Bild imshow(Temp[0,0:90,130:180],vmin=170,vmax=300) colorbar() | |
| Line 22: | Line 25: | 
| #Basemap m = Basemap(projection='ortho',lon_0=0.0,lat_0=75.0,resolution='l') m.bluemarble() | #Drucklevel Lv=[1000.0,925.0,850.0,700.0,600.0,500.0,400.0,300.0,250.0,200.0,150.0,100.0, 70.0, 50.0,30.0, 20.0, 15.0, 10.0, 7.0,5.0, 3.0,2.0,1.5,1.0] | 
| Line 26: | Line 29: | 
| #PLOTBEFEHL FEHLT NOCH - Drucklevels auslesen}}} | # Fehlende Profile finden - Wert 1 testnan=Temp[0,:,:] testnan=testnan<0 # Temperaturprofile figure(1) subplot(1,2,1) plot(Temp[:,16,165],Lv) ylim((1000.0,1.0)) title('over ice, lat=-15,lon=74') show() subplot(1,2,2) plot(Temp[:,16,192],Lv) ylim((1000.0,1.0)) title('over open water, lat=12,lon=74') show() savefig('Soundings.png',dpi=75) # Kartendarstellung der vorhandenen Profile figure(2) m = Basemap(width=2400000,height=1600000,projection='stere',lat_ts=77.0,lon_0=15.0,lat_0=77.0,resolution='l') m.drawcoastlines() for i in range(0,30): for j in range(160,200): if testnan[i,j]==0: x,y=m(j-180.,90.-i) m.plot(x,y,'r.') x,y=m(-3.,77.) m.plot(x,y,'b.') x,y=m(10.,77.) m.plot(x,y,'b.') title('grid points with profiles(red), spectrum (blue)') show() savefig('Map.png',dpi=75) }}} | 
| Line 30: | Line 71: | 
| ||Index of T||TempPresLvls|| || Levels || in mb of T Levels|| | ||Index of T||TempPresLvls|| || Levels || in mb of T Levels || | 
| Line 33: | Line 74: | 
| || 2 || 925.0|| | || 2 || 925.0|| | 
| Line 56: | Line 97: | 
| == Notizen == * Drucklevels - (./) * Karte mit vorhandenen Profilen - (./) gibt es bei Wolken nie Daten? - was ist mit Temperature_D? * Daten zum testen: [[http://rapidfire.sci.gsfc.nasa.gov/subsets/?subset=AERONET_Hornsund.2009073.terra.250m | 14.03.09]] [[http://rapidfire.sci.gsfc.nasa.gov/subsets/?subset=AERONET_Hornsund.2009077.terra.250m | 18.03.09]] [[http://rapidfire.sci.gsfc.nasa.gov/subsets/?subset=AERONET_Hornsund.2009089.terra.250m | 30.03.09]] [[http://rapidfire.sci.gsfc.nasa.gov/subsets/?subset=AERONET_Hornsund.2009090.terra.250m | 31.03.09]] [[http://rapidfire.sci.gsfc.nasa.gov/subsets/?subset=AERONET_Hornsund.2009091.terra.250m | 01.04.09]] * Koordinaten - von der Grenzschichtgruppe - (./) Breite 77°; Länge -3° bis 10° * Profile plotten - (./) * Grenzschichtdicke in hPa bestimmen - sind überhaupt Inversionen sichtbar? nein - Bodendruck herausfinden (./) {{attachment:Rtavn00120030330.png}} * Grenzschichtdicke in Meter umrechnen barometrische Höhenformel: {{{#!latex $\Delta z = \frac{R_L T}{g}ln\left(\frac{p}{p_s}\right)$}}} R=287,1J/kgK; Annahme: T=const.; p=Druckniveau der Wolkenobergrenze, ps=Bodendruck aus Karte (s.o.) | 
Daten
Temperaturprofile: AIRS
Hilfreiche Links:
Skript
   1 #!/bin/tcsh
   2 
   3 from pyhdf import SD
   4 from pylab import *
   5 from mpl_toolkits.basemap import Basemap
   6 
   7 fid=SD.SD('AIRS.2003.03.30.L3.RetStd001.v5.0.14.0.G07215021620.hdf')
   8 T=fid.select('Temperature_A')
   9 Temp=T.get()
  10 
  11 
  12 #Drucklevel
  13 Lv=[1000.0,925.0,850.0,700.0,600.0,500.0,400.0,300.0,250.0,200.0,150.0,100.0,
  14   70.0, 50.0,30.0, 20.0, 15.0, 10.0,  7.0,5.0, 3.0,2.0,1.5,1.0]
  15 
  16 
  17 # Fehlende Profile finden - Wert 1 
  18 testnan=Temp[0,:,:]
  19 testnan=testnan<0
  20 
  21 # Temperaturprofile
  22 figure(1)
  23 subplot(1,2,1)
  24 plot(Temp[:,16,165],Lv)
  25 ylim((1000.0,1.0))
  26 title('over ice, lat=-15,lon=74')
  27 show()
  28 subplot(1,2,2)
  29 plot(Temp[:,16,192],Lv)
  30 ylim((1000.0,1.0))
  31 title('over open water, lat=12,lon=74')
  32 show()
  33 savefig('Soundings.png',dpi=75)
  34 
  35 # Kartendarstellung der vorhandenen Profile
  36 figure(2)
  37 m = Basemap(width=2400000,height=1600000,projection='stere',lat_ts=77.0,lon_0=15.0,lat_0=77.0,resolution='l')
  38 m.drawcoastlines()
  39 
  40 for i in range(0,30):
  41     for j in range(160,200):
  42         if testnan[i,j]==0:
  43             x,y=m(j-180.,90.-i)
  44             m.plot(x,y,'r.')
  45 
  46 x,y=m(-3.,77.)
  47 m.plot(x,y,'b.')
  48 x,y=m(10.,77.)
  49 m.plot(x,y,'b.')
  50 title('grid points with profiles(red), spectrum (blue)')
  51 
  52 show()
  53 savefig('Map.png',dpi=75)
Drucklevel:
| Index of T | |
| Levels | in mb of T Levels | 
| 1 | 1000.0 | 
| 2 | 925.0 | 
| 3 | 850.0 | 
| 4 | 700.0 | 
| 5 | 600.0 | 
| 6 | 500.0 | 
| 7 | 400.0 | 
| 8 | 300.0 | 
| 9 | 250.0 | 
| 10 | 200.0 | 
| 11 | 150.0 | 
| 12 | 100.0 | 
| 13 | 70.0 | 
| 14 | 50.0 | 
| 15 | 30.0 | 
| 16 | 20.0 | 
| 17 | 15.0 | 
| 18 | 10.0 | 
| 19 | 7.0 | 
| 20 | 5.0 | 
| 21 | 3.0 | 
| 22 | 2.0 | 
| 23 | 1.5 | 
| 24 | 1 | 
Notizen
- Drucklevels -   
- Karte mit vorhandenen Profilen -  gibt es bei Wolken nie Daten?  - was ist mit Temperature_D? gibt es bei Wolken nie Daten?  - was ist mit Temperature_D?
- Daten zum testen:
- Koordinaten - von der Grenzschichtgruppe -  Breite 77°; Länge -3° bis 10° Breite 77°; Länge -3° bis 10°
- Profile plotten -   
- Grenzschichtdicke in hPa bestimmen - sind überhaupt Inversionen sichtbar? nein - Bodendruck herausfinden   
 
 
- Grenzschichtdicke in Meter umrechnen barometrische Höhenformel: - latex error! exitcode was 2 (signal 0), transscript follows: 
R=287,1J/kgK; Annahme: T=const.; p=Druckniveau der Wolkenobergrenze, ps=Bodendruck aus Karte (s.o.)
