使用matlab对探空站IGRAv2数据进行提取

目录

1.IGRA的下载

2.以CHM00050527-data.txt数据为例:

3.使用matlab进行数据提取:

4.mat文件的构成如下图:

5. Matlab 获取代码可关注微信公众号WZZHHH,或者咸鱼关注:WZZHHH123

6.部分代码展示:


1.IGRA的下载

[IGRA下载介绍,我使用的是普通数据,并非衍生数据!!!],具体下载方法在前面博文当中IGRAv2(探空站)数据介绍二(附txt翻译下载链接和如何下载)_igra数据下载-CSDN博客。

基于matlab进行编写,可以将IGRA数据全部进行提取。


2.以CHM00050527-data.txt数据为例:


下图是原始数据,从1956年开始到2023年,假设我们只需要2020年-2021年。


3.使用matlab进行数据提取:

使用matlab提取数据存到"v2data.mat"中,按照时间进行排列。
每个站点的每年存一个mat文件,名称为:站点名字-年份.mat,如下图所示。

4.提取后的mat文件的构成如下图:

% --------------mat中v2data数据的含义如下所示---------------

        v2data.year:时间(包括年月日小时)

        v2data.datanum:日期数字;

        v2data.release_time:      探测释放时间;

        v2data.elapsed_time:     发射后的经过时间;

        v2data.level_type:          主要的级别类型指示器;

        v2data.minor_level_type:次要级别类型指示器;

        v2data.pressure:            气压;

        v2data.press_flag:          气压处理标志;

        v2data.geo:                    位势;

        v2data.geo_flag:             位势高度处理标志;

        v2data.temp:                   温度;

        v2data.temp_flag:           温度处理标志;

        v2data.rh:                       相对湿度;

        v2data.dp:                      露点温度;

        v2data.wind_dir:             风向;

        v2data.wind_spd:           风速;

        v2data.latitude:              纬度;

        v2data.longitude:           经度;

        v2data.stationID:           站点名称;

5. Matlab 获取代码可关注微信公众号WZZHHH,或者咸鱼关注:WZZHHH123

6.部分代码展示:

```java
%% -----------------------------需要修改的参数--------------------------
% IGRA路径
path_igra = 'D:\DATA\IGRA2\data\';% 数据存放路径
save_igra = 'D:\DATA\';% IGRA数据包含了建站以来数据,挑选所需年份
year = [2020 2021]; % 以2020-2021年为例%% ------------------------------------------------------------------------
% 路径下所有的IGRA的txt文件
igra_d = dir([path_igra,'*.txt']);% 对txt文件逐个读取
for i = 1:size(igra_d,1)% 读取txt文件importIGRA([path_igra igra_d(i).name],save_igra,year);
end%% importIGRAv2%将IGRA v2探测数据文件导入到MATLAB数据结构中;%所有数据均进行了提取%========================================================================%Outputs:%  ------输出结构%   结构在我的公众号有详细介绍(没用的俺也懒得写了,反正数据全部都提出来了)%   年、月、日、小时、level_type、minor_level_type:、气压、位势、温度%   露点温度、风向、风速、相对湿度、纬度 、经度%  ==================================================================%Input:%   filename:IGRA v2数据txt文件的文件名和路径%   save_igra: 数据保存地址%   year:所需要数据的年份function importIGRA(filename,save_igra,year)% 读取头文件
dataForLength = fileread(filename); % 通过查找#的所有数据的数量,"#"表示标头,并且位于所有数据的开头
count = length(dataForLength(dataForLength == 35));
clear dataForLength; %清空数据块
header = cell(count,1);  % 预分配头数组
raw = cell(1,count);     % 预分配原始数据数组fid = fopen(filename);   % 打开文件
for r = 1:count header{r} = textscan(fid,'#%3c%8c%4c%2c%2c%2c%4f%4f%8c%8c%7f%8f', 1);%这是头文件的介绍,根据字符的具体位置判定它是什么。
%例如:#USM00072501 1994 09 03 00 2314  166 ncdc6301 ncdc6301  408656  -728647
%     #%#%3c%8f%4f%2f%2f%2f%4f%4f%8c%8c%7f%8f
%     #-开始头注
%1:   %3c-标识符:国家代码+站点网络代码(3个字符)
%2:   %8c-工作站ID(8个字符)
%3:   %4f - 年 (4位数字)
%4:   %2f - 月 (2位数字)
%5:   %2f - 日 (2位数字)
%6:   %2f - 小时 (2位数字)
%7:   %4f - release time (4位数字)
%8:   %4f - number of levels (4位数字)
%9:   %8c - pressure level source (8个字符)是探空站压力等级的数据源代码。
%10:  %8c - other level source (8个字符)
%11:  %7f 纬度(7位数字)
%12:  %8f 经度(8位数字)%  在文本末尾输入1可以调用读取标题的次数raw{r} = textscan(fid, '%51c', header{r}{8});
```


 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/2808114.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

