[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[dennou-ruby:003456] Re: 質量流線関数の描画



堀之内です.追伸.
σ座標の連続の式のzonal meanは,おそらく子午面で
非発散の形で表せないのでは? (log PS の移流項における
水平風の鉛直シアーが邪魔になって.) その場合,子午面
流線関数は定義できないことになります.

> 岡山大石岡さま:
> 
> 鉛直staggered grid なら数値積分法はこれが正解でしょうね.
> p はゼロのほうからやってます? (たぶんそのほうがいい.)
> 
> σレベルでやってますが,各時刻各点での PS を使ってるのは良いですね.
> ただ,σレベルで平均すると,異なる P のデータを重ねることになります.
> 低気圧・高低気圧で微妙に異なる P のデータを重ねることになりますから,
> P 座標に補間した上で平均するのと結果は異なるでしょう.どれくらい
> かはわかりませんが,傾圧波が卓越するところではそれなりに違ってもおか
> しくないと思います.
> 
> # あと,もちろん地形がある場合σレベルで平均したくないですね.
> 
> > 堀之内様,
> > 
> > 石岡 @岡山大です.
> > 
> > 以下のような子午面の質量流線関数の絵を描く
> > スクリプトができました.
> > ありがとうございます.
> > 
> > 
> > --- ここから ---
> > # mass stream function
> > # 質量流線関数
> > #
> > 
> > require 'numru/ggraph'
> > require 'numru/gphys'
> > include NumRu
> > include Math
> > 
> > # file open
> > vwind = GPhys::IO.open( "V.nc", "V")
> > ps = GPhys::IO.open( "Ps.nc", "Ps")
> > sigdot = GPhys::IO.open( "SigDot.nc", "SigDot")
> > 
> > #
> > usetime = { 'time'=>1340..1440 }
> > vwind = vwind.cut(usetime)
> > ps = ps.cut(usetime)
> > sigdot = sigdot.cut(usetime).mean('lon','time')
> > 
> > # constant
> > grav = UNumeric[9.8, "m.s-2"]
> > a = UNumeric[6400000.0, "m"]
> > 
> > #
> > sgm = sigdot.axis("sigm").to_gphys
> > sgm = NArray.to_na(sgm.to_a)
> > 
> > psi = sigdot.copy
> > psi[false] = 0
> > psi.units = 'kg.s-1'
> > psi.long_name = 'mass stream function'
> > 
> > cos_phi = ( vwind.axis("lat").to_gphys * (PI/180.0) ).cos
> > alph = vwind * cos_phi * ps * a * PI * 2 / grav 
> > 
> > alph = alph.mean('lon','time')
> > for i in 0..15
> >   k = 15-i
> >   psi[true,k] = psi[true,k+1] + alph[true,k] * (sgm[k] - sgm[k+1]) 
> > end
> > 
> > # DCL
> > DCL.gropn(1)
> > DCL.sgpset('lcntl',false)
> > DCL.uzfact(0.7)
> > 
> > # GGraph
> > GGraph.tone( psi, true, "nlev"=>2 )
> > GGraph.contour( psi, false)
> > 
> > DCL.grcls
> > 
> > --- ここまで ---
> > 
> > 
> > (2011/12/09 13:01), Takeshi Horinouchi wrote:
> > > 岡山大石岡さま:
> > >
> > > 了解です.詰まったら遠慮なく相談してください.
> > >
> > > # 詰まらなくても,定義はこれこれですとか,数値的にはこんな風にやって
> > >    みようと思いますなど,適宜実況中継してくれてかまいません.
> > >
> > >> 堀之内様,
> > >>
> > >> 石岡 @岡山大です.
> > >>
> > >> 返信ありがとうございます.
> > >> 無いようなので, こちらで作ってみようと思います.
> > >>
> > >>
> > >> (2011/12/08 23:57), Takeshi Horinouchi wrote:
> > >>> 堀之内です.
> > >>>
> > >>> 子午面の,ですね.
> > >>> ないですが,計算は簡単ですよね.(10行程度.私自身も
> > >>> 計算したりはしてます...) 
> > >>>
> > >>> # もしかして,どうやって計算するのがいいか迷ってる? 
> > >>>    なら,演習問題としてやってください.
> > >>>
> > >>>> 石岡 @岡山大です.
> > >>>>
> > >>>> GPhys について質問させてください.
> > >>>>
> > >>>> dcpam で計算された結果を使って質量流線関数の
> > >>>> 図を作りたいのですが, GPhys に質量流線関数を
> > >>>> 計算するようなメソッドなどはないでしょうか.
> > >>>>
> > >>>> もしありましたら教えていただけないでしょうか.
> > >>>> よろしくお願いします.
> > >>>>
> > >>>> -- 
> > >>>> 岡山大学理学部
> > >>>> 地球科学科 BC4
> > >>>> 石岡 翔
> > >>>>
> > >> -- 
> > >> 岡山大学理学部
> > >> 地球科学科 BC4
> > >> 石岡 翔
> > >>
> > > 堀之内 武
> > > 北海道大学 地球環境科学研究院 地球圏科学部門
> > > 〒060-0810 札幌市北区北10条西5丁目
> > >
> > >
> > 
> > 
> > -- 
> > 岡山大学理学部
> > 地球科学科 BC4
> > 石岡 翔
> > 
> 
> 堀之内 武
> 北海道大学 地球環境科学研究院 地球圏科学部門
> 〒060-0810 札幌市北区北10条西5丁目
>