gphys 1.2.2.1 → 1.4.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (405) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +8 -17
  3. data/.rspec +2 -0
  4. data/.travis.yml +3 -0
  5. data/ChangeLog +5762 -753
  6. data/LICENSE.txt +30 -18
  7. data/Rakefile +1 -0
  8. data/bin/console +14 -0
  9. data/bin/gpcat +43 -2
  10. data/bin/gpcut +16 -0
  11. data/bin/gpvect +167 -15
  12. data/bin/gpview +254 -51
  13. data/bin/setup +7 -0
  14. data/dim_op.c +1220 -0
  15. data/doc/attribute.html +19 -0
  16. data/doc/attributenetcdf.html +15 -0
  17. data/doc/axis.html +387 -0
  18. data/doc/coordmapping.html +111 -0
  19. data/doc/coordtransform.html +36 -0
  20. data/doc/dclext.html +821 -0
  21. data/doc/derivative/gphys-derivative.html +100 -0
  22. data/doc/derivative/index.html +21 -0
  23. data/doc/derivative/index.rd +14 -0
  24. data/doc/derivative/math-doc/document.pdf +0 -0
  25. data/doc/derivative/math-doc/document.tex +158 -0
  26. data/doc/derivative/math-doc/document/document.css +30 -0
  27. data/doc/derivative/math-doc/document/document.html +57 -0
  28. data/doc/derivative/math-doc/document/images.aux +1 -0
  29. data/doc/derivative/math-doc/document/images.log +385 -0
  30. data/doc/derivative/math-doc/document/images.pl +186 -0
  31. data/doc/derivative/math-doc/document/images.tex +364 -0
  32. data/doc/derivative/math-doc/document/img1.png +0 -0
  33. data/doc/derivative/math-doc/document/img10.png +0 -0
  34. data/doc/derivative/math-doc/document/img11.png +0 -0
  35. data/doc/derivative/math-doc/document/img12.png +0 -0
  36. data/doc/derivative/math-doc/document/img13.png +0 -0
  37. data/doc/derivative/math-doc/document/img14.png +0 -0
  38. data/doc/derivative/math-doc/document/img15.png +0 -0
  39. data/doc/derivative/math-doc/document/img16.png +0 -0
  40. data/doc/derivative/math-doc/document/img17.png +0 -0
  41. data/doc/derivative/math-doc/document/img18.png +0 -0
  42. data/doc/derivative/math-doc/document/img19.png +0 -0
  43. data/doc/derivative/math-doc/document/img2.png +0 -0
  44. data/doc/derivative/math-doc/document/img20.png +0 -0
  45. data/doc/derivative/math-doc/document/img21.png +0 -0
  46. data/doc/derivative/math-doc/document/img22.png +0 -0
  47. data/doc/derivative/math-doc/document/img23.png +0 -0
  48. data/doc/derivative/math-doc/document/img24.png +0 -0
  49. data/doc/derivative/math-doc/document/img25.png +0 -0
  50. data/doc/derivative/math-doc/document/img26.png +0 -0
  51. data/doc/derivative/math-doc/document/img27.png +0 -0
  52. data/doc/derivative/math-doc/document/img28.png +0 -0
  53. data/doc/derivative/math-doc/document/img29.png +0 -0
  54. data/doc/derivative/math-doc/document/img3.png +0 -0
  55. data/doc/derivative/math-doc/document/img30.png +0 -0
  56. data/doc/derivative/math-doc/document/img4.png +0 -0
  57. data/doc/derivative/math-doc/document/img5.png +0 -0
  58. data/doc/derivative/math-doc/document/img6.png +0 -0
  59. data/doc/derivative/math-doc/document/img7.png +0 -0
  60. data/doc/derivative/math-doc/document/img8.png +0 -0
  61. data/doc/derivative/math-doc/document/img9.png +0 -0
  62. data/doc/derivative/math-doc/document/index.html +57 -0
  63. data/doc/derivative/math-doc/document/labels.pl +13 -0
  64. data/doc/derivative/math-doc/document/next.png +0 -0
  65. data/doc/derivative/math-doc/document/next_g.png +0 -0
  66. data/doc/derivative/math-doc/document/node1.html +238 -0
  67. data/doc/derivative/math-doc/document/node2.html +75 -0
  68. data/doc/derivative/math-doc/document/prev.png +0 -0
  69. data/doc/derivative/math-doc/document/prev_g.png +0 -0
  70. data/doc/derivative/math-doc/document/up.png +0 -0
  71. data/doc/derivative/math-doc/document/up_g.png +0 -0
  72. data/doc/derivative/numru-derivative.html +158 -0
  73. data/doc/ep_flux/ep_flux.html +469 -0
  74. data/doc/ep_flux/ggraph_on_merdional_section.html +71 -0
  75. data/doc/ep_flux/index.html +31 -0
  76. data/doc/ep_flux/index.rd +24 -0
  77. data/doc/ep_flux/math-doc/document.pdf +0 -0
  78. data/doc/ep_flux/math-doc/document.tex +2018 -0
  79. data/doc/ep_flux/math-doc/document/WARNINGS +1 -0
  80. data/doc/ep_flux/math-doc/document/contents.png +0 -0
  81. data/doc/ep_flux/math-doc/document/crossref.png +0 -0
  82. data/doc/ep_flux/math-doc/document/document.css +30 -0
  83. data/doc/ep_flux/math-doc/document/document.html +101 -0
  84. data/doc/ep_flux/math-doc/document/images.aux +1 -0
  85. data/doc/ep_flux/math-doc/document/images.log +1375 -0
  86. data/doc/ep_flux/math-doc/document/images.pl +1328 -0
  87. data/doc/ep_flux/math-doc/document/images.tex +1471 -0
  88. data/doc/ep_flux/math-doc/document/img1.png +0 -0
  89. data/doc/ep_flux/math-doc/document/img10.png +0 -0
  90. data/doc/ep_flux/math-doc/document/img100.png +0 -0
  91. data/doc/ep_flux/math-doc/document/img101.png +0 -0
  92. data/doc/ep_flux/math-doc/document/img102.png +0 -0
  93. data/doc/ep_flux/math-doc/document/img103.png +0 -0
  94. data/doc/ep_flux/math-doc/document/img104.png +0 -0
  95. data/doc/ep_flux/math-doc/document/img105.png +0 -0
  96. data/doc/ep_flux/math-doc/document/img106.png +0 -0
  97. data/doc/ep_flux/math-doc/document/img107.png +0 -0
  98. data/doc/ep_flux/math-doc/document/img108.png +0 -0
  99. data/doc/ep_flux/math-doc/document/img109.png +0 -0
  100. data/doc/ep_flux/math-doc/document/img11.png +0 -0
  101. data/doc/ep_flux/math-doc/document/img110.png +0 -0
  102. data/doc/ep_flux/math-doc/document/img111.png +0 -0
  103. data/doc/ep_flux/math-doc/document/img112.png +0 -0
  104. data/doc/ep_flux/math-doc/document/img113.png +0 -0
  105. data/doc/ep_flux/math-doc/document/img114.png +0 -0
  106. data/doc/ep_flux/math-doc/document/img115.png +0 -0
  107. data/doc/ep_flux/math-doc/document/img116.png +0 -0
  108. data/doc/ep_flux/math-doc/document/img117.png +0 -0
  109. data/doc/ep_flux/math-doc/document/img118.png +0 -0
  110. data/doc/ep_flux/math-doc/document/img119.png +0 -0
  111. data/doc/ep_flux/math-doc/document/img12.png +0 -0
  112. data/doc/ep_flux/math-doc/document/img120.png +0 -0
  113. data/doc/ep_flux/math-doc/document/img121.png +0 -0
  114. data/doc/ep_flux/math-doc/document/img122.png +0 -0
  115. data/doc/ep_flux/math-doc/document/img123.png +0 -0
  116. data/doc/ep_flux/math-doc/document/img124.png +0 -0
  117. data/doc/ep_flux/math-doc/document/img125.png +0 -0
  118. data/doc/ep_flux/math-doc/document/img126.png +0 -0
  119. data/doc/ep_flux/math-doc/document/img127.png +0 -0
  120. data/doc/ep_flux/math-doc/document/img128.png +0 -0
  121. data/doc/ep_flux/math-doc/document/img129.png +0 -0
  122. data/doc/ep_flux/math-doc/document/img13.png +0 -0
  123. data/doc/ep_flux/math-doc/document/img130.png +0 -0
  124. data/doc/ep_flux/math-doc/document/img131.png +0 -0
  125. data/doc/ep_flux/math-doc/document/img132.png +0 -0
  126. data/doc/ep_flux/math-doc/document/img133.png +0 -0
  127. data/doc/ep_flux/math-doc/document/img134.png +0 -0
  128. data/doc/ep_flux/math-doc/document/img135.png +0 -0
  129. data/doc/ep_flux/math-doc/document/img136.png +0 -0
  130. data/doc/ep_flux/math-doc/document/img137.png +0 -0
  131. data/doc/ep_flux/math-doc/document/img138.png +0 -0
  132. data/doc/ep_flux/math-doc/document/img139.png +0 -0
  133. data/doc/ep_flux/math-doc/document/img14.png +0 -0
  134. data/doc/ep_flux/math-doc/document/img140.png +0 -0
  135. data/doc/ep_flux/math-doc/document/img141.png +0 -0
  136. data/doc/ep_flux/math-doc/document/img142.png +0 -0
  137. data/doc/ep_flux/math-doc/document/img143.png +0 -0
  138. data/doc/ep_flux/math-doc/document/img144.png +0 -0
  139. data/doc/ep_flux/math-doc/document/img145.png +0 -0
  140. data/doc/ep_flux/math-doc/document/img146.png +0 -0
  141. data/doc/ep_flux/math-doc/document/img147.png +0 -0
  142. data/doc/ep_flux/math-doc/document/img148.png +0 -0
  143. data/doc/ep_flux/math-doc/document/img149.png +0 -0
  144. data/doc/ep_flux/math-doc/document/img15.png +0 -0
  145. data/doc/ep_flux/math-doc/document/img150.png +0 -0
  146. data/doc/ep_flux/math-doc/document/img151.png +0 -0
  147. data/doc/ep_flux/math-doc/document/img152.png +0 -0
  148. data/doc/ep_flux/math-doc/document/img153.png +0 -0
  149. data/doc/ep_flux/math-doc/document/img154.png +0 -0
  150. data/doc/ep_flux/math-doc/document/img155.png +0 -0
  151. data/doc/ep_flux/math-doc/document/img156.png +0 -0
  152. data/doc/ep_flux/math-doc/document/img157.png +0 -0
  153. data/doc/ep_flux/math-doc/document/img158.png +0 -0
  154. data/doc/ep_flux/math-doc/document/img159.png +0 -0
  155. data/doc/ep_flux/math-doc/document/img16.png +0 -0
  156. data/doc/ep_flux/math-doc/document/img160.png +0 -0
  157. data/doc/ep_flux/math-doc/document/img161.png +0 -0
  158. data/doc/ep_flux/math-doc/document/img162.png +0 -0
  159. data/doc/ep_flux/math-doc/document/img163.png +0 -0
  160. data/doc/ep_flux/math-doc/document/img164.png +0 -0
  161. data/doc/ep_flux/math-doc/document/img165.png +0 -0
  162. data/doc/ep_flux/math-doc/document/img166.png +0 -0
  163. data/doc/ep_flux/math-doc/document/img167.png +0 -0
  164. data/doc/ep_flux/math-doc/document/img168.png +0 -0
  165. data/doc/ep_flux/math-doc/document/img169.png +0 -0
  166. data/doc/ep_flux/math-doc/document/img17.png +0 -0
  167. data/doc/ep_flux/math-doc/document/img170.png +0 -0
  168. data/doc/ep_flux/math-doc/document/img171.png +0 -0
  169. data/doc/ep_flux/math-doc/document/img172.png +0 -0
  170. data/doc/ep_flux/math-doc/document/img173.png +0 -0
  171. data/doc/ep_flux/math-doc/document/img174.png +0 -0
  172. data/doc/ep_flux/math-doc/document/img175.png +0 -0
  173. data/doc/ep_flux/math-doc/document/img176.png +0 -0
  174. data/doc/ep_flux/math-doc/document/img177.png +0 -0
  175. data/doc/ep_flux/math-doc/document/img178.png +0 -0
  176. data/doc/ep_flux/math-doc/document/img179.png +0 -0
  177. data/doc/ep_flux/math-doc/document/img18.png +0 -0
  178. data/doc/ep_flux/math-doc/document/img180.png +0 -0
  179. data/doc/ep_flux/math-doc/document/img181.png +0 -0
  180. data/doc/ep_flux/math-doc/document/img182.png +0 -0
  181. data/doc/ep_flux/math-doc/document/img183.png +0 -0
  182. data/doc/ep_flux/math-doc/document/img184.png +0 -0
  183. data/doc/ep_flux/math-doc/document/img185.png +0 -0
  184. data/doc/ep_flux/math-doc/document/img186.png +0 -0
  185. data/doc/ep_flux/math-doc/document/img187.png +0 -0
  186. data/doc/ep_flux/math-doc/document/img188.png +0 -0
  187. data/doc/ep_flux/math-doc/document/img189.png +0 -0
  188. data/doc/ep_flux/math-doc/document/img19.png +0 -0
  189. data/doc/ep_flux/math-doc/document/img190.png +0 -0
  190. data/doc/ep_flux/math-doc/document/img191.png +0 -0
  191. data/doc/ep_flux/math-doc/document/img192.png +0 -0
  192. data/doc/ep_flux/math-doc/document/img193.png +0 -0
  193. data/doc/ep_flux/math-doc/document/img194.png +0 -0
  194. data/doc/ep_flux/math-doc/document/img195.png +0 -0
  195. data/doc/ep_flux/math-doc/document/img196.png +0 -0
  196. data/doc/ep_flux/math-doc/document/img197.png +0 -0
  197. data/doc/ep_flux/math-doc/document/img198.png +0 -0
  198. data/doc/ep_flux/math-doc/document/img199.png +0 -0
  199. data/doc/ep_flux/math-doc/document/img2.png +0 -0
  200. data/doc/ep_flux/math-doc/document/img20.png +0 -0
  201. data/doc/ep_flux/math-doc/document/img200.png +0 -0
  202. data/doc/ep_flux/math-doc/document/img21.png +0 -0
  203. data/doc/ep_flux/math-doc/document/img22.png +0 -0
  204. data/doc/ep_flux/math-doc/document/img23.png +0 -0
  205. data/doc/ep_flux/math-doc/document/img24.png +0 -0
  206. data/doc/ep_flux/math-doc/document/img25.png +0 -0
  207. data/doc/ep_flux/math-doc/document/img26.png +0 -0
  208. data/doc/ep_flux/math-doc/document/img27.png +0 -0
  209. data/doc/ep_flux/math-doc/document/img28.png +0 -0
  210. data/doc/ep_flux/math-doc/document/img29.png +0 -0
  211. data/doc/ep_flux/math-doc/document/img3.png +0 -0
  212. data/doc/ep_flux/math-doc/document/img30.png +0 -0
  213. data/doc/ep_flux/math-doc/document/img31.png +0 -0
  214. data/doc/ep_flux/math-doc/document/img32.png +0 -0
  215. data/doc/ep_flux/math-doc/document/img33.png +0 -0
  216. data/doc/ep_flux/math-doc/document/img34.png +0 -0
  217. data/doc/ep_flux/math-doc/document/img35.png +0 -0
  218. data/doc/ep_flux/math-doc/document/img36.png +0 -0
  219. data/doc/ep_flux/math-doc/document/img37.png +0 -0
  220. data/doc/ep_flux/math-doc/document/img38.png +0 -0
  221. data/doc/ep_flux/math-doc/document/img39.png +0 -0
  222. data/doc/ep_flux/math-doc/document/img4.png +0 -0
  223. data/doc/ep_flux/math-doc/document/img40.png +0 -0
  224. data/doc/ep_flux/math-doc/document/img41.png +0 -0
  225. data/doc/ep_flux/math-doc/document/img42.png +0 -0
  226. data/doc/ep_flux/math-doc/document/img43.png +0 -0
  227. data/doc/ep_flux/math-doc/document/img44.png +0 -0
  228. data/doc/ep_flux/math-doc/document/img45.png +0 -0
  229. data/doc/ep_flux/math-doc/document/img46.png +0 -0
  230. data/doc/ep_flux/math-doc/document/img47.png +0 -0
  231. data/doc/ep_flux/math-doc/document/img48.png +0 -0
  232. data/doc/ep_flux/math-doc/document/img49.png +0 -0
  233. data/doc/ep_flux/math-doc/document/img5.png +0 -0
  234. data/doc/ep_flux/math-doc/document/img50.png +0 -0
  235. data/doc/ep_flux/math-doc/document/img51.png +0 -0
  236. data/doc/ep_flux/math-doc/document/img52.png +0 -0
  237. data/doc/ep_flux/math-doc/document/img53.png +0 -0
  238. data/doc/ep_flux/math-doc/document/img54.png +0 -0
  239. data/doc/ep_flux/math-doc/document/img55.png +0 -0
  240. data/doc/ep_flux/math-doc/document/img56.png +0 -0
  241. data/doc/ep_flux/math-doc/document/img57.png +0 -0
  242. data/doc/ep_flux/math-doc/document/img58.png +0 -0
  243. data/doc/ep_flux/math-doc/document/img59.png +0 -0
  244. data/doc/ep_flux/math-doc/document/img6.png +0 -0
  245. data/doc/ep_flux/math-doc/document/img60.png +0 -0
  246. data/doc/ep_flux/math-doc/document/img61.png +0 -0
  247. data/doc/ep_flux/math-doc/document/img62.png +0 -0
  248. data/doc/ep_flux/math-doc/document/img63.png +0 -0
  249. data/doc/ep_flux/math-doc/document/img64.png +0 -0
  250. data/doc/ep_flux/math-doc/document/img65.png +0 -0
  251. data/doc/ep_flux/math-doc/document/img66.png +0 -0
  252. data/doc/ep_flux/math-doc/document/img67.png +0 -0
  253. data/doc/ep_flux/math-doc/document/img68.png +0 -0
  254. data/doc/ep_flux/math-doc/document/img69.png +0 -0
  255. data/doc/ep_flux/math-doc/document/img7.png +0 -0
  256. data/doc/ep_flux/math-doc/document/img70.png +0 -0
  257. data/doc/ep_flux/math-doc/document/img71.png +0 -0
  258. data/doc/ep_flux/math-doc/document/img72.png +0 -0
  259. data/doc/ep_flux/math-doc/document/img73.png +0 -0
  260. data/doc/ep_flux/math-doc/document/img74.png +0 -0
  261. data/doc/ep_flux/math-doc/document/img75.png +0 -0
  262. data/doc/ep_flux/math-doc/document/img76.png +0 -0
  263. data/doc/ep_flux/math-doc/document/img77.png +0 -0
  264. data/doc/ep_flux/math-doc/document/img78.png +0 -0
  265. data/doc/ep_flux/math-doc/document/img79.png +0 -0
  266. data/doc/ep_flux/math-doc/document/img8.png +0 -0
  267. data/doc/ep_flux/math-doc/document/img80.png +0 -0
  268. data/doc/ep_flux/math-doc/document/img81.png +0 -0
  269. data/doc/ep_flux/math-doc/document/img82.png +0 -0
  270. data/doc/ep_flux/math-doc/document/img83.png +0 -0
  271. data/doc/ep_flux/math-doc/document/img84.png +0 -0
  272. data/doc/ep_flux/math-doc/document/img85.png +0 -0
  273. data/doc/ep_flux/math-doc/document/img86.png +0 -0
  274. data/doc/ep_flux/math-doc/document/img87.png +0 -0
  275. data/doc/ep_flux/math-doc/document/img88.png +0 -0
  276. data/doc/ep_flux/math-doc/document/img89.png +0 -0
  277. data/doc/ep_flux/math-doc/document/img9.png +0 -0
  278. data/doc/ep_flux/math-doc/document/img90.png +0 -0
  279. data/doc/ep_flux/math-doc/document/img91.png +0 -0
  280. data/doc/ep_flux/math-doc/document/img92.png +0 -0
  281. data/doc/ep_flux/math-doc/document/img93.png +0 -0
  282. data/doc/ep_flux/math-doc/document/img94.png +0 -0
  283. data/doc/ep_flux/math-doc/document/img95.png +0 -0
  284. data/doc/ep_flux/math-doc/document/img96.png +0 -0
  285. data/doc/ep_flux/math-doc/document/img97.png +0 -0
  286. data/doc/ep_flux/math-doc/document/img98.png +0 -0
  287. data/doc/ep_flux/math-doc/document/img99.png +0 -0
  288. data/doc/ep_flux/math-doc/document/index.html +101 -0
  289. data/doc/ep_flux/math-doc/document/internals.pl +258 -0
  290. data/doc/ep_flux/math-doc/document/labels.pl +265 -0
  291. data/doc/ep_flux/math-doc/document/next.png +0 -0
  292. data/doc/ep_flux/math-doc/document/next_g.png +0 -0
  293. data/doc/ep_flux/math-doc/document/node1.html +104 -0
  294. data/doc/ep_flux/math-doc/document/node10.html +164 -0
  295. data/doc/ep_flux/math-doc/document/node11.html +86 -0
  296. data/doc/ep_flux/math-doc/document/node12.html +166 -0
  297. data/doc/ep_flux/math-doc/document/node13.html +897 -0
  298. data/doc/ep_flux/math-doc/document/node14.html +1065 -0
  299. data/doc/ep_flux/math-doc/document/node15.html +72 -0
  300. data/doc/ep_flux/math-doc/document/node16.html +81 -0
  301. data/doc/ep_flux/math-doc/document/node2.html +82 -0
  302. data/doc/ep_flux/math-doc/document/node3.html +91 -0
  303. data/doc/ep_flux/math-doc/document/node4.html +149 -0
  304. data/doc/ep_flux/math-doc/document/node5.html +330 -0
  305. data/doc/ep_flux/math-doc/document/node6.html +99 -0
  306. data/doc/ep_flux/math-doc/document/node7.html +98 -0
  307. data/doc/ep_flux/math-doc/document/node8.html +83 -0
  308. data/doc/ep_flux/math-doc/document/node9.html +140 -0
  309. data/doc/ep_flux/math-doc/document/prev.png +0 -0
  310. data/doc/ep_flux/math-doc/document/prev_g.png +0 -0
  311. data/doc/ep_flux/math-doc/document/up.png +0 -0
  312. data/doc/ep_flux/math-doc/document/up_g.png +0 -0
  313. data/doc/gdir.html +412 -0
  314. data/doc/gdir_client.html +16 -0
  315. data/doc/gdir_connect_ftp-like.html +61 -0
  316. data/doc/gdir_server.html +45 -0
  317. data/doc/ggraph.html +1119 -0
  318. data/doc/gpcat.html +45 -0
  319. data/doc/gpcut.html +47 -0
  320. data/doc/gphys.html +624 -0
  321. data/doc/gphys_fft.html +324 -0
  322. data/doc/gphys_grads_io.html +69 -0
  323. data/doc/gphys_grib_io.html +82 -0
  324. data/doc/gphys_io.html +183 -0
  325. data/doc/gphys_io_common.html +18 -0
  326. data/doc/gphys_netcdf_io.html +283 -0
  327. data/doc/gplist.html +24 -0
  328. data/doc/gpmath.html +52 -0
  329. data/doc/gpmaxmin.html +32 -0
  330. data/doc/gpprint.html +35 -0
  331. data/doc/gpview.html +349 -0
  332. data/doc/grads2nc_with_gphys.html +21 -0
  333. data/doc/grads_gridded.html +307 -0
  334. data/doc/grib.html +149 -0
  335. data/doc/grid.html +224 -0
  336. data/doc/index.html +145 -0
  337. data/doc/index.rd +138 -0
  338. data/doc/netcdf_convention.html +136 -0
  339. data/doc/unumeric.html +176 -0
  340. data/doc/update +69 -0
  341. data/doc/update_rdoc +8 -0
  342. data/doc/varray.html +299 -0
  343. data/doc/varraycomposite.html +67 -0
  344. data/ext_init.c +1 -0
  345. data/extconf.rb +16 -6
  346. data/gphys.gemspec +33 -26
  347. data/interpo.c +1 -1
  348. data/lib/numru/dclext.rb +718 -546
  349. data/lib/numru/derivative.rb +2 -0
  350. data/lib/numru/ganalysis.rb +38 -0
  351. data/lib/numru/ganalysis/beta_plane.rb +103 -0
  352. data/lib/numru/ganalysis/eof.rb +3 -2
  353. data/lib/numru/ganalysis/fitting.rb +559 -0
  354. data/lib/numru/ganalysis/histogram.rb +36 -19
  355. data/lib/numru/ganalysis/log_p.rb +130 -0
  356. data/lib/numru/ganalysis/met.rb +396 -2
  357. data/lib/numru/ganalysis/met_z.rb +300 -0
  358. data/lib/numru/ganalysis/planet.rb +17 -7
  359. data/lib/numru/ganalysis/qg.rb +685 -0
  360. data/lib/numru/ganalysis/sigma_coord.rb +90 -0
  361. data/lib/numru/gdir.rb +2 -1
  362. data/lib/numru/ggraph.rb +204 -60
  363. data/lib/numru/ggraph_on_merdional_section.rb +1 -1
  364. data/lib/numru/gphys.rb +6 -0
  365. data/lib/numru/gphys/assoccoords.rb +18 -3
  366. data/lib/numru/gphys/axis.rb +209 -8
  367. data/lib/numru/gphys/derivative.rb +11 -0
  368. data/lib/numru/gphys/gphys.rb +539 -48
  369. data/lib/numru/gphys/gphys_dim_op.rb +331 -0
  370. data/lib/numru/gphys/gphys_fft.rb +48 -2
  371. data/lib/numru/gphys/gphys_io.rb +241 -13
  372. data/lib/numru/gphys/gphys_netcdf_io.rb +77 -39
  373. data/lib/numru/gphys/gphys_nusdas_io.rb +3 -0
  374. data/lib/numru/gphys/grib.rb +133 -54
  375. data/lib/numru/gphys/grib_params.rb +26 -3
  376. data/lib/numru/gphys/grid.rb +75 -34
  377. data/lib/numru/gphys/interpolate.rb +24 -10
  378. data/lib/numru/gphys/mdstorage.rb +160 -0
  379. data/lib/numru/gphys/netcdf_convention.rb +4 -2
  380. data/lib/numru/gphys/subsetmapping.rb +0 -1
  381. data/lib/numru/gphys/unumeric.rb +50 -5
  382. data/lib/numru/gphys/varray.rb +15 -30
  383. data/lib/numru/gphys/varraycomposite.rb +107 -24
  384. data/lib/numru/gphys/varraynetcdf.rb +9 -3
  385. data/lib/numru/gphys/version.rb +5 -0
  386. data/sample/druby_cli1.rb +2 -0
  387. data/sample/druby_cli2.rb +0 -6
  388. data/sample/druby_serv2.rb +0 -13
  389. data/spec/gphys_spec.rb +11 -0
  390. data/spec/spec_helper.rb +2 -0
  391. data/test/test_assoccoords.rb +102 -0
  392. data/test/test_axis.rb +61 -0
  393. data/test/test_fitting.rb +116 -0
  394. data/test/test_gphys.rb +20 -0
  395. data/test/test_met_z.rb +96 -0
  396. data/test/test_sigma_coord.rb +50 -0
  397. data/{test → test_old}/eof_slp.rb +0 -0
  398. data/{test → test_old}/mltbit.dat +0 -0
  399. data/{test → test_old}/test_ep_flux.rb +0 -0
  400. data/{test → test_old}/test_multibitIO.rb +0 -0
  401. metadata +530 -191
  402. data/README.md +0 -29
  403. data/lib/gphys.rb +0 -2
  404. data/lib/numru/dclext_datetime_ax.rb +0 -220
  405. data/lib/version.rb +0 -3
