Differences between revisions 7 and 49 (spanning 42 versions)
Revision 7 as of 2010-01-11 14:38:15
Size: 731
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:
{{{!#python == Skript ==

{{{#!python
#!/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)
}}}

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:

   [[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°-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)