Differences between revisions 24 and 49 (spanning 25 versions)
Revision 24 as of 2010-01-18 14:35:33
Size: 2236
Comment:
Revision 49 as of 2010-02-01 15:01:48
Size: 3635
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
== Daten ==
Line 9: Line 11:
== Skript ==
Line 14: Line 18:
#from mpl_toolkits.basemap import Basemap from mpl_toolkits.basemap import Basemap
Line 25: Line 29:
# Ausschnitt definieren
sued=30
nord=0
west=130
ost=180

# Kartendarstellung
# global
figure(1)
imshow(Temp[0,:,:],vmin=170,vmax=300)
colorbar()
show()

# Ausschnitt
figure(2)
imshow(Temp[0,nord:sued,west:ost],vmin=170,vmax=300)
colorbar()
show()
Line 45: Line 31:
testnan=Temp[0,nord:sued,west:ost] testnan=Temp[0,:,:]
Line 48: Line 34:
# Temperaturprofil
figure(3)
# Temperaturprofile
figure(1)
Line 51: Line 37:
plot(Temp[:,30,150],Lv) plot(Temp[:,16,165],Lv)
Line 53: Line 39:
title('over ice, lat=-15,lon=74')
Line 55: Line 42:
plot(Temp[:,25,150],Lv) plot(Temp[:,16,192],Lv)
Line 57: Line 44:
title('over open water, lat=12,lon=74')
Line 58: Line 46:
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 90: Line 99:
 * Drucklevels   * (./) Drucklevels
Line 92: Line 101:
 * MISSING Values  * (./) Karte mit vorhandenen Profilen - gibt es bei Wolken nie Daten? ja
 * (./) Daten zum testen:
Line 94: Line 104:
 * Koordinaten    [[http://rapidfire.sci.gsfc.nasa.gov/subsets/?subset=AERONET_Hornsund.2009073.terra.250m | 14.03.09]]
Line 96: Line 106:
 * Profile ploten    [[http://rapidfire.sci.gsfc.nasa.gov/subsets/?subset=AERONET_Hornsund.2009077.terra.250m | 18.03.09]]
Line 98: Line 108:
 * Grenzschichtdicke in hPa bestimmen    [[http://rapidfire.sci.gsfc.nasa.gov/subsets/?subset=AERONET_Hornsund.2009089.terra.250m | 30.03.09]]
Line 100: Line 110:
 * Grenzschichtdicke in Meter umrechnen (barometrische Höhenformel)    [[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°-79°; Länge 2° bis 10°


 * (./) Profile plotten

 * (./) Grenzschichtdicke in hPa bestimmen: Werte: jeweils 14 Profile
 
 * (./) 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:

Documentation

Ftp

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

TempPresLvls

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? ja

  • (./) Daten zum testen:

  • (./) Koordinaten - von der Grenzschichtgruppe: Breite 77°-79°; Länge 2° bis 10°

  • (./) Profile plotten

  • (./) Grenzschichtdicke in hPa bestimmen: Werte: jeweils 14 Profile

  • (./) sind überhaupt Inversionen sichtbar? nein - Bodendruck herausfinden

Rtavn00120030330.png

  • (./) 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.)

LehreWiki: OpenSource2010/Project/Project Idea2010/Grenzschichtdicke (last edited 2011-01-17 09:45:59 by anonymous)