gphys 1.1.1a

Sign up to get free protection for your applications and to get access to all the features.
Files changed (428) hide show
  1. data/ChangeLog +1777 -0
  2. data/LICENSE.txt +34 -0
  3. data/README +33 -0
  4. data/Rakefile +57 -0
  5. data/TODO_ep_flux +6 -0
  6. data/bin/gdir_client +27 -0
  7. data/bin/gdir_server +129 -0
  8. data/bin/gpaop +146 -0
  9. data/bin/gpcat +148 -0
  10. data/bin/gpcut +102 -0
  11. data/bin/gpedit +228 -0
  12. data/bin/gplist +68 -0
  13. data/bin/gpmath +120 -0
  14. data/bin/gpmaxmin +128 -0
  15. data/bin/gpprint +60 -0
  16. data/bin/gpvect +706 -0
  17. data/bin/gpview +704 -0
  18. data/bin/grads2nc_with_gphys +61 -0
  19. data/doc/attribute.html +19 -0
  20. data/doc/attributenetcdf.html +15 -0
  21. data/doc/axis.html +376 -0
  22. data/doc/coordmapping.html +111 -0
  23. data/doc/coordtransform.html +36 -0
  24. data/doc/derivative/gphys-derivative.html +80 -0
  25. data/doc/derivative/index.html +21 -0
  26. data/doc/derivative/index.rd +14 -0
  27. data/doc/derivative/math-doc/document/document.css +30 -0
  28. data/doc/derivative/math-doc/document/document.html +57 -0
  29. data/doc/derivative/math-doc/document/images.aux +1 -0
  30. data/doc/derivative/math-doc/document/images.log +385 -0
  31. data/doc/derivative/math-doc/document/images.pl +186 -0
  32. data/doc/derivative/math-doc/document/images.tex +364 -0
  33. data/doc/derivative/math-doc/document/img1.png +0 -0
  34. data/doc/derivative/math-doc/document/img10.png +0 -0
  35. data/doc/derivative/math-doc/document/img11.png +0 -0
  36. data/doc/derivative/math-doc/document/img12.png +0 -0
  37. data/doc/derivative/math-doc/document/img13.png +0 -0
  38. data/doc/derivative/math-doc/document/img14.png +0 -0
  39. data/doc/derivative/math-doc/document/img15.png +0 -0
  40. data/doc/derivative/math-doc/document/img16.png +0 -0
  41. data/doc/derivative/math-doc/document/img17.png +0 -0
  42. data/doc/derivative/math-doc/document/img18.png +0 -0
  43. data/doc/derivative/math-doc/document/img19.png +0 -0
  44. data/doc/derivative/math-doc/document/img2.png +0 -0
  45. data/doc/derivative/math-doc/document/img20.png +0 -0
  46. data/doc/derivative/math-doc/document/img21.png +0 -0
  47. data/doc/derivative/math-doc/document/img22.png +0 -0
  48. data/doc/derivative/math-doc/document/img23.png +0 -0
  49. data/doc/derivative/math-doc/document/img24.png +0 -0
  50. data/doc/derivative/math-doc/document/img25.png +0 -0
  51. data/doc/derivative/math-doc/document/img26.png +0 -0
  52. data/doc/derivative/math-doc/document/img27.png +0 -0
  53. data/doc/derivative/math-doc/document/img28.png +0 -0
  54. data/doc/derivative/math-doc/document/img29.png +0 -0
  55. data/doc/derivative/math-doc/document/img3.png +0 -0
  56. data/doc/derivative/math-doc/document/img30.png +0 -0
  57. data/doc/derivative/math-doc/document/img4.png +0 -0
  58. data/doc/derivative/math-doc/document/img5.png +0 -0
  59. data/doc/derivative/math-doc/document/img6.png +0 -0
  60. data/doc/derivative/math-doc/document/img7.png +0 -0
  61. data/doc/derivative/math-doc/document/img8.png +0 -0
  62. data/doc/derivative/math-doc/document/img9.png +0 -0
  63. data/doc/derivative/math-doc/document/index.html +57 -0
  64. data/doc/derivative/math-doc/document/labels.pl +13 -0
  65. data/doc/derivative/math-doc/document/next.png +0 -0
  66. data/doc/derivative/math-doc/document/next_g.png +0 -0
  67. data/doc/derivative/math-doc/document/node1.html +238 -0
  68. data/doc/derivative/math-doc/document/node2.html +75 -0
  69. data/doc/derivative/math-doc/document/prev.png +0 -0
  70. data/doc/derivative/math-doc/document/prev_g.png +0 -0
  71. data/doc/derivative/math-doc/document/up.png +0 -0
  72. data/doc/derivative/math-doc/document/up_g.png +0 -0
  73. data/doc/derivative/math-doc/document.pdf +0 -0
  74. data/doc/derivative/math-doc/document.tex +158 -0
  75. data/doc/derivative/numru-derivative.html +129 -0
  76. data/doc/ep_flux/ep_flux.html +469 -0
  77. data/doc/ep_flux/ggraph_on_merdional_section.html +71 -0
  78. data/doc/ep_flux/index.html +31 -0
  79. data/doc/ep_flux/index.rd +24 -0
  80. data/doc/ep_flux/math-doc/document/WARNINGS +1 -0
  81. data/doc/ep_flux/math-doc/document/contents.png +0 -0
  82. data/doc/ep_flux/math-doc/document/crossref.png +0 -0
  83. data/doc/ep_flux/math-doc/document/document.css +30 -0
  84. data/doc/ep_flux/math-doc/document/document.html +101 -0
  85. data/doc/ep_flux/math-doc/document/images.aux +1 -0
  86. data/doc/ep_flux/math-doc/document/images.log +1375 -0
  87. data/doc/ep_flux/math-doc/document/images.pl +1328 -0
  88. data/doc/ep_flux/math-doc/document/images.tex +1471 -0
  89. data/doc/ep_flux/math-doc/document/img1.png +0 -0
  90. data/doc/ep_flux/math-doc/document/img10.png +0 -0
  91. data/doc/ep_flux/math-doc/document/img100.png +0 -0
  92. data/doc/ep_flux/math-doc/document/img101.png +0 -0
  93. data/doc/ep_flux/math-doc/document/img102.png +0 -0
  94. data/doc/ep_flux/math-doc/document/img103.png +0 -0
  95. data/doc/ep_flux/math-doc/document/img104.png +0 -0
  96. data/doc/ep_flux/math-doc/document/img105.png +0 -0
  97. data/doc/ep_flux/math-doc/document/img106.png +0 -0
  98. data/doc/ep_flux/math-doc/document/img107.png +0 -0
  99. data/doc/ep_flux/math-doc/document/img108.png +0 -0
  100. data/doc/ep_flux/math-doc/document/img109.png +0 -0
  101. data/doc/ep_flux/math-doc/document/img11.png +0 -0
  102. data/doc/ep_flux/math-doc/document/img110.png +0 -0
  103. data/doc/ep_flux/math-doc/document/img111.png +0 -0
  104. data/doc/ep_flux/math-doc/document/img112.png +0 -0
  105. data/doc/ep_flux/math-doc/document/img113.png +0 -0
  106. data/doc/ep_flux/math-doc/document/img114.png +0 -0
  107. data/doc/ep_flux/math-doc/document/img115.png +0 -0
  108. data/doc/ep_flux/math-doc/document/img116.png +0 -0
  109. data/doc/ep_flux/math-doc/document/img117.png +0 -0
  110. data/doc/ep_flux/math-doc/document/img118.png +0 -0
  111. data/doc/ep_flux/math-doc/document/img119.png +0 -0
  112. data/doc/ep_flux/math-doc/document/img12.png +0 -0
  113. data/doc/ep_flux/math-doc/document/img120.png +0 -0
  114. data/doc/ep_flux/math-doc/document/img121.png +0 -0
  115. data/doc/ep_flux/math-doc/document/img122.png +0 -0
  116. data/doc/ep_flux/math-doc/document/img123.png +0 -0
  117. data/doc/ep_flux/math-doc/document/img124.png +0 -0
  118. data/doc/ep_flux/math-doc/document/img125.png +0 -0
  119. data/doc/ep_flux/math-doc/document/img126.png +0 -0
  120. data/doc/ep_flux/math-doc/document/img127.png +0 -0
  121. data/doc/ep_flux/math-doc/document/img128.png +0 -0
  122. data/doc/ep_flux/math-doc/document/img129.png +0 -0
  123. data/doc/ep_flux/math-doc/document/img13.png +0 -0
  124. data/doc/ep_flux/math-doc/document/img130.png +0 -0
  125. data/doc/ep_flux/math-doc/document/img131.png +0 -0
  126. data/doc/ep_flux/math-doc/document/img132.png +0 -0
  127. data/doc/ep_flux/math-doc/document/img133.png +0 -0
  128. data/doc/ep_flux/math-doc/document/img134.png +0 -0
  129. data/doc/ep_flux/math-doc/document/img135.png +0 -0
  130. data/doc/ep_flux/math-doc/document/img136.png +0 -0
  131. data/doc/ep_flux/math-doc/document/img137.png +0 -0
  132. data/doc/ep_flux/math-doc/document/img138.png +0 -0
  133. data/doc/ep_flux/math-doc/document/img139.png +0 -0
  134. data/doc/ep_flux/math-doc/document/img14.png +0 -0
  135. data/doc/ep_flux/math-doc/document/img140.png +0 -0
  136. data/doc/ep_flux/math-doc/document/img141.png +0 -0
  137. data/doc/ep_flux/math-doc/document/img142.png +0 -0
  138. data/doc/ep_flux/math-doc/document/img143.png +0 -0
  139. data/doc/ep_flux/math-doc/document/img144.png +0 -0
  140. data/doc/ep_flux/math-doc/document/img145.png +0 -0
  141. data/doc/ep_flux/math-doc/document/img146.png +0 -0
  142. data/doc/ep_flux/math-doc/document/img147.png +0 -0
  143. data/doc/ep_flux/math-doc/document/img148.png +0 -0
  144. data/doc/ep_flux/math-doc/document/img149.png +0 -0
  145. data/doc/ep_flux/math-doc/document/img15.png +0 -0
  146. data/doc/ep_flux/math-doc/document/img150.png +0 -0
  147. data/doc/ep_flux/math-doc/document/img151.png +0 -0
  148. data/doc/ep_flux/math-doc/document/img152.png +0 -0
  149. data/doc/ep_flux/math-doc/document/img153.png +0 -0
  150. data/doc/ep_flux/math-doc/document/img154.png +0 -0
  151. data/doc/ep_flux/math-doc/document/img155.png +0 -0
  152. data/doc/ep_flux/math-doc/document/img156.png +0 -0
  153. data/doc/ep_flux/math-doc/document/img157.png +0 -0
  154. data/doc/ep_flux/math-doc/document/img158.png +0 -0
  155. data/doc/ep_flux/math-doc/document/img159.png +0 -0
  156. data/doc/ep_flux/math-doc/document/img16.png +0 -0
  157. data/doc/ep_flux/math-doc/document/img160.png +0 -0
  158. data/doc/ep_flux/math-doc/document/img161.png +0 -0
  159. data/doc/ep_flux/math-doc/document/img162.png +0 -0
  160. data/doc/ep_flux/math-doc/document/img163.png +0 -0
  161. data/doc/ep_flux/math-doc/document/img164.png +0 -0
  162. data/doc/ep_flux/math-doc/document/img165.png +0 -0
  163. data/doc/ep_flux/math-doc/document/img166.png +0 -0
  164. data/doc/ep_flux/math-doc/document/img167.png +0 -0
  165. data/doc/ep_flux/math-doc/document/img168.png +0 -0
  166. data/doc/ep_flux/math-doc/document/img169.png +0 -0
  167. data/doc/ep_flux/math-doc/document/img17.png +0 -0
  168. data/doc/ep_flux/math-doc/document/img170.png +0 -0
  169. data/doc/ep_flux/math-doc/document/img171.png +0 -0
  170. data/doc/ep_flux/math-doc/document/img172.png +0 -0
  171. data/doc/ep_flux/math-doc/document/img173.png +0 -0
  172. data/doc/ep_flux/math-doc/document/img174.png +0 -0
  173. data/doc/ep_flux/math-doc/document/img175.png +0 -0
  174. data/doc/ep_flux/math-doc/document/img176.png +0 -0
  175. data/doc/ep_flux/math-doc/document/img177.png +0 -0
  176. data/doc/ep_flux/math-doc/document/img178.png +0 -0
  177. data/doc/ep_flux/math-doc/document/img179.png +0 -0
  178. data/doc/ep_flux/math-doc/document/img18.png +0 -0
  179. data/doc/ep_flux/math-doc/document/img180.png +0 -0
  180. data/doc/ep_flux/math-doc/document/img181.png +0 -0
  181. data/doc/ep_flux/math-doc/document/img182.png +0 -0
  182. data/doc/ep_flux/math-doc/document/img183.png +0 -0
  183. data/doc/ep_flux/math-doc/document/img184.png +0 -0
  184. data/doc/ep_flux/math-doc/document/img185.png +0 -0
  185. data/doc/ep_flux/math-doc/document/img186.png +0 -0
  186. data/doc/ep_flux/math-doc/document/img187.png +0 -0
  187. data/doc/ep_flux/math-doc/document/img188.png +0 -0
  188. data/doc/ep_flux/math-doc/document/img189.png +0 -0
  189. data/doc/ep_flux/math-doc/document/img19.png +0 -0
  190. data/doc/ep_flux/math-doc/document/img190.png +0 -0
  191. data/doc/ep_flux/math-doc/document/img191.png +0 -0
  192. data/doc/ep_flux/math-doc/document/img192.png +0 -0
  193. data/doc/ep_flux/math-doc/document/img193.png +0 -0
  194. data/doc/ep_flux/math-doc/document/img194.png +0 -0
  195. data/doc/ep_flux/math-doc/document/img195.png +0 -0
  196. data/doc/ep_flux/math-doc/document/img196.png +0 -0
  197. data/doc/ep_flux/math-doc/document/img197.png +0 -0
  198. data/doc/ep_flux/math-doc/document/img198.png +0 -0
  199. data/doc/ep_flux/math-doc/document/img199.png +0 -0
  200. data/doc/ep_flux/math-doc/document/img2.png +0 -0
  201. data/doc/ep_flux/math-doc/document/img20.png +0 -0
  202. data/doc/ep_flux/math-doc/document/img200.png +0 -0
  203. data/doc/ep_flux/math-doc/document/img21.png +0 -0
  204. data/doc/ep_flux/math-doc/document/img22.png +0 -0
  205. data/doc/ep_flux/math-doc/document/img23.png +0 -0
  206. data/doc/ep_flux/math-doc/document/img24.png +0 -0
  207. data/doc/ep_flux/math-doc/document/img25.png +0 -0
  208. data/doc/ep_flux/math-doc/document/img26.png +0 -0
  209. data/doc/ep_flux/math-doc/document/img27.png +0 -0
  210. data/doc/ep_flux/math-doc/document/img28.png +0 -0
  211. data/doc/ep_flux/math-doc/document/img29.png +0 -0
  212. data/doc/ep_flux/math-doc/document/img3.png +0 -0
  213. data/doc/ep_flux/math-doc/document/img30.png +0 -0
  214. data/doc/ep_flux/math-doc/document/img31.png +0 -0
  215. data/doc/ep_flux/math-doc/document/img32.png +0 -0
  216. data/doc/ep_flux/math-doc/document/img33.png +0 -0
  217. data/doc/ep_flux/math-doc/document/img34.png +0 -0
  218. data/doc/ep_flux/math-doc/document/img35.png +0 -0
  219. data/doc/ep_flux/math-doc/document/img36.png +0 -0
  220. data/doc/ep_flux/math-doc/document/img37.png +0 -0
  221. data/doc/ep_flux/math-doc/document/img38.png +0 -0
  222. data/doc/ep_flux/math-doc/document/img39.png +0 -0
  223. data/doc/ep_flux/math-doc/document/img4.png +0 -0
  224. data/doc/ep_flux/math-doc/document/img40.png +0 -0
  225. data/doc/ep_flux/math-doc/document/img41.png +0 -0
  226. data/doc/ep_flux/math-doc/document/img42.png +0 -0
  227. data/doc/ep_flux/math-doc/document/img43.png +0 -0
  228. data/doc/ep_flux/math-doc/document/img44.png +0 -0
  229. data/doc/ep_flux/math-doc/document/img45.png +0 -0
  230. data/doc/ep_flux/math-doc/document/img46.png +0 -0
  231. data/doc/ep_flux/math-doc/document/img47.png +0 -0
  232. data/doc/ep_flux/math-doc/document/img48.png +0 -0
  233. data/doc/ep_flux/math-doc/document/img49.png +0 -0
  234. data/doc/ep_flux/math-doc/document/img5.png +0 -0
  235. data/doc/ep_flux/math-doc/document/img50.png +0 -0
  236. data/doc/ep_flux/math-doc/document/img51.png +0 -0
  237. data/doc/ep_flux/math-doc/document/img52.png +0 -0
  238. data/doc/ep_flux/math-doc/document/img53.png +0 -0
  239. data/doc/ep_flux/math-doc/document/img54.png +0 -0
  240. data/doc/ep_flux/math-doc/document/img55.png +0 -0
  241. data/doc/ep_flux/math-doc/document/img56.png +0 -0
  242. data/doc/ep_flux/math-doc/document/img57.png +0 -0
  243. data/doc/ep_flux/math-doc/document/img58.png +0 -0
  244. data/doc/ep_flux/math-doc/document/img59.png +0 -0
  245. data/doc/ep_flux/math-doc/document/img6.png +0 -0
  246. data/doc/ep_flux/math-doc/document/img60.png +0 -0
  247. data/doc/ep_flux/math-doc/document/img61.png +0 -0
  248. data/doc/ep_flux/math-doc/document/img62.png +0 -0
  249. data/doc/ep_flux/math-doc/document/img63.png +0 -0
  250. data/doc/ep_flux/math-doc/document/img64.png +0 -0
  251. data/doc/ep_flux/math-doc/document/img65.png +0 -0
  252. data/doc/ep_flux/math-doc/document/img66.png +0 -0
  253. data/doc/ep_flux/math-doc/document/img67.png +0 -0
  254. data/doc/ep_flux/math-doc/document/img68.png +0 -0
  255. data/doc/ep_flux/math-doc/document/img69.png +0 -0
  256. data/doc/ep_flux/math-doc/document/img7.png +0 -0
  257. data/doc/ep_flux/math-doc/document/img70.png +0 -0
  258. data/doc/ep_flux/math-doc/document/img71.png +0 -0
  259. data/doc/ep_flux/math-doc/document/img72.png +0 -0
  260. data/doc/ep_flux/math-doc/document/img73.png +0 -0
  261. data/doc/ep_flux/math-doc/document/img74.png +0 -0
  262. data/doc/ep_flux/math-doc/document/img75.png +0 -0
  263. data/doc/ep_flux/math-doc/document/img76.png +0 -0
  264. data/doc/ep_flux/math-doc/document/img77.png +0 -0
  265. data/doc/ep_flux/math-doc/document/img78.png +0 -0
  266. data/doc/ep_flux/math-doc/document/img79.png +0 -0
  267. data/doc/ep_flux/math-doc/document/img8.png +0 -0
  268. data/doc/ep_flux/math-doc/document/img80.png +0 -0
  269. data/doc/ep_flux/math-doc/document/img81.png +0 -0
  270. data/doc/ep_flux/math-doc/document/img82.png +0 -0
  271. data/doc/ep_flux/math-doc/document/img83.png +0 -0
  272. data/doc/ep_flux/math-doc/document/img84.png +0 -0
  273. data/doc/ep_flux/math-doc/document/img85.png +0 -0
  274. data/doc/ep_flux/math-doc/document/img86.png +0 -0
  275. data/doc/ep_flux/math-doc/document/img87.png +0 -0
  276. data/doc/ep_flux/math-doc/document/img88.png +0 -0
  277. data/doc/ep_flux/math-doc/document/img89.png +0 -0
  278. data/doc/ep_flux/math-doc/document/img9.png +0 -0
  279. data/doc/ep_flux/math-doc/document/img90.png +0 -0
  280. data/doc/ep_flux/math-doc/document/img91.png +0 -0
  281. data/doc/ep_flux/math-doc/document/img92.png +0 -0
  282. data/doc/ep_flux/math-doc/document/img93.png +0 -0
  283. data/doc/ep_flux/math-doc/document/img94.png +0 -0
  284. data/doc/ep_flux/math-doc/document/img95.png +0 -0
  285. data/doc/ep_flux/math-doc/document/img96.png +0 -0
  286. data/doc/ep_flux/math-doc/document/img97.png +0 -0
  287. data/doc/ep_flux/math-doc/document/img98.png +0 -0
  288. data/doc/ep_flux/math-doc/document/img99.png +0 -0
  289. data/doc/ep_flux/math-doc/document/index.html +101 -0
  290. data/doc/ep_flux/math-doc/document/internals.pl +258 -0
  291. data/doc/ep_flux/math-doc/document/labels.pl +265 -0
  292. data/doc/ep_flux/math-doc/document/next.png +0 -0
  293. data/doc/ep_flux/math-doc/document/next_g.png +0 -0
  294. data/doc/ep_flux/math-doc/document/node1.html +104 -0
  295. data/doc/ep_flux/math-doc/document/node10.html +164 -0
  296. data/doc/ep_flux/math-doc/document/node11.html +86 -0
  297. data/doc/ep_flux/math-doc/document/node12.html +166 -0
  298. data/doc/ep_flux/math-doc/document/node13.html +897 -0
  299. data/doc/ep_flux/math-doc/document/node14.html +1065 -0
  300. data/doc/ep_flux/math-doc/document/node15.html +72 -0
  301. data/doc/ep_flux/math-doc/document/node16.html +81 -0
  302. data/doc/ep_flux/math-doc/document/node2.html +82 -0
  303. data/doc/ep_flux/math-doc/document/node3.html +91 -0
  304. data/doc/ep_flux/math-doc/document/node4.html +149 -0
  305. data/doc/ep_flux/math-doc/document/node5.html +330 -0
  306. data/doc/ep_flux/math-doc/document/node6.html +99 -0
  307. data/doc/ep_flux/math-doc/document/node7.html +98 -0
  308. data/doc/ep_flux/math-doc/document/node8.html +83 -0
  309. data/doc/ep_flux/math-doc/document/node9.html +140 -0
  310. data/doc/ep_flux/math-doc/document/prev.png +0 -0
  311. data/doc/ep_flux/math-doc/document/prev_g.png +0 -0
  312. data/doc/ep_flux/math-doc/document/up.png +0 -0
  313. data/doc/ep_flux/math-doc/document/up_g.png +0 -0
  314. data/doc/ep_flux/math-doc/document.pdf +0 -0
  315. data/doc/ep_flux/math-doc/document.tex +2018 -0
  316. data/doc/gdir.html +412 -0
  317. data/doc/gdir_client.html +16 -0
  318. data/doc/gdir_connect_ftp-like.html +61 -0
  319. data/doc/gdir_server.html +45 -0
  320. data/doc/ggraph.html +1615 -0
  321. data/doc/gpcat.html +44 -0
  322. data/doc/gpcut.html +41 -0
  323. data/doc/gphys.html +532 -0
  324. data/doc/gphys_fft.html +324 -0
  325. data/doc/gphys_grads_io.html +69 -0
  326. data/doc/gphys_grib_io.html +82 -0
  327. data/doc/gphys_io.html +120 -0
  328. data/doc/gphys_io_common.html +18 -0
  329. data/doc/gphys_netcdf_io.html +283 -0
  330. data/doc/gplist.html +24 -0
  331. data/doc/gpmath.html +51 -0
  332. data/doc/gpmaxmin.html +31 -0
  333. data/doc/gpprint.html +34 -0
  334. data/doc/gpview.html +270 -0
  335. data/doc/grads2nc_with_gphys.html +21 -0
  336. data/doc/grads_gridded.html +307 -0
  337. data/doc/grib.html +144 -0
  338. data/doc/grid.html +212 -0
  339. data/doc/index.html +133 -0
  340. data/doc/index.rd +127 -0
  341. data/doc/netcdf_convention.html +136 -0
  342. data/doc/unumeric.html +176 -0
  343. data/doc/update +64 -0
  344. data/doc/varray.html +299 -0
  345. data/doc/varraycomposite.html +67 -0
  346. data/ext_coord.c +209 -0
  347. data/ext_init.c +7 -0
  348. data/extconf.rb +42 -0
  349. data/install.rb +130 -0
  350. data/interpo.c +497 -0
  351. data/lib/numru/dcl_mouse.rb +71 -0
  352. data/lib/numru/dclext_datetime_ax.rb +220 -0
  353. data/lib/numru/derivative.rb +348 -0
  354. data/lib/numru/ganalysis/covariance.rb +154 -0
  355. data/lib/numru/ganalysis/eof.rb +298 -0
  356. data/lib/numru/ganalysis/histogram.rb +252 -0
  357. data/lib/numru/ganalysis/met.rb +317 -0
  358. data/lib/numru/ganalysis/planet.rb +182 -0
  359. data/lib/numru/ganalysis.rb +7 -0
  360. data/lib/numru/gdir.rb +1038 -0
  361. data/lib/numru/gdir_connect_ftp-like.rb +149 -0
  362. data/lib/numru/ggraph.rb +5838 -0
  363. data/lib/numru/ggraph_on_merdional_section.rb +178 -0
  364. data/lib/numru/gphys/assoccoords.rb +359 -0
  365. data/lib/numru/gphys/attribute.rb +129 -0
  366. data/lib/numru/gphys/attributenetcdf.rb +80 -0
  367. data/lib/numru/gphys/axis.rb +963 -0
  368. data/lib/numru/gphys/coordmapping.rb +286 -0
  369. data/lib/numru/gphys/coordtransform.rb +209 -0
  370. data/lib/numru/gphys/derivative.rb +314 -0
  371. data/lib/numru/gphys/ep_flux.rb +868 -0
  372. data/lib/numru/gphys/gpcommon.rb +52 -0
  373. data/lib/numru/gphys/gphys.rb +1207 -0
  374. data/lib/numru/gphys/gphys_fft.rb +886 -0
  375. data/lib/numru/gphys/gphys_grads_io.rb +212 -0
  376. data/lib/numru/gphys/gphys_grib_io.rb +214 -0
  377. data/lib/numru/gphys/gphys_gtool3_io.rb +162 -0
  378. data/lib/numru/gphys/gphys_hdfeos5_io.rb +672 -0
  379. data/lib/numru/gphys/gphys_io.rb +452 -0
  380. data/lib/numru/gphys/gphys_io_common.rb +126 -0
  381. data/lib/numru/gphys/gphys_netcdf_io.rb +800 -0
  382. data/lib/numru/gphys/gphys_nusdas_io.rb +132 -0
  383. data/lib/numru/gphys/grads_gridded.rb +1638 -0
  384. data/lib/numru/gphys/grib.rb +2049 -0
  385. data/lib/numru/gphys/grib_params.rb +1465 -0
  386. data/lib/numru/gphys/grid.rb +723 -0
  387. data/lib/numru/gphys/gtool3.rb +771 -0
  388. data/lib/numru/gphys/interpolate.rb +854 -0
  389. data/lib/numru/gphys/narray_ext.rb +34 -0
  390. data/lib/numru/gphys/netcdf_convention.rb +406 -0
  391. data/lib/numru/gphys/subsetmapping.rb +332 -0
  392. data/lib/numru/gphys/unumeric.rb +522 -0
  393. data/lib/numru/gphys/varray.rb +1109 -0
  394. data/lib/numru/gphys/varraycomposite.rb +415 -0
  395. data/lib/numru/gphys/varraygrads.rb +225 -0
  396. data/lib/numru/gphys/varraygrib.rb +177 -0
  397. data/lib/numru/gphys/varraygtool3.rb +226 -0
  398. data/lib/numru/gphys/varrayhdfeos5.rb +451 -0
  399. data/lib/numru/gphys/varraynetcdf.rb +350 -0
  400. data/lib/numru/gphys/varraynusdas.rb +59 -0
  401. data/lib/numru/gphys.rb +9 -0
  402. data/lib/numru/htdir.rb +170 -0
  403. data/multibitIO.c +567 -0
  404. data/sample/cira86_to_nc.rb +122 -0
  405. data/sample/druby_cli1.rb +21 -0
  406. data/sample/druby_cli2.rb +34 -0
  407. data/sample/druby_serv1.rb +30 -0
  408. data/sample/druby_serv2.rb +64 -0
  409. data/sample/ep_flux/demo_NCEP_1.rb +48 -0
  410. data/sample/ep_flux/demo_NCEP_2.rb +57 -0
  411. data/sample/ep_flux/demo_NCEP_3.rb +81 -0
  412. data/sample/ggraph_latlon_labelling_dr002690.rb +159 -0
  413. data/sample/ggraph_mapfit-axes_dr002687.rb +131 -0
  414. data/sample/map_projection.rb +121 -0
  415. data/sample/ncep_theta_coord.rb +79 -0
  416. data/test/eof_slp.rb +28 -0
  417. data/test/mltbit.dat +0 -0
  418. data/test/test_ep_flux.rb +533 -0
  419. data/test/test_multibitIO.rb +19 -0
  420. data/testdata/T.jan.ctl +12 -0
  421. data/testdata/T.jan.dat +0 -0
  422. data/testdata/T.jan.grib +0 -0
  423. data/testdata/T.jan.nc +0 -0
  424. data/testdata/T.jan.packed.withmiss.nc +0 -0
  425. data/testdata/UV.jan.nc +0 -0
  426. data/testdata/assoc_crds.nc +0 -0
  427. data/testdata/cira86.dat +1332 -0
  428. metadata +621 -0
