Dardar¶
The Dardar-cloud product can be downloaded by using the download method of the corresponding product object. Dardar-cloud contains amongst other ice water content and radar reflectivity at a horizontal resolution of 1.4 km and 60 m vertical resolution between -1.02 km and 25.08 km (see here). For this example we will have a look at the ice water content and radar reflectivity.
[1]:
%load_ext autoreload
%autoreload 2
%matplotlib inline
from datetime import datetime
t_0 = datetime(2008, 4, 14, 12)
t_1 = datetime(2008, 4, 14, 14)
[2]:
from pansat.products.satellite.dardar import dardar_cloud
files_dardar = dardar_cloud.download(t_0, t_1)
Please enter your pansat user password:
············
The variable files_dardar now contains the downloaded files. Now we only need to decipher the data format and extract the data of interest.
[3]:
dataset = dardar_cloud.open(files_dardar[0])
display(dataset)
xarray.Dataset
- range_bins: 436
- rays: 37081
- start_end: 2
- rays(rays)int640 1 2 3 ... 37077 37078 37079 37080
array([ 0, 1, 2, ..., 37078, 37079, 37080])
- range_bins(range_bins)int640 1 2 3 4 5 ... 431 432 433 434 435
array([ 0, 1, 2, ..., 433, 434, 435])
- latitude(rays)float32-0.00754099 ... 0.005906808
- unit :
- degree
- description :
- Spacecraft geodetic latitude.
array([-0.00754099, -0.01720915, -0.02687731, ..., 0.02524377, 0.01557529, 0.00590681], dtype=float32) - longitude(rays)float32-164.67975 -164.68181 ... 170.60281
- unit :
- degree
- description :
- Spacecraft geodetic longitude.
array([-164.67975, -164.68181, -164.68387, ..., 170.60692, 170.60486, 170.60281], dtype=float32) - height(range_bins)float3225080.0 25020.0 ... -960.0 -1020.0
- unit :
- m
- description :
- Elevation of range bin.
array([25080. , 25020. , 24960. , 24900. , 24840. , 24780. , 24720. , 24660. , 24600. , 24540. , 24480. , 24420. , 24360. , 24300. , 24240. , 24180. , 24120. , 24060. , 24000. , 23940. , 23880. , 23820. , 23760. , 23700. , 23640. , 23580. , 23520. , 23460. , 23400. , 23340. , 23280. , 23220. , 23160. , 23100. , 23040. , 22980. , 22920. , 22860. , 22800. , 22740. , 22680. , 22620. , 22560. , 22500. , 22440. , 22380. , 22320. , 22260. , 22200. , 22140. , 22080. , 22020. , 21960. , 21900. , 21840. , 21780. , 21720. , 21660. , 21600. , 21540. , 21480. , 21420. , 21360. , 21300. , 21240. , 21180. , 21120. , 21060. , 21000. , 20940. , 20880. , 20820. , 20760. , 20700. , 20640. , 20580. , 20520. , 20460. , 20400. , 20340. , 20280. , 20220. , 20160. , 20100. , 20040. , 19980. , 19920. , 19860. , 19800. , 19740. , 19680. , 19620. , 19560. , 19500. , 19440. , 19380. , 19320. , 19260. , 19200. , 19140. , 19080. , 19020. , 18960. , 18900. , 18840. , 18780. , 18720. , 18660. , 18600. , 18540. , 18480. , 18420. , 18360. , 18300. , 18240. , 18180. , 18120. , 18060. , 18000. , 17940. , 17880. , 17820. , 17760. , 17700. , 17640. , 17580. , 17520. , 17460. , 17400. , 17340. , 17280. , 17220. , 17160. , 17100. , 17040. , 16980. , 16920. , 16860. , 16800. , 16740. , 16680. , 16620. , 16560. , 16500. , 16440. , 16379.999 , 16320. , 16260. , 16200.001 , 16139.999 , 16080. , 16020. , 15960. , 15900. , 15840. , 15780. , 15720. , 15660. , 15600. , 15540. , 15480. , 15420. , 15360. , 15300. , 15240. , 15180. , 15120. , 15060. , 15000. , 14940. , 14880. , 14820. , 14760. , 14700. , 14640. , 14580. , 14520. , 14460. , 14400. , 14340. , 14280. , 14220. , 14160. , 14100. , 14040. , 13980. , 13920. , 13860. , 13800. , 13740. , 13680. , 13620. , 13560. , 13500. , 13440. , 13380. , 13320. , 13260. , 13200. , 13140. , 13080. , 13020. , 12960. , 12900. , 12840. , 12780. , 12720. , 12660. , 12600. , 12540. , 12480. , 12420. , 12360. , 12300. , 12240. , 12180. , 12120. , 12060. , 12000. , 11940. , 11880. , 11820. , 11760. , 11700. , 11640. , 11580. , 11520. , 11460. , 11400. , 11340. , 11280. , 11220. , 11160. , 11100. , 11040. , 10980. , 10920. , 10860. , 10800. , 10740. , 10680. , 10620. , 10560. , 10500. , 10440. , 10380. , 10320. , 10260. , 10200. , 10140. , 10080. , 10020. , 9960. , 9900. , 9840. , 9780. , 9720. , 9660. , 9600. , 9540. , 9480. , 9420. , 9360. , 9300. , 9240. , 9180. , 9120. , 9060. , 9000. , 8940. , 8880. , 8820. , 8760. , 8700. , 8640. , 8580. , 8520. , 8460. , 8400. , 8340. , 8280. , 8220. , 8160. , 8100.0005, 8040. , 7980. , 7920. , 7860. , 7800. , 7740. , 7680. , 7620. , 7560. , 7500. , 7440. , 7380. , 7320. , 7260. , 7200. , 7140. , 7080. , 7020. , 6960. , 6900. , 6840. , 6780. , 6720. , 6660. , 6600. , 6540. , 6480. , 6420. , 6360. , 6300. , 6240. , 6180. , 6120. , 6060. , 6000. , 5940. , 5880. , 5820. , 5760. , 5700. , 5640. , 5580. , 5520. , 5460. , 5400. , 5340. , 5280. , 5220. , 5160. , 5100. , 5040. , 4980. , 4920. , 4860. , 4800. , 4740. , 4680. , 4620. , 4560. , 4500. , 4440. , 4380. , 4320. , 4260. , 4200. , 4140. , 4080. , 4020. , 3960. , 3900. , 3840. , 3780. , 3720. , 3660. , 3600. , 3540. , 3480. , 3420. , 3360. , 3300. , 3240. , 3180. , 3120. , 3060. , 3000. , 2940. , 2880. , 2820. , 2760. , 2700. , 2640. , 2580. , 2520. , 2460. , 2400. , 2340. , 2280. , 2220. , 2160. , 2100. , 2040. , 1980. , 1920. , 1860. , 1800. , 1740. , 1680. , 1620. , 1560. , 1500. , 1440. , 1380. , 1320. , 1260. , 1200. , 1140. , 1080. , 1020. , 960. , 900. , 840. , 780. , 720. , 660. , 600. , 540. , 480. , 420. , 360. , 300. , 240. , 180. , 120. , 60. , -0. , -60. , -120. , -180. , -240. , -300. , -360. , -420. , -480. , -540. , -600. , -660. , -720. , -780. , -840. , -900. , -960. , -1020. ], dtype=float32) - start_time(rays, start_end)float644.823e+08 4.823e+08 ... 4.823e+08
- unit :
- seconds
- description :
- The TAI timestamp for the first and last LIDAR shot averaged in the RADAR footprint. TAI is International Atomic Time: seconds since 00:00:00 Jan 1 1993.
array([[4.82330574e+08, 4.82330574e+08], [4.82330574e+08, 4.82330574e+08], [4.82330574e+08, 4.82330575e+08], ..., [4.82336507e+08, 4.82336507e+08], [4.82336507e+08, 4.82336507e+08], [4.82336507e+08, 4.82336507e+08]])
- iwc(rays, range_bins)float320.0 0.0 0.0 0.0 ... 0.0 0.0 0.0 0.0
- unit :
- kg m-3
array([[0., 0., 0., ..., 0., 0., 0.], [0., 0., 0., ..., 0., 0., 0.], [0., 0., 0., ..., 0., 0., 0.], ..., [0., 0., 0., ..., 0., 0., 0.], [0., 0., 0., ..., 0., 0., 0.], [0., 0., 0., ..., 0., 0., 0.]], dtype=float32) - z(rays, range_bins)float320.0 0.0 ... 0.17179084 0.21428905
- unit :
- mm6 m-3
- description :
- Radar reflectivity.
array([[0. , 0. , 0. , ..., 0.06397349, 0.09268298, 0.13867559], [0. , 0. , 0. , ..., 0.06950243, 0.10046158, 0.14689262], [0. , 0. , 0. , ..., 0.06123504, 0.09036495, 0.13304543], ..., [0. , 0. , 0. , ..., 0.12764388, 0.16255488, 0.20183663], [0. , 0. , 0. , ..., 0.12971793, 0.1599558 , 0.19724227], [0. , 0. , 0. , ..., 0.1348963 , 0.17179084, 0.21428905]], dtype=float32)
[4]:
%matplotlib inline
import matplotlib.pyplot as plt
start = 25000
end = 36000
stride = 1
top = 250
iwc = dataset.iwc[start:end:stride,top:]
lats = dataset.latitude[start:end:stride]
height = dataset.height[top:]/1000
plt.figure(figsize=(15, 5))
plt.pcolormesh(lats, height, iwc.T, cmap=plt.get_cmap("gist_ncar_r"))
plt.colorbar(label=r"IWC [$kg \; m^{-3}$]")
plt.xlabel(r"Latitude [$^\circ\ N$]")
plt.ylabel("Altitude [km]");
plt.title("(a) Ice water content", loc="left")
[4]:
Text(0.0, 1.0, '(a) Ice water content')
[5]:
%matplotlib inline
import matplotlib.pyplot as plt
import numpy as np
from matplotlib.colors import Normalize
start = 25000
end = 36000
stride = 1
top = 250
z = dataset.z[start:end:stride,top:].where(dataset.z > 0)
dbz = 10 * np.log10(z)
lats = dataset.latitude[start:end:stride]
height = dataset.height[top:]/1000
plt.figure(figsize=(15, 5))
plt.pcolormesh(lats, height, dbz.T, norm=Normalize(-30, 40))
plt.colorbar(label=r"Radar reflectivity [dBZ]")
plt.xlabel(r"Latitude [$^\circ\ N$]")
plt.ylabel("Altitude [km]");
plt.title("(b) Radar reflectivity", loc="left")
[5]:
Text(0.0, 1.0, '(b) Radar reflectivity')