AVISO eddyv3.2 数据参量

参数含义
amplitudeSSH最高点与有效边界的振幅
effective_area有效闭合比娜姐的面积m2
speed_areaArea enclosed by the speed contour in m^2
effective_contour_height有效边界的海表高度
speed_contour_heightSSH filtered height for speed contour
effective_contour_latitude有效边界的经度
effective_contour_longitude有效边界为纬度
speed_contour_latitude纬度
speed_contour_longitude经度
effective_contour_shape_error有效边界和气最优拟合圆的误差准则3%~83%
speed_contour_shape_error误差
effective_radius有效边界的等效半径
speed_radius半径
inner_contour_height最内部闭合边界的高度
latitude最优拟合圆中心的纬度
longitude最优拟合圆中心的经度
latitude_max最内部闭合圆的纬度
longitude_max最内部闭合圆的经度
num_contoursNumber of contours selected for this eddy
num_point_eNumber of points for effective contour before resampling
num_point_snumber of points for speed contour
data.variables[‘observation_flag’]Virtual Eddy Position 0:观测涡,1:插值涡
observation_numberEddy temporal index in a trajectory,生命周期中的第几天
speed_averageMaximum circum-averaged Speed,Average speed of the contour defining the radius scale “speed_radius”
timedays since 1950-01-01 00:00:00
trackTrajectory identification number
uavg_profileRadial Speed Profile, m/s, Speed averaged values from the effective contour inwards to the smallest contour, evenly spaced points
life生命
life_one生命周期的阶段

所有变量:
amplitude
cost_association
effective_area
effective_contour_height
effective_contour_latitude
effective_contour_longitude
effective_contour_shape_error
effective_radius
inner_contour_height
latitude
latitude_max
longitude
longitude_max
num_contours
num_point_e
num_point_s
observation_flag
observation_number
speed_area
speed_average
speed_contour_height
speed_contour_latitude
speed_contour_longitude
speed_contour_shape_error
speed_radius
time
track
uavg_profile

# -*- coding: utf-8 -*-
"""
Created on Mon Aug 22 15:03:39 2022

@author: Administrator
"""

import pickle
import glob
import numpy as np
import pdb
import datetime
import matplotlib.pyplot as plt
#chl=np.zeros((2937,200))
import h5py
import pandas as pd
import pdb
import json
import numpy as np
import glob
import pickle
import calendar,os
import pdb
import scipy.io as sio
from scipy import signal
import  copy
from math import atan,pi,sin,cos,tan,acos
from matplotlib.path import Path
import math
import netCDF4
import gc
import os
from scipy import interpolate

file='Z:\\data\\AVISO_eddy_dataset\\META3.2_DT_allsat_Anticyclonic_long_19930101_20210802.nc'
nc_obj=netCDF4.Dataset(file)

core={}
''''涡旋的经纬度,经度0-360'''
core['lat']=nc_obj.variables['latitude'][:]  #序列式的纬度
core['lon']=nc_obj.variables['longitude'][:] #序列式

'''涡旋追踪的身份识别代码,按照顺序进行排列'''
core['track']=nc_obj.variables['track'][:] #追踪身份代码,按照顺序来排列的

'''最大环向平均速度最佳拟合圆的半径'''
core['speed_radius']=nc_obj.variables['speed_radius'][:]

'''有效边界的最佳拟合圆的半径'''
core['effective_radius']=nc_obj.variables['effective_radius'][:]

'''时间,days从1950年1月1日开始'''
core['time']=nc_obj.variables['time'][:]

'''SSH极值点与涡旋有效边界间的振幅,单位m'''
core['amplitude']=nc_obj.variables['amplitude'][:]

'''径向速度剖面,单位m/s,从有效边界向最内圈等距点的速度平均值'''
'''每个涡旋对应20个点,0-1 R'''
core['uavg_profile']=nc_obj.variables['uavg_profile'][:]

#cost_association 与下一天涡旋的相似性系数
#num_contours 边界的数量
#observation_flag 涡旋标志 0 观测涡旋 1 插值涡旋
#track 涡旋追踪的身份识别代码
#time  时间 days 1950年1月1日
#observation_number 涡旋从识别开始的第几天 按顺序排列

