forked from nmcdev/meteva
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
5 changed files
with
1,280 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
164 changes: 164 additions & 0 deletions
164
tests/jupyter/showdoc/.ipynb_checkpoints/mem_position_score-checkpoint.ipynb
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,164 @@ | ||
{ | ||
"cells": [ | ||
{ | ||
"cell_type": "code", | ||
"execution_count": 1, | ||
"metadata": {}, | ||
"outputs": [], | ||
"source": [ | ||
"%matplotlib inline\n", | ||
"%load_ext autoreload\n", | ||
"%autoreload 2\n", | ||
"import meteva.method as mem\n", | ||
"import meteva.base as meb\n", | ||
"import numpy as np" | ||
] | ||
}, | ||
{ | ||
"cell_type": "code", | ||
"execution_count": 4, | ||
"metadata": {}, | ||
"outputs": [], | ||
"source": [ | ||
"#生成算法测试数据\n", | ||
"lon_ob = np.array([130,131,132,133])\n", | ||
"lat_ob = np.array([30,31,32,33])\n", | ||
"\n", | ||
"lon_fo = np.array([131,132,133,134])\n", | ||
"lat_fo = np.array([31,32,33,34])\n" | ||
] | ||
}, | ||
{ | ||
"cell_type": "markdown", | ||
"metadata": {}, | ||
"source": [ | ||
"# 位置误差\n", | ||
"**<font face=\"黑体\" color=blue size = 5> distance(lon_ob,lat_ob,lon_fo,lat_fo,on_earth_surface = True)</font>** \n", | ||
" \n", | ||
"计算两组位置之间的两两距离的平均。\n", | ||
"\n", | ||
"|参数|说明| \n", | ||
"|:--|:--| \n", | ||
"|**<font face=\"黑体\" color=blue size = 5>lon_ob</font>**|观测的经度,numpy数组| \n", | ||
"|**<font face=\"黑体\" color=blue size = 5>lat_ob</font>**|观测的纬度,numpy数组,和lon_ob的shape必须一致| \n", | ||
"|**<font face=\"黑体\" color=blue size = 5>lon_fo</font>**|预报的经度,numpy数组,numpy可以比lat_ob高一维(用于同时进行多家预报结果检验),lon_fo.shape低维与lat_ob.shape保持一致| \n", | ||
"|**<font face=\"黑体\" color=blue size = 5>lat_fo</font>**|预报的纬度,numpy数组,numpy可以比lat_ob高一维(用于同时进行多家预报结果检验),lat_fo.shape低维与lat_ob.shape保持一致,和lon_fo的shape必须一致| \n", | ||
"|<font face=\"黑体\" color=blue size=5>return</font>|位置误差的平均值,如果lat_fo和lat_ob的shape一致,说明只有一家预报,则返回实数,否则说明是在同时检验多家预报,返回结果为一维数组| \n", | ||
"\n", | ||
"**调用示例:** \n" | ||
] | ||
}, | ||
{ | ||
"cell_type": "code", | ||
"execution_count": 11, | ||
"metadata": {}, | ||
"outputs": [ | ||
{ | ||
"name": "stdout", | ||
"output_type": "stream", | ||
"text": [ | ||
"145.79061830031182\n" | ||
] | ||
} | ||
], | ||
"source": [ | ||
"dis = mem.distance(lon_ob,lat_ob,lon_fo,lat_fo)\n", | ||
"print(dis)" | ||
] | ||
}, | ||
{ | ||
"cell_type": "markdown", | ||
"metadata": {}, | ||
"source": [ | ||
"# 位置误差统计中间量\n", | ||
"**<font face=\"黑体\" color=blue size = 5> tdis(lon_ob,lat_ob,lon_fo,lat_fo,on_earth_surface = True)</font>** \n", | ||
" \n", | ||
"为方便开展并行计算,计算两组位置之间的误差的平均值统计两个中间量:样本数,位置误差总和。\n", | ||
"\n", | ||
"|参数|说明| \n", | ||
"|:--|:--| \n", | ||
"|**<font face=\"黑体\" color=blue size = 5>lon_ob</font>**|观测的经度,numpy数组| \n", | ||
"|**<font face=\"黑体\" color=blue size = 5>lat_ob</font>**|观测的纬度,numpy数组,和lon_ob的shape必须一致| \n", | ||
"|**<font face=\"黑体\" color=blue size = 5>lon_fo</font>**|预报的经度,numpy数组,numpy可以比lat_ob高一维(用于同时进行多家预报结果检验),lon_fo.shape低维与lat_ob.shape保持一致| \n", | ||
"|**<font face=\"黑体\" color=blue size = 5>lat_fo</font>**|预报的纬度,numpy数组,numpy可以比lat_ob高一维(用于同时进行多家预报结果检验),lat_fo.shape低维与lat_ob.shape保持一致,和lon_fo的shape必须一致| \n", | ||
"|<font face=\"黑体\" color=blue size=5>return</font>|根据预报和观测的风向数据,统计得到的样本数、位置误差的总和,lat_fo和lat_ob的shape一致,则说明只有一家预报,此时返回一维的数据,size= 2。 如果lat_fo和lat_ob的shape不一致,则说明有多个预报,则返回的数据shape = (预报成员数,2)| \n", | ||
"\n", | ||
"**调用示例:** \n" | ||
] | ||
}, | ||
{ | ||
"cell_type": "code", | ||
"execution_count": 10, | ||
"metadata": {}, | ||
"outputs": [ | ||
{ | ||
"name": "stdout", | ||
"output_type": "stream", | ||
"text": [ | ||
"[ 4. 583.1624732]\n" | ||
] | ||
} | ||
], | ||
"source": [ | ||
"tdis_array = mem.tdis(lon_ob,lat_ob,lon_fo,lat_fo)\n", | ||
"print(tdis_array)" | ||
] | ||
}, | ||
{ | ||
"cell_type": "markdown", | ||
"metadata": {}, | ||
"source": [ | ||
"# 位置误差(并行)\n", | ||
"**<font face=\"黑体\" color=blue size = 5>distance_tdis(tdis_array)</font>** \n", | ||
"\n", | ||
"基于中间统计量计算位置误差的平均值\n", | ||
"\n", | ||
"|参数|说明| \n", | ||
"|:--|:--| \n", | ||
"|**<font face=\"黑体\" color=blue size = 5>tdis_array</font>**|包含检验中间结果的多维数组,其中最后一维长度为2,分别记录了样本数数,位置误差的总和,它通常是tdis函数的计算结果,或者计算结果的累加| \n", | ||
"|<font face=\"黑体\" color=blue size=5>return</font>|位置误差的平均值,nasws_array少了最后一维| \n", | ||
"\n", | ||
"**调用示例:** " | ||
] | ||
}, | ||
{ | ||
"cell_type": "code", | ||
"execution_count": 12, | ||
"metadata": {}, | ||
"outputs": [ | ||
{ | ||
"name": "stdout", | ||
"output_type": "stream", | ||
"text": [ | ||
"145.79061830031182\n" | ||
] | ||
} | ||
], | ||
"source": [ | ||
"dis = mem.distance_tdis(tdis_array)\n", | ||
"print(dis)" | ||
] | ||
} | ||
], | ||
"metadata": { | ||
"kernelspec": { | ||
"display_name": "Python 3", | ||
"language": "python", | ||
"name": "python3" | ||
}, | ||
"language_info": { | ||
"codemirror_mode": { | ||
"name": "ipython", | ||
"version": 3 | ||
}, | ||
"file_extension": ".py", | ||
"mimetype": "text/x-python", | ||
"name": "python", | ||
"nbconvert_exporter": "python", | ||
"pygments_lexer": "ipython3", | ||
"version": "3.7.6" | ||
} | ||
}, | ||
"nbformat": 4, | ||
"nbformat_minor": 4 | ||
} |
Oops, something went wrong.