hpa 发表于 2020-4-8 16:08:38

冷空气的筛选问题

本帖最后由 hpa 于 2020-4-9 10:19 编辑

在Fortran中对单个站点的最低温度进行分析
现已计算出24小时变温,48小时变温以及72小时变温,如果不希望重复计数(一个72小时变温符合72h冷空气活动标准,可能他的前24小时,后24小时都可能都符合24h冷空气活动标准,但是本来这就属于一次连续的冷空气活动,这样就会出现重复计数),该如何进行程序设计?
本帖中冷空气过程的判断方法为24h、48h以及72h的变温幅度(以24h为例,即前一日最低温度与本日最低温度之差。)现在是一个时间长度为18627的序列,由于变温时长标准不同(如图)导致其中的冷空气的计数可能会重叠,现在为了避免重复计数,希望大佬们能给一些启发。

li913 发表于 2020-4-9 09:30:12

你需要解释一下专业名词,以及判断标准,具体算法。

hpa 发表于 2020-4-9 09:56:15

li913 发表于 2020-4-9 09:30
你需要解释一下专业名词,以及判断标准,具体算法。

哦哦,好的,谢谢前辈的提醒

necrohan 发表于 2020-4-9 14:26:04

我不了解这个专业,大概明白了。
我觉得需要变温有对应的时间区间信息,根据时间信息判断24小时变温是否包含在48小时或72小时变温里面,然后处理。
比如:
0201-0202   这里用4位数代表月日,表示2月1日到2日是24小时变温
0201-0204   表示2月1日到2月4日是72小时变温
那么比较一下数值大小就能得到包含的关系。

necrohan 发表于 2020-4-9 14:29:17

另外,fortran主要是数值计算,文本处理不是fortran的强项,除非是延续以前的工作或者你对fortran很熟悉。

hpa 发表于 2020-4-9 14:31:29

necrohan 发表于 2020-4-9 14:26
我不了解这个专业,大概明白了。
我觉得需要变温有对应的时间区间信息,根据时间信息判断24小时变温是否包 ...

前辈,我是这样想的,直接建立一个与时间序列长度相同的数组,但是内容全部为0,然后分别让三个数组中满足冷空气条件的向这个刚建立的一维数组中输出1,这样最后就可以用1的分布来判断冷空气的次数了

hpa 发表于 2020-4-9 14:55:14

necrohan 发表于 2020-4-9 14:29
另外,fortran主要是数值计算,文本处理不是fortran的强项,除非是延续以前的工作或者你对fortran很熟悉。 ...

嗯嗯,好的,谢谢前辈的提醒

necrohan 发表于 2020-4-9 14:57:00

hpa 发表于 2020-4-9 14:31
前辈,我是这样想的,直接建立一个与时间序列长度相同的数组,但是内容全部为0,然后分别让三个数组中满 ...

具体的我不懂,只要有办法就好。

hpa 发表于 2020-4-9 22:52:25

necrohan 发表于 2020-4-9 14:57
具体的我不懂,只要有办法就好。

好的,谢谢您的指导,前辈
页: [1]
查看完整版本: 冷空气的筛选问题