地球磁场范围值
全新函数 CoordinateBounds 和 CoordinateBoundingBox 可以找出多维数组中每个维数的极值. 该范例找出给定区域的地球磁场的范围值.
根据经纬度定义接近北极的区域.
In[1]:=
![Click for copyable input](assets.zh/ranges-of-values-of-the-earths-magnetic-field/In_7.png)
lat = {65, 85};
lon = {-30, 30};
在世界地图上绘制该区域.
In[2]:=
![Click for copyable input](assets.zh/ranges-of-values-of-the-earths-magnetic-field/In_8.png)
GeoGraphics[GeoBoundsRegion[{lat, lon}], GeoGridLines -> Automatic,
GeoZoomLevel -> 5]
Out[2]=
![](assets.zh/ranges-of-values-of-the-earths-magnetic-field/O_7.png)
生成该区域的地球磁场数据.
In[3]:=
![Click for copyable input](assets.zh/ranges-of-values-of-the-earths-magnetic-field/In_9.png)
data = GeomagneticModelData[Transpose[{lat, lon}], GeoZoomLevel -> 1]
Out[3]=
![](assets.zh/ranges-of-values-of-the-earths-magnetic-field/O_8.png)
从该数据提取地球的磁场分量.
In[4]:=
![Click for copyable input](assets.zh/ranges-of-values-of-the-earths-magnetic-field/In_10.png)
components = {"NorthComponent", "EastComponent", "DownComponent"};
arr = Lookup[data, components]
Out[4]=
![](assets.zh/ranges-of-values-of-the-earths-magnetic-field/O_9.png)
将数组列表转化为 3-向量的数组.
In[5]:=
![Click for copyable input](assets.zh/ranges-of-values-of-the-earths-magnetic-field/In_11.png)
qa = Transpose[QuantityArray[arr], {3, 1, 2}]
Out[5]=
![](assets.zh/ranges-of-values-of-the-earths-magnetic-field/O_10.png)
以下为指定区域地球磁场分量的范围.
In[6]:=
![Click for copyable input](assets.zh/ranges-of-values-of-the-earths-magnetic-field/In_12.png)
Thread[components -> CoordinateBounds[qa]]
Out[6]=
![](assets.zh/ranges-of-values-of-the-earths-magnetic-field/O_11.png)