@@ -0,0 +1,83 @@
1
+ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
2
+
3
+ <!--Converted with jLaTeX2HTML 2K.1beta (1.48) JA patch-1.4
4
+ patched version by: Kenshi Muto, Debian Project.
5
+ LaTeX2HTML 2K.1beta (1.48),
6
+ original version by: Nikos Drakos, CBLU, University of Leeds
7
+ * revised and updated by: Marcus Hennecke, Ross Moore, Herb Swan
8
+ * with significant contributions from:
9
+ Jens Lippmann, Marek Rouchal, Martin Wilck and others -->
10
+ <HTML>
11
+ <HEAD>
12
+ <TITLE>$B;R8aLL>e$NH/;61i;;;R(B</TITLE>
13
+ <META NAME="description" CONTENT="$B;R8aLL>e$NH/;61i;;;R(B">
14
+ <META NAME="keywords" CONTENT="document">
15
+ <META NAME="resource-type" CONTENT="document">
16
+ <META NAME="distribution" CONTENT="global">
17
+
18
+ <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-2022-jp">
19
+ <META NAME="Generator" CONTENT="jLaTeX2HTML v2K.1beta JA patch-1.4">
20
+ <META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">
21
+
22
+ <LINK REL="STYLESHEET" HREF="document.css">
23
+
24
+ <LINK REL="next" HREF="node9.html">
25
+ <LINK REL="previous" HREF="node7.html">
26
+ <LINK REL="up" HREF="node3.html">
27
+ <LINK REL="next" HREF="node9.html">
28
+ </HEAD>
29
+
30
+ <BODY >
31
+ <!--Navigation Panel-->
32
+ <A NAME="tex2html135"
33
+ HREF="node9.html">
34
+ <IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
35
+ <A NAME="tex2html131"
36
+ HREF="node3.html">
37
+ <IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
38
+ <A NAME="tex2html125"
39
+ HREF="node7.html">
40
+ <IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
41
+ <A NAME="tex2html133"
42
+ HREF="node1.html">
43
+ <IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
44
+ <BR>
45
+ <B> :</B> <A NAME="tex2html136"
46
+ HREF="node9.html">$B<ANLN.@~4X?t(B</A>
47
+ <B> :</B> <A NAME="tex2html132"
48
+ HREF="node3.html">NumRu::GPhys::EP_Flux $B$G7W;;$5$l$k=oNL(B</A>
49
+ <B> :</B> <A NAME="tex2html126"
50
+ HREF="node7.html">$BJ?6QEl@>N.$N<0(B</A>
51
+ &nbsp <B> <A NAME="tex2html134"
52
+ HREF="node1.html">$BL\<!(B</A></B>
53
+ <BR>
54
+ <BR>
55
+ <!--End of Navigation Panel-->
56
+
57
+ <H1><A NAME="SECTION003500000000000000000">
58
+ $B;R8aLL>e$NH/;61i;;;R(B</A>
59
+ </H1>
60
+
61
+ $B;R8aLL$K$*$1$kH/;61i;;;R$O(B, <IMG
62
+ WIDTH="21" HEIGHT="17" ALIGN="BOTTOM" BORDER="0"
63
+ SRC="img47.png"
64
+ ALT="$ \Dvect{F}$"> $B$rG$0U$N%Y%/%H%k$7$?;~$K(B
65
+ $B0J2<$N7A$GDj5A$5$l$k(B.
66
+ <P></P>
67
+ <DIV ALIGN="CENTER"><TABLE CELLPADDING="0" WIDTH="100%" ALIGN="CENTER">
68
+ <TR VALIGN="MIDDLE">
69
+ <TD NOWRAP ALIGN="CENTER"><IMG
70
+ WIDTH="279" HEIGHT="62" ALIGN="MIDDLE" BORDER="0"
71
+ SRC="img48.png"
72
+ ALT="$\displaystyle \Ddiv{} \Dvect{F}= \Dinv{a \cos \phi} \DP{(\cos \phi F_{\phi})}{\phi}
73
  + \DP{F_{z^{*}}}{z^*}$"></TD>
74
+ <TD NOWRAP WIDTH="10" ALIGN="RIGHT">
75
+ <A NAME="eq:div">(2.9)</A></TD></TR>
76
+ </TABLE></DIV>
77
+ <BR CLEAR="ALL"><P></P>
78
+ <BR><HR>
79
+ <ADDRESS>
80
+ Tsukahara Daisuke
81
+ $BJ?@.(B17$BG/(B2$B7n(B19$BF|(B
82
+ </ADDRESS>
83
+ </BODY>
84
+ </HTML>
@@ -0,0 +1,140 @@
1
+ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
2
+
3
+ <!--Converted with jLaTeX2HTML 2K.1beta (1.48) JA patch-1.4
4
+ patched version by: Kenshi Muto, Debian Project.
5
+ LaTeX2HTML 2K.1beta (1.48),
6
+ original version by: Nikos Drakos, CBLU, University of Leeds
7
+ * revised and updated by: Marcus Hennecke, Ross Moore, Herb Swan
8
+ * with significant contributions from:
9
+ Jens Lippmann, Marek Rouchal, Martin Wilck and others -->
10
+ <HTML>
11
+ <HEAD>
12
+ <TITLE>$B<ANLN.@~4X?t(B</TITLE>
13
+ <META NAME="description" CONTENT="$B<ANLN.@~4X?t(B">
14
+ <META NAME="keywords" CONTENT="document">
15
+ <META NAME="resource-type" CONTENT="document">
16
+ <META NAME="distribution" CONTENT="global">
17
+
18
+ <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-2022-jp">
19
+ <META NAME="Generator" CONTENT="jLaTeX2HTML v2K.1beta JA patch-1.4">
20
+ <META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">
21
+
22
+ <LINK REL="STYLESHEET" HREF="document.css">
23
+
24
+ <LINK REL="next" HREF="node10.html">
25
+ <LINK REL="previous" HREF="node8.html">
26
+ <LINK REL="up" HREF="node3.html">
27
+ <LINK REL="next" HREF="node10.html">
28
+ </HEAD>
29
+
30
+ <BODY >
31
+ <!--Navigation Panel-->
32
+ <A NAME="tex2html147"
33
+ HREF="node10.html">
34
+ <IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
35
+ <A NAME="tex2html143"
36
+ HREF="node3.html">
37
+ <IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
38
+ <A NAME="tex2html137"
39
+ HREF="node8.html">
40
+ <IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
41
+ <A NAME="tex2html145"
42
+ HREF="node1.html">
43
+ <IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
44
+ <BR>
45
+ <B> :</B> <A NAME="tex2html148"
46
+ HREF="node10.html">$BJQ?tJQ49(B</A>
47
+ <B> :</B> <A NAME="tex2html144"
48
+ HREF="node3.html">NumRu::GPhys::EP_Flux $B$G7W;;$5$l$k=oNL(B</A>
49
+ <B> :</B> <A NAME="tex2html138"
50
+ HREF="node8.html">$B;R8aLL>e$NH/;61i;;;R(B</A>
51
+ &nbsp <B> <A NAME="tex2html146"
52
+ HREF="node1.html">$BL\<!(B</A></B>
53
+ <BR>
54
+ <BR>
55
+ <!--End of Navigation Panel-->
56
+
57
+ <H1><A NAME="SECTION003600000000000000000">
58
+ $B<ANLN.@~4X?t(B</A>
59
+ </H1>
60
+
61
+ $B;D:9=[4D$N<ANLN.@~4X?t(B <IMG
62
+ WIDTH="27" HEIGHT="17" ALIGN="BOTTOM" BORDER="0"
63
+ SRC="img49.png"
64
+ ALT="$ \Psi^*$"> $B$r(B
65
+
66
+ <DIV ALIGN="CENTER"><!-- MATH
67
+ \begin{subequations}
68
+ \begin{align}
69
+ \sigma \overline{v}^* &= -g\Dinv{2\pi a \cos\phi }\DP{\Psi^*}{z^{*}}, \\
70
+ \sigma \overline{w}^* &= g\Dinv{2\pi a^2\cos\phi}\DP{\Psi^*}{\phi}
71
+ \end{align}
72
+ \end{subequations}
73
+ -->
74
+ <TABLE CELLPADDING="0" WIDTH="100%" ALIGN="CENTER">
75
+ <TR VALIGN="MIDDLE">
76
+ <TD NOWRAP ALIGN="CENTER"><IMG
77
+ WIDTH="555" HEIGHT="98" ALIGN="BOTTOM" BORDER="0"
78
+ SRC="img50.png"
79
+ ALT="\begin{subequations}\begin{align}
80
  \sigma \overline{v}^* &amp;= -g\Dinv{2\pi a \cos\...
81
+ ...w}^* &amp;= g\Dinv{2\pi a^2\cos\phi}\DP{\Psi^*}{\phi}
1
82
  \end{align}\end{subequations}"></TD></TR>
83
+ </TABLE></DIV>
84
+ <BR CLEAR="ALL">
85
+ $B$HDj5A$9$k(B.
86
+ $B>e<0$r@QJ,$7$F(B <IMG
87
+ WIDTH="27" HEIGHT="17" ALIGN="BOTTOM" BORDER="0"
88
+ SRC="img49.png"
89
+ ALT="$ \Psi^*$"> $B$r5a$a$k$?$a$K(B,
90
+ $BK\%b%8%e!<%k$G$O(B (<A HREF="node4.html#eq:logp"><IMG ALIGN="BOTTOM" BORDER="1" ALT="[*]" SRC="crossref.png"></A>) $B$r;HMQ$7$F(B
91
+ $BBP?t05NO:BI8(B (<IMG
92
+ WIDTH="22" HEIGHT="16" ALIGN="BOTTOM" BORDER="0"
93
+ SRC="img3.png"
94
+ ALT="$ z^*$">) $B7O$+$i05NO:BI8(B(<IMG
95
+ WIDTH="14" HEIGHT="33" ALIGN="MIDDLE" BORDER="0"
96
+ SRC="img14.png"
97
+ ALT="$ p$">)$B7O$X(B
98
+ <P></P>
99
+ <DIV ALIGN="CENTER"><TABLE CELLPADDING="0" WIDTH="100%" ALIGN="CENTER">
100
+ <TR VALIGN="MIDDLE">
101
+ <TD NOWRAP ALIGN="RIGHT"><IMG
102
+ WIDTH="59" HEIGHT="60" ALIGN="MIDDLE" BORDER="0"
103
+ SRC="img51.png"
104
+ ALT="$\displaystyle \DP{}{z^*}\Psi^*$"></TD>
105
+ <TD NOWRAP ALIGN="LEFT"><IMG
106
+ WIDTH="107" HEIGHT="60" ALIGN="MIDDLE" BORDER="0"
107
+ SRC="img52.png"
108
+ ALT="$\displaystyle = -\frac{p}{H}\DP{}{p}\Psi^*$"></TD>
109
+ <TD NOWRAP WIDTH="10" ALIGN="RIGHT">
110
+ (2.11)</TD></TR>
111
+ </TABLE></DIV>
112
+ <BR CLEAR="ALL"><P></P>
113
+ $B$HJQ49$7(B, $BBg5$>eC<(B(<IMG
114
+ WIDTH="49" HEIGHT="33" ALIGN="MIDDLE" BORDER="0"
115
+ SRC="img53.png"
116
+ ALT="$ p=0$">)$B$K$*$$$F(B <!-- MATH
117
+ $\Psi^* = 0$
118
+ -->
119
+ <IMG
120
+ WIDTH="61" HEIGHT="17" ALIGN="BOTTOM" BORDER="0"
121
+ SRC="img54.png"
122
+ ALT="$ \Psi^* = 0$"> $B$H$7$F@QJ,$7(B
123
+ <P></P>
124
+ <DIV ALIGN="CENTER"><TABLE CELLPADDING="0" WIDTH="100%" ALIGN="CENTER">
125
+ <TR VALIGN="MIDDLE">
126
+ <TD NOWRAP ALIGN="CENTER"><IMG
127
+ WIDTH="243" HEIGHT="61" ALIGN="MIDDLE" BORDER="0"
128
+ SRC="img55.png"
129
+ ALT="$\displaystyle \Psi^*(\theta, p) = \frac{2\pi a \cos\phi}{g} \int_{0}^{p}\overline{v}^*\Dd p$"></TD>
130
+ <TD NOWRAP WIDTH="10" ALIGN="RIGHT">
131
+ (2.12)</TD></TR>
132
+ </TABLE></DIV>
133
+ <BR CLEAR="ALL"><P></P>
134
+ $B$H<ANLN.@~4X?t$rF3$$$F$$$k(B.
135
+
136
+ <BR><HR>
137
+ <ADDRESS>
138
+ Tsukahara Daisuke
139
+ $BJ?@.(B17$BG/(B2$B7n(B19$BF|(B
140
+ </ADDRESS>
141
+ </BODY>
142
+ </HTML>
@@ -0,0 +1,412 @@
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/gdir.rb</title>
8
+ </head>
9
+ <body>
10
+ <h1><a name="label-0" id="label-0">class NumRu::GDir</a></h1><!-- RDLabel: "class NumRu::GDir" -->
11
+ <p>A class to represent diretories and data files for GPhys.</p>
12
+ <h2><a name="label-1" id="label-1">Overview</a></h2><!-- RDLabel: "Overview" -->
13
+ <p>A GDir object represents a directory, or a file (such as a NetCDF
14
+ file or GrADS control file), for which
15
+ GPhys objects can be defined for the variables in it.
16
+ This means that a NetCDF file, for example, is treated a
17
+ directory, rather than a plain file.</p>
18
+ <p>GDir serves a directory tree under a root (top) directory, which can
19
+ be set as a class variable with <a href="#label-3">GDir.top=</a>. All the absolute path
20
+ of GDir is actually relative to the root directory, and to access
21
+ outside the root directory is prohibited. Furthermore, it has a
22
+ working directory as a class variable, whose initial value is the top
23
+ directory and can be changed by <a href="#label-8">GDir.cd</a>.</p>
24
+ <p>NEW(2005/06): Now GDir can accept DODS URL as a path. Also,
25
+ the top directory can be set to a DODS URL.</p>
26
+ <h2><a name="label-2" id="label-2">Class Methods</a></h2><!-- RDLabel: "Class Methods" -->
27
+ <dl>
28
+ <dt><h4><a name="label-3" id="label-3"><code>GDir.top=(<var>top</var>)</code></a></h4></dt><!-- RDLabel: "GDir.top=" -->
29
+ <dd>
30
+ <p>Sets the root directory. This should be done before making
31
+ any GDir objects by <a href="#label-5">GDir.new</a>. The default root directory
32
+ is the root directory of the local file system ('/').</p>
33
+ <p>ARGUMENTS</p>
34
+ <ul>
35
+ <li><var>top</var> (String): path of the top directory</li>
36
+ </ul>
37
+ <p>RETURN VALUE</p>
38
+ <ul>
39
+ <li>absolute path of the top directory (String) (followed by a '/')</li>
40
+ </ul></dd>
41
+ <dt><h4><a name="label-4" id="label-4"><code>GDir.top</code></a></h4></dt><!-- RDLabel: "GDir.top" -->
42
+ <dd>
43
+ RETURN VALUE
44
+ <ul>
45
+ <li>absolute path of the top directory (String) (followed by a '/')</li>
46
+ </ul></dd>
47
+ <dt><h4><a name="label-5" id="label-5"><code>GDir.new(<var>path</var>)</code></a></h4></dt><!-- RDLabel: "GDir.new" -->
48
+ <dd>
49
+ <p>Constructor.</p>
50
+ <p>ARGUMENTS</p>
51
+ <ul>
52
+ <li><var>path</var> (String): path of the directory to open as a GDir.
53
+ The path is expressed in terms of the top directory.</li>
54
+ </ul>
55
+ <p>RETURN VALUE</p>
56
+ <ul>
57
+ <li>a GDir</li>
58
+ </ul>
59
+ <p>ERRORS</p>
60
+ <ul>
61
+ <li>ArgumentError if <var>path</var> is out of the directory
62
+ tree (originated at the top directory).</li>
63
+ </ul>
64
+ <p>EXAMPLES</p>
65
+ <ul>
66
+ <li><p>If the top directory is "/hoge", you can open
67
+ "/hoge/ho" directory by any of the following.</p>
68
+ <pre>gdir = GDir.new("/ho")
69
+ gdir = GDir.new("./ho")</pre>
70
+ <p>If you want to open "/hoge" (the top directly), then</p>
71
+ <pre>gdir = GDir.new("/")
72
+ gdir = GDir.new(".")</pre>
73
+ <p>To open a NetCDF file or GrADS control file,</p>
74
+ <pre>gdir = GDir.new("/ho/data.nc")
75
+ gdir = GDir.new("/ho/data.ctl")</pre></li>
76
+ </ul></dd>
77
+ <dt><h4><a name="label-6" id="label-6"><code>GDir.set_text_pattern(*<var>regexps</var>)</code></a></h4></dt><!-- RDLabel: "GDir.set_text_pattern" -->
78
+ <dd>
79
+ <p>Sets regular expressions to match the file name of text files.
80
+ The default is /\.txt$/ and /^\w*$/.</p>
81
+ <p>ARGUMENTS</p>
82
+ <ul>
83
+ <li>zero or more Regular expressions (zero means no file will be treated
84
+ as a NetCDF file).</li>
85
+ </ul>
86
+ <p>RETURN VALUE</p>
87
+ <ul>
88
+ <li>nil</li>
89
+ </ul>
90
+ <p>ERRORS</p>
91
+ <ul>
92
+ <li>TypeError if any of the arguments is not a Regexp</li>
93
+ </ul></dd>
94
+ <dt><h4><a name="label-7" id="label-7"><code>GDir.add_text_pattern(<var>regexp</var> [, <var>regexp</var> [, ...]])</code></a></h4></dt><!-- RDLabel: "GDir.add_text_pattern" -->
95
+ <dd>
96
+ <p>Similar to <a href="#label-6">GDir.set_text_pattern</a>, but adds regular expressions
97
+ instead of replacing existing ones.</p>
98
+ <p>RETURN VALUE</p>
99
+ <ul>
100
+ <li>nil</li>
101
+ </ul>
102
+ <p>ERRORS</p>
103
+ <ul>
104
+ <li>TypeError if any of the arguments is not a Regexp</li>
105
+ </ul></dd>
106
+ <dt><h4><a name="label-8" id="label-8"><code>GDir.cd(<var>path</var>)</code></a></h4></dt><!-- RDLabel: "GDir.cd" -->
107
+ <dd>
108
+ <p>Changes the working directory of the class.</p>
109
+ <p>RETURN VALUE</p>
110
+ <ul>
111
+ <li>a GDir</li>
112
+ </ul></dd>
113
+ <dt><h4><a name="label-9" id="label-9"><code>GDir.cwd=(<var>path</var>)</code></a></h4></dt><!-- RDLabel: "GDir.cwd=" -->
114
+ <dd>
115
+ Aliased to <a href="#label-8">GDir.cd</a>.</dd>
116
+ <dt><h4><a name="label-10" id="label-10"><code>GDir.cwd</code></a></h4></dt><!-- RDLabel: "GDir.cwd" -->
117
+ <dd>
118
+ <p>Returns the current working directory as a GDir. The initial value of
119
+ the working directory is the top directory.</p>
120
+ <p>RETURN VALUE</p>
121
+ <ul>
122
+ <li>a GDir</li>
123
+ </ul></dd>
124
+ <dt><h4><a name="label-11" id="label-11"><code>GDir.cd(<var>path</var>)</code></a></h4></dt><!-- RDLabel: "GDir.cd" -->
125
+ <dd>
126
+ <p>Changes the working directory to path</p>
127
+ <p>RETURN VALUE</p>
128
+ <ul>
129
+ <li>a GDir (current working directory changed by path)</li>
130
+ </ul></dd>
131
+ <dt><h4><a name="label-12" id="label-12"><code>GDir[]</code></a></h4></dt><!-- RDLabel: "GDir[]" -->
132
+ <dt><h4><a name="label-13" id="label-13"><code>GDir.data</code></a></h4></dt><!-- RDLabel: "GDir.data" -->
133
+ <dt><h4><a name="label-14" id="label-14"><code>GDir.text</code></a></h4></dt><!-- RDLabel: "GDir.text" -->
134
+ <dt><h4><a name="label-15" id="label-15"><code>GDir.list_dirs</code></a></h4></dt><!-- RDLabel: "GDir.list_dirs" -->
135
+ <dt><h4><a name="label-16" id="label-16"><code>GDir.list_dirs_v</code></a></h4></dt><!-- RDLabel: "GDir.list_dirs_v" -->
136
+ <dt><h4><a name="label-17" id="label-17"><code>GDir.list_data</code></a></h4></dt><!-- RDLabel: "GDir.list_data" -->
137
+ <dt><h4><a name="label-18" id="label-18"><code>GDir.list_data_v</code></a></h4></dt><!-- RDLabel: "GDir.list_data_v" -->
138
+ <dt><h4><a name="label-19" id="label-19"><code>GDir.list_texts</code></a></h4></dt><!-- RDLabel: "GDir.list_texts" -->
139
+ <dt><h4><a name="label-20" id="label-20"><code>GDir.list_texts_v</code></a></h4></dt><!-- RDLabel: "GDir.list_texts_v" -->
140
+ <dt><h4><a name="label-21" id="label-21"><code>GDir.ls</code></a></h4></dt><!-- RDLabel: "GDir.ls" -->
141
+ <dt><h4><a name="label-22" id="label-22"><code>GDir.ls_v</code></a></h4></dt><!-- RDLabel: "GDir.ls_v" -->
142
+ <dd>
143
+ All of these are dispatched to the current working directory.
144
+ Thus, GDir.show is equivalent to GDir.cwd.show, for example.</dd>
145
+ </dl>
146
+ <h2><a name="label-23" id="label-23">Instance Methods</a></h2><!-- RDLabel: "Instance Methods" -->
147
+ <dl>
148
+ <dt><h4><a name="label-24" id="label-24"><code>close</code></a></h4></dt><!-- RDLabel: "close" -->
149
+ <dd>
150
+ Closes the file/directory objects in the GDir.</dd>
151
+ <dt><h4><a name="label-25" id="label-25"><code>path</code></a></h4></dt><!-- RDLabel: "path" -->
152
+ <dd>
153
+ <p>Returns the path (relative to the top directory)</p>
154
+ <p>RETURN VALUE</p>
155
+ <ul>
156
+ <li>a String</li>
157
+ </ul></dd>
158
+ <dt><h4><a name="label-26" id="label-26"><code>name</code></a></h4></dt><!-- RDLabel: "name" -->
159
+ <dd>
160
+ <p>Name of the GDir</p>
161
+ <p>RETURN VALUE</p>
162
+ <ul>
163
+ <li>a String</li>
164
+ </ul></dd>
165
+ <dt><h4><a name="label-27" id="label-27"><code>inspect</code></a></h4></dt><!-- RDLabel: "inspect" -->
166
+ <dd>
167
+ <p>Returns the path</p>
168
+ <p>RETURN VALUE</p>
169
+ <ul>
170
+ <li>a String</li>
171
+ </ul></dd>
172
+ <dt><h4><a name="label-28" id="label-28"><code>[<var>path</var>]</code></a></h4></dt><!-- RDLabel: "[]" -->
173
+ <dd>
174
+ <p>Returns a GDir, GPhys, or File (text), by calling
175
+ <a href="#label-29">dir</a>, <a href="#label-30">data</a>, or <a href="#label-31">text</a> depending on path.</p>
176
+ <p>ARGUMENTS</p>
177
+ <ul>
178
+ <li><var>path</var> (String): Either relative or absolute.</li>
179
+ </ul>
180
+ <p>RETURN VALUE</p>
181
+ <ul>
182
+ <li>a GDir, GPhys, or File (text assumed)</li>
183
+ </ul>
184
+ <p>ERROR</p>
185
+ <ul>
186
+ <li>an exception is raised if <var>path</var> is not appropriate.</li>
187
+ </ul></dd>
188
+ <dt><h4><a name="label-29" id="label-29"><code>dir(<var>path</var>)</code></a></h4></dt><!-- RDLabel: "dir" -->
189
+ <dd>
190
+ <p>Returns a GDir specified the <var>path</var>.</p>
191
+ <p>ARGUMENTS</p>
192
+ <ul>
193
+ <li><var>path</var> (String): Either relative or absolute.</li>
194
+ </ul>
195
+ <p>RETURN VALUE</p>
196
+ <ul>
197
+ <li>a GDir</li>
198
+ </ul>
199
+ <p>ERROR</p>
200
+ <ul>
201
+ <li>an exception is raised if <var>path</var> is invalid as a GDir.</li>
202
+ </ul></dd>
203
+ <dt><h4><a name="label-30" id="label-30"><code>data(<var>path</var>)</code></a></h4></dt><!-- RDLabel: "data" -->
204
+ <dd>
205
+ <p>Returns a GPhys specified the <var>path</var>.</p>
206
+ <p>ARGUMENTS</p>
207
+ <ul>
208
+ <li><var>path</var> (String): Either relative or absolute.</li>
209
+ </ul>
210
+ <p>RETURN VALUE</p>
211
+ <ul>
212
+ <li>a GPhys</li>
213
+ </ul>
214
+ <p>ERROR</p>
215
+ <ul>
216
+ <li>an exception is raised if <var>path</var> is invalid as a GPhys.</li>
217
+ </ul></dd>
218
+ <dt><h4><a name="label-31" id="label-31"><code>text(<var>path</var>)</code></a></h4></dt><!-- RDLabel: "text" -->
219
+ <dd>
220
+ <p>Returns a text file object specified the <var>path</var>.</p>
221
+ <p>ARGUMENTS</p>
222
+ <ul>
223
+ <li><var>path</var> (String): Either relative or absolute.</li>
224
+ </ul>
225
+ <p>RETURN VALUE</p>
226
+ <ul>
227
+ <li>a File</li>
228
+ </ul>
229
+ <p>ERROR</p>
230
+ <ul>
231
+ <li>an exception is raised if <var>path</var> is invalid as a text file
232
+ (based on the pattern: see above).</li>
233
+ </ul></dd>
234
+ <dt><h4><a name="label-32" id="label-32"><code>find_dir( <var>filt</var> )</code></a></h4></dt><!-- RDLabel: "find_dir" -->
235
+ <dd>
236
+ <p>Recursively search a GDir whose name match <var>filt</var>..</p>
237
+ <p>ARGUMENTS</p>
238
+ <ul>
239
+ <li><var>filt</var> (Regexp or String) If String, converted to Regexp
240
+ with Regexp.new(filt).</li>
241
+ </ul>
242
+ <p>RETURN VALUE</p>
243
+ <ul>
244
+ <li>an Array holding pathes (String) that matched.</li>
245
+ </ul></dd>
246
+ <dt><h4><a name="label-33" id="label-33"><code>find_data( <var>name</var>=<var>nil</var>,<var>long_name</var>=<var>nil</var>,<var>units</var>=<var>nil</var> )</code></a></h4></dt><!-- RDLabel: "find_data" -->
247
+ <dd>
248
+ <p>Recursively search data variables under the directory.
249
+ Mathces are by taking "AND" for non-nil arguments.
250
+ (At least one of the three arguments must be non-nil.)</p>
251
+ <p>ARGUMENTS</p>
252
+ <ul>
253
+ <li><var>name</var> (Regexp or String or nil) Variable name. If String,
254
+ converted to Regexp with Regexp.new(name).</li>
255
+ <li><var>long_name</var> (Regexp or String or nil) long_name. If String,
256
+ converted to Regexp with Regexp.new(long_name).</li>
257
+ <li><var>long_name</var> (Units or String or nil) long_name. If String,
258
+ converted to Units with Units.new(units).</li>
259
+ </ul>
260
+ <p>RETURN VALUE</p>
261
+ <ul>
262
+ <li>an Array holding the path and variable name that matched
263
+ (two-element Array of String; [path, variable_name] ).</li>
264
+ </ul></dd>
265
+ <dt><h4><a name="label-34" id="label-34"><code>list_dirs(<var>path</var>=<var>nil</var>)</code></a></h4></dt><!-- RDLabel: "list_dirs" -->
266
+ <dd>
267
+ <p>Returns the names of the directories.</p>
268
+ <p>See also <a href="#label-40">ls</a>.</p>
269
+ <p>ARGUMENTS</p>
270
+ <ul>
271
+ <li><var>path</var> (nil or String): if nil, the method is applied to the
272
+ current directory. If specified, listing is made for the directory
273
+ designated by it. Either relative or absolute.</li>
274
+ </ul>
275
+ <p>RETURN VALUE</p>
276
+ <ul>
277
+ <li>an Array of String</li>
278
+ </ul></dd>
279
+ <dt><h4><a name="label-35" id="label-35"><code>list_dirs_v(<var>path</var>=<var>nil</var>)</code></a></h4></dt><!-- RDLabel: "list_dirs_v" -->
280
+ <dd>
281
+ <p>Verbose version of <a href="#label-34">list_dirs</a>, showing size and mtime like 'ls -l'.</p>
282
+ <p>See also <a href="#label-43">ls_l</a>.</p>
283
+ <p>ARGUMENTS</p>
284
+ <ul>
285
+ <li>See <a href="#label-34">list_dirs</a>.</li>
286
+ </ul>
287
+ <p>RETURN VALUE</p>
288
+ <ul>
289
+ <li><p>an Array of String</p>
290
+ <p>Example of a string:</p>
291
+ <pre>275492 Apr 12 19:15 hogehoge_data.nc/</pre></li>
292
+ </ul></dd>
293
+ <dt><h4><a name="label-36" id="label-36"><code>list_data(<var>path</var>=<var>nil</var>)</code></a></h4></dt><!-- RDLabel: "list_data" -->
294
+ <dd>
295
+ <p>Returns the names of the data (variables on which GPhys objects
296
+ can be defined.) Returns a non-empty array if the GDir (current
297
+ or at the path) is actually a file recognized by GPhys (i.e.,
298
+ NetCDF or GrADS control file).</p>
299
+ <p>ARGUMENTS</p>
300
+ <ul>
301
+ <li><var>path</var> (nil or String): if nil, the method is applied to the
302
+ current directory. If specified, listing is made for the directory
303
+ designated by it. Either relative or absolute.</li>
304
+ </ul>
305
+ <p>RETURN VALUE</p>
306
+ <ul>
307
+ <li>an Array of String</li>
308
+ </ul></dd>
309
+ <dt><h4><a name="label-37" id="label-37"><code>list_data_v(<var>path</var>=<var>nil</var>)</code></a></h4></dt><!-- RDLabel: "list_data_v" -->
310
+ <dd>
311
+ <p>Verbose version of <a href="#label-36">list_data</a>, showing shape, long_name,
312
+ and units.</p>
313
+ <p>See also <a href="#label-43">ls_l</a>.</p>
314
+ <p>ARGUMENTS</p>
315
+ <ul>
316
+ <li>See <a href="#label-36">list_data</a>.</li>
317
+ </ul>
318
+ <p>RETURN VALUE</p>
319
+ <ul>
320
+ <li><p>an Array of String</p>
321
+ <p>Example of a string:</p>
322
+ <pre>u [lon=120,lat=120,z=40,t=73] 'x components of velocity' (m/s)</pre></li>
323
+ </ul></dd>
324
+ <dt><h4><a name="label-38" id="label-38"><code>list_texts(<var>path</var>=<var>nil</var>)</code></a></h4></dt><!-- RDLabel: "list_texts" -->
325
+ <dd>
326
+ <p>Returns the names of the text files.
327
+ Whether a file is a text file or not is judged based on the
328
+ name of the file: That matched the predefined patters is
329
+ judged as a text file regardless whether it is really so.
330
+ The default pattern is /\.txt$/ and /^\w*$/. The patterns
331
+ can be customized by <!-- Reference, RDLabel "set_text_patterns" doesn't exist --><em class="label-not-found">set_text_patterns</em><!-- Reference end --> or
332
+ <!-- Reference, RDLabel "add_text_patterns" doesn't exist --><em class="label-not-found">add_text_patterns</em><!-- Reference end -->.</p>
333
+ <p>ARGUMENTS</p>
334
+ <ul>
335
+ <li><var>path</var> (nil or String): if nil, the method is applied to the
336
+ current directory. If specified, listing is made for the directory
337
+ designated by it. Either relative or absolute.</li>
338
+ </ul>
339
+ <p>RETURN VALUE</p>
340
+ <ul>
341
+ <li>an Array of String</li>
342
+ </ul></dd>
343
+ <dt><h4><a name="label-39" id="label-39"><code>list_texts_v(<var>path</var>=<var>nil</var>)</code></a></h4></dt><!-- RDLabel: "list_texts_v" -->
344
+ <dd>
345
+ <p>Verbose version of <a href="#label-38">list_texts</a>, showing size and mtime like 'ls -l'.</p>
346
+ <p>See also <a href="#label-43">ls_l</a>.</p>
347
+ <p>ARGUMENTS</p>
348
+ <ul>
349
+ <li>See <a href="#label-38">list_texts</a>.</li>
350
+ </ul>
351
+ <p>RETURN VALUE</p>
352
+ <ul>
353
+ <li>an Array of String</li>
354
+ </ul></dd>
355
+ <dt><h4><a name="label-40" id="label-40"><code>ls(<var>path</var>=<var>nil</var>)</code></a></h4></dt><!-- RDLabel: "ls" -->
356
+ <dd>
357
+ <p>Prints the results of <a href="#label-34">list_dirs</a>, <a href="#label-36">list_data</a>, and
358
+ <a href="#label-38">list_texts</a> on the standard output.</p>
359
+ <p>RETURN VALUE</p>
360
+ <ul>
361
+ <li>nil</li>
362
+ </ul></dd>
363
+ <dt><h4><a name="label-41" id="label-41"><code>each_dir</code></a></h4></dt><!-- RDLabel: "each_dir" -->
364
+ <dd>
365
+ Iterator for each directory (GDir) under self.</dd>
366
+ <dt><h4><a name="label-42" id="label-42"><code>each_data</code></a></h4></dt><!-- RDLabel: "each_data" -->
367
+ <dd>
368
+ Iterator for each GPhys under self.</dd>
369
+ <dt><h4><a name="label-43" id="label-43"><code>ls_l(<var>path</var>=<var>nil</var>)</code></a></h4></dt><!-- RDLabel: "ls_l" -->
370
+ <dd>
371
+ <p>Verbose version of <a href="#label-40">ls</a>.
372
+ Prints the results of <a href="#label-35">list_dirs_v</a>, <a href="#label-37">list_data_v</a>, and
373
+ <a href="#label-39">list_texts_v</a> on the standard output.</p>
374
+ <p>RETURN VALUE</p>
375
+ <ul>
376
+ <li>nil</li>
377
+ </ul></dd>
378
+ <dt><h4><a name="label-44" id="label-44"><code>mtime</code></a></h4></dt><!-- RDLabel: "mtime" -->
379
+ <dd>
380
+ <p>Returns the last modified time.</p>
381
+ <p>RETURN VALUE</p>
382
+ <ul>
383
+ <li>a Time</li>
384
+ </ul></dd>
385
+ <dt><h4><a name="label-45" id="label-45"><code>atime</code></a></h4></dt><!-- RDLabel: "atime" -->
386
+ <dd>
387
+ <p>Returns the last accessed time.</p>
388
+ <p>RETURN VALUE</p>
389
+ <ul>
390
+ <li>a Time</li>
391
+ </ul></dd>
392
+ <dt><h4><a name="label-46" id="label-46"><code>ctime</code></a></h4></dt><!-- RDLabel: "ctime" -->
393
+ <dd>
394
+ <p>Returns ctime.</p>
395
+ <p>RETURN VALUE</p>
396
+ <ul>
397
+ <li>a Time</li>
398
+ </ul></dd>
399
+ <dt><h4><a name="label-47" id="label-47"><code>mtime_like_ls_l</code></a></h4></dt><!-- RDLabel: "mtime_like_ls_l" -->
400
+ <dd>
401
+ <p>Returns the last modified time formated as in ls -l.
402
+ That is, if the time of last modification is greater than
403
+ six months ago, it is shown in the format 'month date year';
404
+ otherwise, 'month date time'.</p>
405
+ <p>RETURN VALUE</p>
406
+ <ul>
407
+ <li>a String.</li>
408
+ </ul></dd>
409
+ </dl>
410
+
411
+ </body>
412
+ </html>