用什么软件制作电子杂志

想要制作高大上的电子杂志?别再烦恼啦!今天给大家推荐一款超级实用的软件,让你轻松制作出专业水准的电子杂志! 这款软件功能强大,操作简单,适合所有对设计感兴趣的小伙伴们。无论是新手还是专业设计师&…

神经网络系列---感知机(Neuron)

文章目录 感知机(Neuron)感知机(Neuron)的决策函数可以表示为:感知机(Neuron)的学习算法主要包括以下步骤:感知机可以实现逻辑运算中的AND、OR、NOT和异或(XOR)运算。 感知机(Neuron) 感知机(Neuron)是一种简单而有效的二分类算法,用于将输入…

Cenos7搭建gitLib服务器(全网最详细)

vm安装Cenos7可参考以下链接 VM安装Cenos7(全网超详细保姆教程)_vm centos7安装教程-CSDN博客 一.安装并配置必要的依赖关系 1.1安装依赖包 安装curl、policycoreutils-python、openssh-server依赖包 yum install -y curl policycoreutils-python openssh-server 在这个…

【嵌入式实践】【芝麻】【目录】从0到1给电动车添加指纹锁

0. 前言 该项目是基于stm32F103和指纹模块做了一个通过指纹锁控制电动车的小工具。支持添加指纹、删除指纹,电动车进入P档等待时计时,计时超过5min则自动锁车,计时过程中按刹车可中断P档状态,同时中断锁车计时。改项目我称之为“芝…

Zookeeper客户端命令、JAVA API、监听原理、写数据原理以及案例

1. Zookeeper节点信息 指定服务端,启动客户端命令: bin/zkCli.sh -server 服务端主机名:端口号 1)ls / 查看根节点下面的子节点 ls -s / 查看根节点下面的子节点以及根节点详细信息 其中,cZxid是创建节点的事务id&#xff0c…

【Java程序设计】【C00302】基于Springboot的校园失物招领管理系统(有论文)

基于Springboot的校园失物招领管理系统(有论文) 项目简介项目获取开发环境项目技术运行截图 项目简介 这是一个基于Springboot的校园失物招领网站,本系统有管理员以及用户二种角色权限; 系统整体功能有:操作日志管理、…

[晓理紫]每日论文分享(有中文摘要,源码或项目地址)--大模型、扩散模型

专属领域论文订阅 VX 关注{晓理紫},每日更新论文,如感兴趣,请转发给有需要的同学,谢谢支持 如果你感觉对你有所帮助,请关注我,每日准时为你推送最新论文。 分类: 大语言模型LLM视觉模型VLM扩散模型视觉语言…

5分钟轻松帮你EasyRecovery恢复女朋友照片

相信有不少男性电脑玩家都会将女朋友的照片存放在电脑硬盘之内,作为珍贵的收藏和回忆。但是在某些时候,如果我们错误地删除了这些照片,或者由于系统问题导致其中的照片丢失,那么我们怎么找回女朋友的照片?这个问题就足…

【统计分析数学模型】聚类分析: 系统聚类法