data/doc/gpcat.html ADDED
@@ -0,0 +1,44 @@
1
+ <?xml version="1.0" ?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+ <html xmlns="http://www.w3.org/1999/xhtml">
6
+ <head>
7
+ <title>../bin/gpcat</title>
8
+ </head>
9
+ <body>
10
+ <h1><a name="label-0" id="label-0">NAME</a></h1><!-- RDLabel: "NAME" -->
11
+ <p>gpcat - Read a variable in multiple NetCDF files, concatenate and write them to a single netcdf file. </p>
12
+ <h1><a name="label-1" id="label-1">DESCRIPTION</a></h1><!-- RDLabel: "DESCRIPTION" -->
13
+ <p><em>gpcat</em> is command line tools for read a variable in multiple</p>
14
+ <pre>NetCDF files, concatenate and write them to a single netcdf file.</pre>
15
+ <h1><a name="label-2" id="label-2">USAGE</a></h1><!-- RDLabel: "USAGE" -->
16
+ <pre>% gpcat -v VAR [options] FILE1 FILE2...</pre>
17
+ <h1><a name="label-3" id="label-3">OPTIONS</a></h1><!-- RDLabel: "OPTIONS" -->
18
+ <dl>
19
+ <dt><h4><a name="label-4" id="label-4">-h, --help</a></h4></dt><!-- RDLabel: "-h, &shy;&shy;help" -->
20
+ <dd>
21
+ print this message.
22
+ </dd>
23
+ <dt><h4><a name="label-5" id="label-5">-v var, --variable var</a></h4></dt><!-- RDLabel: "-v var, &shy;&shy;variable var" -->
24
+ <dd>
25
+ variable name (required).
26
+ </dd>
27
+ <dt><h4><a name="label-6" id="label-6">-s sfmt, --slice sfmt</a></h4></dt><!-- RDLabel: "-s sfmt, &shy;&shy;slice sfmt" -->
28
+ <dd>
29
+ slice,thinnng (optional).
30
+ </dd>
31
+ <dt><h4><a name="label-7" id="label-7">-o file, --output file</a></h4></dt><!-- RDLabel: "-o file, &shy;&shy;output file" -->
32
+ <dd>
33
+ output filename (optional). Default output filename is 'gphys.nc'.
34
+ </dd>
35
+ </dl>
36
+ <h1><a name="label-8" id="label-8">HISTORY</a></h1><!-- RDLabel: "HISTORY" -->
37
+ <pre>2005/05/17 S Takehiro (created)
38
+ 2005/08/10 S Takehiro (utilize internal function for printing help message)
39
+ 2005/08/21 S Takehiro (global attributes copied to the output file)
40
+ 2005/08/23 S Takehiro (common methods to gp* command moved to gpcommon.rb)
41
+ 2010/03/10 Y SASAKI (change help block into RD format)</pre>
42
+
43
+ </body>
44
+ </html>
data/doc/gpcut.html ADDED
@@ -0,0 +1,41 @@
1
+ <?xml version="1.0" ?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+ <html xmlns="http://www.w3.org/1999/xhtml">
6
+ <head>
7
+ <title>../bin/gpcut</title>
8
+ </head>
9
+ <body>
10
+ <h1><a name="label-0" id="label-0">NAME</a></h1><!-- RDLabel: "NAME" -->
11
+ <p>gpcut - Extract, slicing and thinning a GPhys variable.</p>
12
+ <h1><a name="label-1" id="label-1">DESCRIPTION</a></h1><!-- RDLabel: "DESCRIPTION" -->
13
+ <p><em>gpcut</em> is command line tools for extract, slicing and thinning a GPhys variables.</p>
14
+ <h1><a name="label-2" id="label-2">USAGE</a></h1><!-- RDLabel: "USAGE" -->
15
+ <pre>% gpcut [options] path@varname[,dimname=pos1[:pos2[:thinning_intv]][,dimname=...]]</pre>
16
+ <h1><a name="label-3" id="label-3">OPTIONS</a></h1><!-- RDLabel: "OPTIONS" -->
17
+ <dl>
18
+ <dt><h4><a name="label-4" id="label-4">-h, --help</a></h4></dt><!-- RDLabel: "-h, &shy;&shy;help" -->
19
+ <dd>
20
+ print this message.
21
+ </dd>
22
+ <dt><h4><a name="label-5" id="label-5">-m dim, --mean dim</a></h4></dt><!-- RDLabel: "-m dim, &shy;&shy;mean dim" -->
23
+ <dd>
24
+ average along dim axis (optional).
25
+ </dd>
26
+ <dt><h4><a name="label-6" id="label-6">-o file, --output file</a></h4></dt><!-- RDLabel: "-o file, &shy;&shy;output file" -->
27
+ <dd>
28
+ output filename (optional).
29
+ Default output filename is 'gphys.nc'.
30
+ </dd>
31
+ </dl>
32
+ <h1><a name="label-7" id="label-7">HISTORY</a></h1><!-- RDLabel: "HISTORY" -->
33
+ <pre>2005/05/17 S Takehiro (created)
34
+ 2005/07/15 S Takehiro (open_gturl method is used for opening gphys variable)
35
+ 2005/08/10 S Takehiro (utilize internal function for printing help message)
36
+ 2005/08/21 S Takehiro (global attributes copied to the output file)
37
+ 2005/08/23 S Takehiro (common methods to gp* command moved to gpcommon.rb)
38
+ 2010/03/10 Y SASAKI (change help block into RD format)</pre>
39
+
40
+ </body>
41
+ </html>
data/doc/gphys.html ADDED
@@ -0,0 +1,532 @@
1
+ <?xml version="1.0" ?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+ <html xmlns="http://www.w3.org/1999/xhtml">
6
+ <head>
7
+ <title>../lib/numru/gphys/gphys.rb</title>
8
+ </head>
9
+ <body>
10
+ <h1><a name="label-0" id="label-0">class NumRu::GPhys</a></h1><!-- RDLabel: "class NumRu::GPhys" -->
11
+ <h2><a name="label-1" id="label-1">Class Methods</a></h2><!-- RDLabel: "Class Methods" -->
12
+ <dl>
13
+ <dt><h4><a name="label-2" id="label-2"><code>GPhys.new(<var>grid</var>, <var>data</var>)</code></a></h4></dt><!-- RDLabel: "GPhys.new" -->
14
+ <dd>
15
+ <p>Constructor.</p>
16
+ <p>ARGUMENTS</p>
17
+ <ul>
18
+ <li>grid (a Grid) : the grid</li>
19
+ <li>data (a VArray) : the data. grid and data must have
20
+ the same shape.</li>
21
+ </ul>
22
+ <p>RETURN VALUE</p>
23
+ <ul>
24
+ <li>a GPhys</li>
25
+ </ul>
26
+ <p>NOTE</p>
27
+ <ul>
28
+ <li>the arguments are NOT duplicated to construct a GPhys.</li>
29
+ </ul></dd>
30
+ <dt><h4><a name="label-3" id="label-3"><code>GPhys.each_along_dims(<var>gphyses</var>, *<var>loopdims</var>){...} # <var>a</var> <var>block</var> <var>is</var> <var>expected</var></code></a></h4></dt><!-- RDLabel: "GPhys.each_along_dims" -->
31
+ <dd>
32
+ <p>Iterator to process GPhys objects too big to read on memory at once.</p>
33
+ <p>Makes a loop (loops) by dividing the GPhys object(s) (<var>gphyses</var>)
34
+ with the dimension(s) specified by <var>loopdims</var>.
35
+ If the return value of the block is an Array, it is assumed to consist
36
+ of GPhys objects, and the return value of this method is an Array
37
+ in which the whole of the results are reconstructed as if no
38
+ iteration is made, which is the same behavior as
39
+ <var>GPhys::IO.each_along_dims_write</var>. If the return value of
40
+ the block is not an Array, this methods returns nil.</p>
41
+ <p>WARNING: Unlike <var>GPhys::IO.each_along_dims_write</var>,
42
+ the results of this method is NOT written in file(s),
43
+ so be careful about memory usage if you put an Array of GPhys as the
44
+ return value of the block. You will probably need to have the size
45
+ of them smaller than input data.</p>
46
+ <p>ARGUMENTS</p>
47
+ <ul>
48
+ <li>gphyses (GPhys or Array of GPhys): GPhys object(s) to be processed.
49
+ All of them must have dimensions specified with <var>loopdims</var>,
50
+ and their lengths must not vary among files. Other dimensions
51
+ are arbitrary, so, for example, <var>gphyses</var> could be
52
+ [a(lon,lat,time), b(lat,time)] as long as loopdims==["time"].</li>
53
+ <li>loopdims (Array of String or Integer) : name (when String) or
54
+ count starting from zero (when Integer) </li>
55
+ <li>expected block : Number of arguments == number of GPhys objects in
56
+ <var>gphyses</var>.</li>
57
+ </ul>
58
+ <p>RETURN VALUE</p>
59
+ <ul>
60
+ <li>If the return value of the block is an Array,
61
+ GPhys objects in which the whole results are written in
62
+ (the Array must consist of GPhys objects).
63
+ If the return value of the block is NOT an Array,
64
+ nil is returned.</li>
65
+ </ul>
66
+ <p>ERRORS</p>
67
+ <p>The following raise exceptions (in addition to errors in arguments).</p>
68
+ <ul>
69
+ <li>Dimensions specified by <var>loopdims</var> are not shared among
70
+ GPhys objects in <var>gphyses</var>.</li>
71
+ <li>Return value of the block is an Array, but it does not consist of
72
+ GPhys objects.</li>
73
+ <li>(Only when the return value of the block is an Array):
74
+ Dimension(s) used for looping (<var>loopdims</var>) is(are) eliminated
75
+ from the returned GPhys objects.</li>
76
+ </ul>
77
+ <p>USAGE</p>
78
+ <p>See the manual of <var>GPhys::IO.each_along_dims_write</var>.</p></dd>
79
+ </dl>
80
+ <h2><a name="label-4" id="label-4">Instance Methods</a></h2><!-- RDLabel: "Instance Methods" -->
81
+ <dl>
82
+ <dt><h4><a name="label-5" id="label-5"><code>data</code></a></h4></dt><!-- RDLabel: "data" -->
83
+ <dd>
84
+ <p>Returns the data object</p>
85
+ <p>RETURN VALUE</p>
86
+ <ul>
87
+ <li>a VArray</li>
88
+ </ul>
89
+ <p>NOTE</p>
90
+ <ul>
91
+ <li>the data object is NOT duplicated.</li>
92
+ </ul></dd>
93
+ <dt><h4><a name="label-6" id="label-6"><code>grid_copy</code></a></h4></dt><!-- RDLabel: "grid_copy" -->
94
+ <dd>
95
+ <p>Returns a copy (deep clone) of the grid object.</p>
96
+ <p>RETURN VALUE</p>
97
+ <ul>
98
+ <li>a Grid</li>
99
+ </ul>
100
+ <p>NOTE</p>
101
+ <ul>
102
+ <li>There is a PROTECTED method grid, which returns
103
+ the grid object without duplicating.</li>
104
+ </ul></dd>
105
+ <dt><h4><a name="label-7" id="label-7"><code>copy</code></a></h4></dt><!-- RDLabel: "copy" -->
106
+ <dd>
107
+ <p>Make a deep clone onto memory</p>
108
+ <p>RETURN VALUE</p>
109
+ <ul>
110
+ <li>a GPhys</li>
111
+ </ul></dd>
112
+ <dt><h4><a name="label-8" id="label-8"><code>name</code></a></h4></dt><!-- RDLabel: "name" -->
113
+ <dd>
114
+ <p>Returns the name of the GPhys object, which is equal to the
115
+ name of the data object in the GPhys object.</p>
116
+ <p>RETURN VALUE</p>
117
+ <ul>
118
+ <li>a String</li>
119
+ </ul></dd>
120
+ <dt><h4><a name="label-9" id="label-9"><code>name=(<var>nm</var>)</code></a></h4></dt><!-- RDLabel: "name=" -->
121
+ <dd>
122
+ <p>Set the name of the GPhys object.</p>
123
+ <p>ARGUMENTS</p>
124
+ <ul>
125
+ <li>nm (String)</li>
126
+ </ul>
127
+ <p>RETURN VALUE</p>
128
+ <ul>
129
+ <li>nm (the argument)</li>
130
+ </ul></dd>
131
+ <dt><h4><a name="label-10" id="label-10"><code>rename(<var>nm</var>)</code></a></h4></dt><!-- RDLabel: "rename" -->
132
+ <dd>
133
+ <p>Same as <a href="#label-9">name=</a>, but self is returned.</p>
134
+ <p>ARGUMENTS</p>
135
+ <ul>
136
+ <li>nm (String)</li>
137
+ </ul>
138
+ <p>RETURN VALUE</p>
139
+ <ul>
140
+ <li>self</li>
141
+ </ul></dd>
142
+ <dt><h4><a name="label-11" id="label-11"><code>val</code></a></h4></dt><!-- RDLabel: "val" -->
143
+ <dd>
144
+ <p>Returns data values</p>
145
+ <p>RETURN VALUE</p>
146
+ <ul>
147
+ <li>a NArray or NArrayMiss. It is always a copy and to write in it
148
+ will not affect self.</li>
149
+ </ul></dd>
150
+ <dt><h4><a name="label-12" id="label-12"><code>val=(<var>v</var>)</code></a></h4></dt><!-- RDLabel: "val=" -->
151
+ <dd>
152
+ <p>Writes in data values.</p>
153
+ <p>ARGUMENTS</p>
154
+ <ul>
155
+ <li>v (NArray, NArrayMiss, or Numeric) : data to be written in.</li>
156
+ </ul>
157
+ <p>RETURN VALUE</p>
158
+ <ul>
159
+ <li>v (the argument)</li>
160
+ </ul>
161
+ <p>NOTE</p>
162
+ <ul>
163
+ <li>the contents of v are copied in, unlike <a href="#label-13">replace_val</a></li>
164
+ </ul></dd>
165
+ <dt><h4><a name="label-13" id="label-13"><code>replace_val(<var>v</var>)</code></a></h4></dt><!-- RDLabel: "replace_val" -->
166
+ <dd>
167
+ <p>Replace the data values.</p>
168
+ <p>ARGUMENTS</p>
169
+ <ul>
170
+ <li>v (NArray or NArrayMiss) : data to be written in.</li>
171
+ </ul>
172
+ <p>RETURN VALUE</p>
173
+ <ul>
174
+ <li>self</li>
175
+ </ul>
176
+ <p>NOTE</p>
177
+ <ul>
178
+ <li>This method is similar to <a href="#label-12">val=</a>, but
179
+ the whole numeric data object is replaced with v.
180
+ It is not very meaningful if the data is in a file:
181
+ the file is not modified, but you just get an GPhys object on memory.</li>
182
+ </ul></dd>
183
+ <dt><h4><a name="label-14" id="label-14"><code>att_names</code></a></h4></dt><!-- RDLabel: "att_names" -->
184
+ <dd>
185
+ <p>Returns attribute names of the data object.</p>
186
+ <p>RETURN VALUE</p>
187
+ <ul>
188
+ <li>Array of String</li>
189
+ </ul></dd>
190
+ <dt><h4><a name="label-15" id="label-15"><code>get_att(<var>name</var>)</code></a></h4></dt><!-- RDLabel: "get_att" -->
191
+ <dd>
192
+ <p>Get the value of the attribute named name.</p>
193
+ <p>ARGUMENTS</p>
194
+ <ul>
195
+ <li>name (String)</li>
196
+ </ul>
197
+ <p>RETURN VALUE</p>
198
+ <ul>
199
+ <li>String, NArray, or nil</li>
200
+ </ul></dd>
201
+ <dt><h4><a name="label-16" id="label-16"><code>set_att(<var>name</var>, <var>val</var>)</code></a></h4></dt><!-- RDLabel: "set_att" -->
202
+ <dt><h4><a name="label-17" id="label-17"><code>put_att(<var>name</var>, <var>val</var>)</code></a></h4></dt><!-- RDLabel: "put_att" -->
203
+ <dd>
204
+ <p>Set an attribute of the data object</p>
205
+ <p>ARGUMENTS</p>
206
+ <ul>
207
+ <li>name (String)</li>
208
+ <li>val (String, NArray, or nil)</li>
209
+ </ul>
210
+ <p>RETURN VALUE</p>
211
+ <ul>
212
+ <li>self</li>
213
+ </ul></dd>
214
+ <dt><h4><a name="label-18" id="label-18"><code>del_att(<var>name</var>)</code></a></h4></dt><!-- RDLabel: "del_att" -->
215
+ <dd>
216
+ <p>Delete an attribute of the data object.</p>
217
+ <p>ARGUMENTS</p>
218
+ <ul>
219
+ <li>name (String)</li>
220
+ </ul>
221
+ <p>RETURN VALUE</p>
222
+ <ul>
223
+ <li>self</li>
224
+ </ul></dd>
225
+ <dt><h4><a name="label-19" id="label-19"><code>ntype</code></a></h4></dt><!-- RDLabel: "ntype" -->
226
+ <dd>
227
+ <p>Returns the numeric type of the data object.</p>
228
+ <p>RETURN VALUE</p>
229
+ <ul>
230
+ <li>String such as "float", and "sfloat"</li>
231
+ </ul>
232
+ <p>NOTE</p>
233
+ <ul>
234
+ <li>See also <a href="#label-20">typecode</a>.</li>
235
+ </ul></dd>
236
+ <dt><h4><a name="label-20" id="label-20"><code>typecode</code></a></h4></dt><!-- RDLabel: "typecode" -->
237
+ <dd>
238
+ <p>Returns the numeric type of the data object.</p>
239
+ <p>RETURN VALUE</p>
240
+ <ul>
241
+ <li>NArray constants such as NArray::FLOAT and NArray::SFLOAT.</li>
242
+ </ul>
243
+ <p>NOTE</p>
244
+ <ul>
245
+ <li>See also <a href="#label-19">ntype</a>.</li>
246
+ </ul></dd>
247
+ <dt><h4><a name="label-21" id="label-21"><code>units</code></a></h4></dt><!-- RDLabel: "units" -->
248
+ <dd>
249
+ <p>Returns the units of the data object</p>
250
+ <p>RETURN VALUE</p>
251
+ <ul>
252
+ <li>a Units</li>
253
+ </ul></dd>
254
+ <dt><h4><a name="label-22" id="label-22"><code>units=(<var>units</var>)</code></a></h4></dt><!-- RDLabel: "units=" -->
255
+ <dd>
256
+ <p>Changes the units of the data object</p>
257
+ <p>ARGUMENTS</p>
258
+ <ul>
259
+ <li>units (Units or String)</li>
260
+ </ul>
261
+ <p>RETURN VALUE</p>
262
+ <ul>
263
+ <li>units (the argument)</li>
264
+ </ul></dd>
265
+ <dt><h4><a name="label-23" id="label-23"><code>convert_units(<var>to</var>)</code></a></h4></dt><!-- RDLabel: "convert_units" -->
266
+ <dd>
267
+ <p>Convert the units of the data object</p>
268
+ <p>ARGUMENTS</p>
269
+ <ul>
270
+ <li>to (a Units)</li>
271
+ </ul>
272
+ <p>RETURN VALUE</p>
273
+ <ul>
274
+ <li>a GPhys</li>
275
+ </ul></dd>
276
+ <dt><h4><a name="label-24" id="label-24"><code>long_name</code></a></h4></dt><!-- RDLabel: "long_name" -->
277
+ <dd>
278
+ <p>Returns the "long_name" attribute the data object</p>
279
+ <p>RETURN VALUE</p>
280
+ <ul>
281
+ <li>a String</li>
282
+ </ul></dd>
283
+ <dt><h4><a name="label-25" id="label-25"><code>long_name=(<var>to</var>)</code></a></h4></dt><!-- RDLabel: "long_name=" -->
284
+ <dd>
285
+ <p>Changes/sets the "long_name" attribute the data object</p>
286
+ <p>ARGUMENTS</p>
287
+ <ul>
288
+ <li>to (a String)</li>
289
+ </ul>
290
+ <p>RETURN VALUE</p>
291
+ <ul>
292
+ <li>to (the argument)</li>
293
+ </ul></dd>
294
+ <dt><h4><a name="label-26" id="label-26"><code>[]</code></a></h4></dt><!-- RDLabel: "[]" -->
295
+ <dd>
296
+ <p>Returns a subset.</p>
297
+ <p>ARGUMENTS</p>
298
+ <ul>
299
+ <li>Same as those for NArray#[], NetCDFVar#[], etc.</li>
300
+ </ul>
301
+ <p>RETURN VALUE</p>
302
+ <ul>
303
+ <li>a GPhys</li>
304
+ </ul></dd>
305
+ <dt><h4><a name="label-27" id="label-27"><code>[] = </code></a></h4></dt><!-- RDLabel: "[]=" -->
306
+ <dd>
307
+ <p>Sets values of a subset</p>
308
+ <p>RETURN VALUE</p>
309
+ <ul>
310
+ <li>the data object on the rhs</li>
311
+ </ul></dd>
312
+ <dt><h4><a name="label-28" id="label-28"><code>cut</code></a></h4></dt><!-- RDLabel: "cut" -->
313
+ <dd>
314
+ <p>Similar to <a href="#label-26">[]</a>, but the subset is specified by physical coordinate.</p>
315
+ <p>ARGUMENTS</p>
316
+ <ul>
317
+ <li>pattern 1: similar to those for <a href="#label-26">[]</a>, where the first
318
+ argument specifies a subset for the first dimension.</li>
319
+ <li>pattern 2: by a Hash, in which keys are axis names.</li>
320
+ </ul>
321
+ <p>EXAMPLES</p>
322
+ <ul>
323
+ <li><p>Pattern 1</p>
324
+ <pre>gphys.cut(135.5,0..20.5,false)</pre></li>
325
+ <li><p>Pattern 2</p>
326
+ <pre>gphys.cut({'lon'=&gt;135.5,'lat'=&gt;0..20})</pre></li>
327
+ </ul>
328
+ <p>RETURN VALUE</p>
329
+ <ul>
330
+ <li>a GPhys</li>
331
+ </ul></dd>
332
+ <dt><h4><a name="label-29" id="label-29"><code>cut_rank_conserving</code></a></h4></dt><!-- RDLabel: "cut_rank_conserving" -->
333
+ <dd>
334
+ Similar to <a href="#label-28">cut</a>, but the rank is conserved by not eliminating
335
+ any dimension (whose length could be one).</dd>
336
+ <dt><h4><a name="label-30" id="label-30"><code>axnames</code></a></h4></dt><!-- RDLabel: "axnames" -->
337
+ <dd>
338
+ <p>Returns the names of the axes</p>
339
+ <p>RETURN VALUE</p>
340
+ <ul>
341
+ <li>an Array of String</li>
342
+ </ul></dd>
343
+ <dt><h4><a name="label-31" id="label-31"><code>rank</code></a></h4></dt><!-- RDLabel: "rank" -->
344
+ <dd>
345
+ <p>Returns the rank</p>
346
+ <p>RETURN VALUE</p>
347
+ <ul>
348
+ <li>an Integer</li>
349
+ </ul></dd>
350
+ <dt><h4><a name="label-32" id="label-32"><code>axis(<var>dim</var>)</code></a></h4></dt><!-- RDLabel: "axis" -->
351
+ <dd>
352
+ <p>Returns the Axis object of a dimension.</p>
353
+ <p>ARGEMENTS</p>
354
+ <ul>
355
+ <li>dim (Integer or String)</li>
356
+ </ul>
357
+ <p>RETURN VALUE</p>
358
+ <ul>
359
+ <li>an Axis</li>
360
+ </ul></dd>
361
+ <dt><h4><a name="label-33" id="label-33"><code>coord(<var>dim</var>)</code></a></h4></dt><!-- RDLabel: "coord" -->
362
+ <dt><h4><a name="label-34" id="label-34"><code>coordinate(<var>dim</var>)</code></a></h4></dt><!-- RDLabel: "coordinate" -->
363
+ <dd>
364
+ <p>Returns the coordinate variable</p>
365
+ <p>ARGUMENTS</p>
366
+ <ul>
367
+ <li>dim (Integer or String)</li>
368
+ </ul>
369
+ <p>RETURN VALUE</p>
370
+ <ul>
371
+ <li>a VArray</li>
372
+ </ul>
373
+ <p>NOTE</p>
374
+ <ul>
375
+ <li>coord(dim) is equivalent to axis(dim).pos</li>
376
+ </ul></dd>
377
+ <dt><h4><a name="label-35" id="label-35"><code>lost_axes</code></a></h4></dt><!-- RDLabel: "lost_axes" -->
378
+ <dd>
379
+ <p>Returns info on axes eliminated during operations.</p>
380
+ <p>Useful for annotation in plots, for example (See the code of GGraph
381
+ for an application).</p>
382
+ <p>RETURN VALUE</p>
383
+ <ul>
384
+ <li>an Array of String</li>
385
+ </ul></dd>
386
+ <dt><h4><a name="label-36" id="label-36"><code>dim_index( <var>dimname</var> )</code></a></h4></dt><!-- RDLabel: "dim_index" -->
387
+ <dd>
388
+ <p>Returns the integer id (count from zero) of the dimension</p>
389
+ <p>ARGUMENT</p>
390
+ <ul>
391
+ <li>dimname (String or Integer) : this method is trivial if is is an integer</li>
392
+ </ul>
393
+ <p>RETURN VALUE</p>
394
+ <ul>
395
+ <li>an Integer</li>
396
+ </ul></dd>
397
+ <dt><h4><a name="label-37" id="label-37"><code>integrate(<var>dim</var>)</code></a></h4></dt><!-- RDLabel: "integrate" -->
398
+ <dd>
399
+ <p>Integration along a dimension.</p>
400
+ <p>RETURN VALUE</p>
401
+ <ul>
402
+ <li>a GPhys</li>
403
+ </ul>
404
+ <p>NOTE</p>
405
+ <ul>
406
+ <li>Algorithm implementation is done in Axis class.</li>
407
+ </ul></dd>
408
+ <dt><h4><a name="label-38" id="label-38"><code>average(<var>dim</var>)</code></a></h4></dt><!-- RDLabel: "average" -->
409
+ <dd>
410
+ <p>Averaging along a dimension.</p>
411
+ <p>RETURN VALUE</p>
412
+ <ul>
413
+ <li>a GPhys</li>
414
+ </ul>
415
+ <p>NOTE</p>
416
+ <ul>
417
+ <li>Algorithm implementation is done in Axis class.</li>
418
+ </ul></dd>
419
+ <dt><h4><a name="label-39" id="label-39"><code>eddy(*<var>dim</var>)</code></a></h4></dt><!-- RDLabel: "eddy" -->
420
+ <dd>
421
+ <p>Deviation from mean</p>
422
+ <p>ARGUMENT</p>
423
+ <ul>
424
+ <li>a list of dimensions (including none) [Integer or String] along which
425
+ the mean is taken.</li>
426
+ </ul>
427
+ <p>RETURN VALUE</p>
428
+ <ul>
429
+ <li>a GPhys</li>
430
+ </ul>
431
+ <p>NOTE</p>
432
+ <ul>
433
+ <li><p>Simply defined as</p>
434
+ <pre>def eddy(*dim)
435
+ self - self.mean(*dim)
436
+ end</pre></li>
437
+ </ul></dd>
438
+ <dt><h4><a name="label-40" id="label-40"><code>first1D</code></a></h4></dt><!-- RDLabel: "first1D" -->
439
+ <dd>
440
+ <p>Returns a 1D subset selecting the first elements of 2nd, 3rd, ..
441
+ dimensions, i.e., self[true, 0, 0, ...]. (For graphics)</p>
442
+ <p>ARGUMENTS</p>
443
+ <ul>
444
+ <li>(none)</li>
445
+ </ul>
446
+ <p>RETURN VALUE</p>
447
+ <ul>
448
+ <li>a GPhys</li>
449
+ </ul></dd>
450
+ <dt><h4><a name="label-41" id="label-41"><code>first2D</code></a></h4></dt><!-- RDLabel: "first2D" -->
451
+ <dd>
452
+ <p>Returns a 2D subset selecting the first elements of 3rd, 4th, ..
453
+ dimensions, i.e., self[true, true, 0, 0, ...]. (For graphics)</p>
454
+ <p>ARGUMENTS</p>
455
+ <ul>
456
+ <li>(none)</li>
457
+ </ul>
458
+ <p>RETURN VALUE</p>
459
+ <ul>
460
+ <li>a GPhys</li>
461
+ </ul></dd>
462
+ <dt><h4><a name="label-42" id="label-42"><code>first3D</code></a></h4></dt><!-- RDLabel: "first3D" -->
463
+ <dd>
464
+ <p>Returns a 3D subset selecting the first elements of 4th, 5th, ..
465
+ dimensions, i.e., self[true, true, true, 0, ...]. (For graphics)</p>
466
+ <p>ARGUMENTS</p>
467
+ <ul>
468
+ <li>(none)</li>
469
+ </ul>
470
+ <p>RETURN VALUE</p>
471
+ <ul>
472
+ <li>a GPhys</li>
473
+ </ul></dd>
474
+ <dt><h4><a name="label-43" id="label-43"><code>coerce(<var>other</var>)</code></a></h4></dt><!-- RDLabel: "coerce" -->
475
+ <dd>
476
+ <var>You know what it is.</var></dd>
477
+ <dt><h4><a name="label-44" id="label-44"><code>shape_coerce(<var>other</var>)</code></a></h4></dt><!-- RDLabel: "shape_coerce" -->
478
+ <dd>
479
+ Like <a href="#label-43">coerce</a>, but just changes shape without changing numeric type.</dd>
480
+ <dt><h4><a name="label-45" id="label-45"><code>transpose(*<var>dims</var>)</code></a></h4></dt><!-- RDLabel: "transpose" -->
481
+ <dd>
482
+ <p>Transpose.</p>
483
+ <p>ARGUMENTS</p>
484
+ <ul>
485
+ <li>dims (integers) : for example, [1,0] to transpose a 2D object.
486
+ For 3D objects, [1,0,2], [2,1,0], etc.etc.</li>
487
+ </ul>
488
+ <p>RETURN VALUE</p>
489
+ <ul>
490
+ <li>a GPhys</li>
491
+ </ul></dd>
492
+ <dt><h4><a name="label-46" id="label-46"><code>shape_current</code></a></h4></dt><!-- RDLabel: "shape_current" -->
493
+ <dd>
494
+ <p>Returns the current shape of the GPhys object.</p>
495
+ <p>RETURN VALUE</p>
496
+ <ul>
497
+ <li>an Array of Integer</li>
498
+ </ul></dd>
499
+ <dt><h4><a name="label-47" id="label-47"><code>shape</code></a></h4></dt><!-- RDLabel: "shape" -->
500
+ <dd>
501
+ Aliased to <a href="#label-46">shape_current</a></dd>
502
+ <dt><h4><a name="label-48" id="label-48"><code>cyclic_ext(<var>dim_or_dimname</var>, <var>modulo</var>)</code></a></h4></dt><!-- RDLabel: "cyclic_ext" -->
503
+ <dd>
504
+ <p>Extend a dimension cyclically.</p>
505
+ <p>The extension is done only when adding one grid point makes a full circle.
506
+ Thus, data at coordinate values [0,90,180,270] with modulo 360 are extended
507
+ (to at [0,90,180,270,360]), but data at [0,90,180] are not extended with
508
+ the same modulo: in this case, self is returned.</p>
509
+ <p>ARGUMENTS</p>
510
+ <ul>
511
+ <li>dim_or_dimname (String or Integer)</li>
512
+ <li>modulo (Numeric)</li>
513
+ </ul>
514
+ <p>RETURN VALUE</p>
515
+ <ul>
516
+ <li>a GPhys (possibly self)</li>
517
+ </ul></dd>
518
+ </dl>
519
+ <h3><a name="label-49" id="label-49">Math functions (instance methods)</a></h3><!-- RDLabel: "Math functions (instance methods)" -->
520
+ <h4><a name="label-50" id="label-50">sqrt, exp, log, log10, log2, sin, cos, tan, sinh, cosh, tanh, asin, acos, atan, asinh, acosh, atanh, csc, sec, cot, csch, sech, coth, acsc, asec, acot, acsch, asech, acoth</a></h4><!-- RDLabel: "sqrt, exp, log, log10, log2, sin, cos, tan, sinh, cosh, tanh, asin, acos, atan, asinh, acosh, atanh, csc, sec, cot, csch, sech, coth, acsc, asec, acot, acsch, asech, acoth" -->
521
+ <h3><a name="label-51" id="label-51">Binary operators</a></h3><!-- RDLabel: "Binary operators" -->
522
+ <h4><a name="label-52" id="label-52">-, +, *, /, %, **, .add!, .sub!, .mul!, .div!, mod!, &gt;, &gt;=, &lt;, &lt;=, &amp;, |, ^, .eq, .ne, .gt, .ge, .lt, .le, .and, .or, .xor, .not</a></h4><!-- RDLabel: "-, +, *, /, %, **, .add!, .sub!, .mul!, .div!, mod!, >, >=, <, <=, &, |, ^, .eq, .ne, .gt, .ge, .lt, .le, .and, .or, .xor, .not" -->
523
+ <h3><a name="label-53" id="label-53">Unary operators</a></h3><!-- RDLabel: "Unary operators" -->
524
+ <h4><a name="label-54" id="label-54">~ - +</a></h4><!-- RDLabel: "~ - +" -->
525
+ <h3><a name="label-55" id="label-55">Mean etc (instance methods)</a></h3><!-- RDLabel: "Mean etc (instance methods)" -->
526
+ <h4><a name="label-56" id="label-56">mean, sum, stddev, min, max, median</a></h4><!-- RDLabel: "mean, sum, stddev, min, max, median" -->
527
+ <h3><a name="label-57" id="label-57">Other instance methods</a></h3><!-- RDLabel: "Other instance methods" -->
528
+ <p>These methods returns a NArray (not a GPhys).</p>
529
+ <h4><a name="label-58" id="label-58">all?, any?, none?, where, where2, floor, ceil, round, to_f, to_i, to_a</a></h4><!-- RDLabel: "all?, any?, none?, where, where2, floor, ceil, round, to_f, to_i, to_a" -->
530
+
531
+ </body>
532
+ </html>