#amplitude SSH的极值到有效边界的高度差
#uavg_profile 地转流剖面,由有效边界向最内圈延伸的径向剖面
#effective_area 有效边界所包含的面积
#effective_radius 有效边界拟合圆的等效面积半径
#effective_contour_height 有效边界的滤波后高度
#effective_contour_latitude 有效边界纬度
#effective_contour_longitude 有效边界经度
#effective_contour_shape_error 与最佳拟合圆之间的标准误差
#num_point_e 重新采样前有效边界的点数量

#speed_average 最大环流速度的平均值
#speed_area 速度边界的面积
#speed_radius
#speed_contour_height
#speed_contour_latitude
#speed_contour_longitude
#speed_contour_shape_error
#num_point_s 速度边界的有效点数量

#inner_contour_height 最小边界的滤波后高度
#latitude_max 内层边界的纬度
#longitude_max 内层边界的经度


#latitude 最佳拟合圆的纬度
#longitude 最佳拟合圆的经度

'''一下数据量太庞大,无法一次性匹配完成'''

file='Z:\\data\\AVISO_eddy_dataset\\META3.2_DT_allsat_Anticyclonic_long_19930101_20210802.nc'
nc_obj=netCDF4.Dataset(file)

'''主要变量'''
flag=nc_obj.variables['observation_flag'][:].data
time=nc_obj.variables['time'][:].data
track=nc_obj.variables['track'][:].data
observation_number=nc_obj.variables['observation_number'][:].data

'''圆变量'''
circle_lon=nc_obj.variables['latitude'][:].data
circle_lat=nc_obj.variables['longitude'][:].data

'''有效边界变量'''
effective_area=nc_obj.variables['effective_area'][:].data
e_contour_lat=nc_obj.variables['effective_contour_latitude'][:].data
e_contour_lon=nc_obj.variables['effective_contour_longitude'][:].data
amp=nc_obj.variables['amplitude'][:].data
uavg_profile=nc_obj.variables['uavg_profile'][:].data
effective_radius=nc_obj.variables['effective_radius'][:].data
num_point_e=nc_obj.variables['num_point_e'][:].data

'''最大速度边界变量'''
speed_average=nc_obj.variables['speed_average'][:].data
speed_area=nc_obj.variables['speed_area'][:].data
speed_radius=nc_obj.variables['speed_radius'][:].data
speed_contour_height=nc_obj.variables['speed_contour_height'][:].data
s_contour_lat=nc_obj.variables['speed_contour_latitude'][:].data
s_contour_lon=nc_obj.variables['speed_contour_longitude'][:].data
num_point_s=nc_obj.variables['num_point_s'][:].data

'''内层边界变量'''
inner_contour_height=nc_obj.variables['inner_contour_height'][:].data
latitude_max=nc_obj.variables['latitude_max'][:].data
longitude_max=nc_obj.variables['longitude_max'][:].data

print(1)
result=[]

track_origin=track[0]
num=0
while num<len(track):
    for i in range(num,len(track)):
        one_track=[]
        if track[i]==track_origin:
            one={}
            
            date=datetime.datetime(1950, 1, 1)+datetime.timedelta(days=time[i])
            date=date.strftime('%Y%m%d')
             
            one['flag']=flag[i]
            one['date']=date
            one['track_num']=track[i]
            one['observation_number']=observation_number[i]
            
            one['circle_lon']=circle_lon[i]
            one['circle_lat']=circle_lat[i]
            one['effective_area']=effective_area[i]
            one['effective_contour']=[e_contour_lon[i],e_contour_lat[i]]
            one['effective_amplitude']=amp[i]
            one['uavg_profile']=uavg_profile[i]
            one['effective_contour_point']=num_point_e[i]
            
            one['speed_average']=speed_average[i]
            one['speed_area']=speed_area[i]
            one['speed_radius']=speed_radius[i]
            one['speed_contour_height']=speed_contour_height[i]
            one['speed_contour']=[s_contour_lon[i],s_contour_lat[i]]
            one['speed_contour_point']=num_point_s[i]
            
            one['inner_contour_height']=inner_contour_height[i]
            one['inner_contour_lat']=latitude_max[i]
            one['inner_contour_lon']=longitude_max[i]
            
            one_track.append(one)
            
        else:
            num=i
            result.append(one_track)
            break
        pdb.set_trace()


  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值