【统计分析数学模型】聚类分析: 系统聚类法 一、聚类分析1. 基本原理2. 距离的度量(1)变量的测量尺度(2)距离(3)R语言计算距离 三、聚类方法1. 系统聚类法2. K均值法 三、示例1. Q型聚类&#x…

用c# 自己封装的Modbus工具类库源码

前言 Modbus通讯协议在工控行业的应用是很多的,并且也是上位机开发的基本技能之一。相关的类库也很多也很好用。以前只负责用,对其并没有深入学习和了解。前段时间有点空就在这块挖了挖。想做到知其然还要知其所以然。所以就有了自己封装的Modbus工具类库…

28V270V航空交直流线缆:满足飞机对高质量电气连接的需求

28V/270V航空交直流线缆:航空业的“神经系统” 在现代航空业中,无论是飞机、直升机还是其他飞行器,都离不开一种重要的设备,那就是航空28V/270V航空交直流线缆。航空28V/270V航空交直流线缆是飞行器上的电气系统的重要组成部分&am…

6、进程、服务管理

一、进程管理 1.概述 进程是正在执行的程序或命令,每一个进程都独立运行,都有自己的地址空间,并占用一定的系统资源以后开发会遇见: 端口占用出现程序假死、卡死 2.查看系统运行进程 语法 ps 参数ps –a:显示当前终端下的所有…

#FPGA(基础知识)

1.IDE:Quartus II 2.设备:Cyclone II EP2C8Q208C8N 3.实验:正点原子-verilog基础知识 4.时序图: 5.步骤 6.代码:

Spring Session:Redis序列化配置|Session事件监听

Spring Session是可配置的。 Redis Configuration JSON序列化配置 Spring Session默认使用Java对象序列化机制对Session属性值进行序列化。 预定义类SysUser 先来定义一个SysUser类,在下面的演示案例中会用到。 package com.example.demo.model.entity;import j…

Sqli-labs靶场第11关详解[Sqli-labs-less-11]

Sqli-labs-Less-11 前言: SQL注入的三个条件: ①参数可控;(从参数输入就知道参数可控) ②参数过滤不彻底导致恶意代码被执行;(需要在测试过程中判断) ③参数带入数据库执行。&…

Linux环境安装ffmpeg6.x

1.官网ffmpeg下载源码 https://ffmpeg.org/download.html#build-windows 2.未安装x264库则先安装配置 可以先查询x264库: whereis libx264 安装编译工具和依赖库: sudo yum install gcc make cmake mercurial git yasm pkgconfig autoconf automake libtool sudo…

docker搭建zookeeper集群

文章目录 1. 集群搭建2. Leader选举3. Zookeeper集群角色 1. 集群搭建 这里我们使用docker-compose 搭建伪集群 version: 3.1 services:zoo1:image: zookeeperrestart: alwayscontainer_name: zoo1ports:- 2181:2181volumes:- /home/zk/zoo1/data:/data- /home/zk/zoo1/datal…

算法沉淀——动态规划之简单多状态 dp 问题(上)(leetcode真题剖析)

算法沉淀——动态规划之简单多状态 dp 问题上 01.按摩师02.打家劫舍 II03.删除并获得点数04.粉刷房子 01.按摩师 题目链接:https://leetcode.cn/problems/the-masseuse-lcci/ 一个有名的按摩师会收到源源不断的预约请求,每个预约都可以选择接或不接。在…

选择排序-第15届蓝桥第4次STEMA测评Scratch真题精选

[导读]:超平老师的《Scratch蓝桥杯真题解析100讲》已经全部完成,后续会不定期解读蓝桥杯真题,这是Scratch蓝桥杯真题解析第172讲。 第15届蓝桥杯第4次STEMA测评已于2024年1月28日落下帷幕,编程题一共有6题,分别如下&a…

吴恩达deeplearning.ai:Tensorflow训练一个神经网络

以下内容有任何不理解可以翻看我之前的博客哦:吴恩达deeplearning.ai 在之前的博客中。我们陆续学习了各个方面的有关深度学习的内容,今天可以从头开始训练一个神经网络了。 Tensorflow训练神经网络模型 我们使用之前用过的例子: 这个神经…