找回密码
 注册
关于网站域名变更的通知
查看: 603|回复: 1
打印 上一主题 下一主题

麻烦大神指点一下如何定义这个rhum, 成为一个合适的矩阵z?非常感谢!

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-6-4 13:17 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x

- S' `! ^6 U5 b' T- @! j5 K5 y
- r  A1 [6 S' a) F) ^$ F$ v% Bclear
" z% G/ K) m, |0 e1 p* S8 wncinfo('rhum.mon.mean.nc');2 N& \7 _8 p8 j, s' r% I3 b
y_len=60;
5 w9 B! w. j8 G+ {3 o7 xt_len=854;: k# Z; P3 C9 q3 x
z_index=7
) g+ g9 j1 V* F, h% K. tx_index=120
* x5 u% i( `# u. ]1 D& Qx = ncread('rhum.mon.mean.nc','lon');%x8 X& g; E8 X' U
z = ncread('rhum.mon.mean.nc', 'level');%z
' j1 @; P* w2 `- |y = ncread('rhum.mon.mean.nc', 'lat');%y
9 Y# ?* X! m5 S6 l& V4 yt = ncread('rhum.mon.mean.nc', 'time');%t
: U' t6 N$ \2 ^rhum = ncread('rhum.mon.mean.nc', 'rhum');( j! z% B% t2 H  V# n1 E
figure; hold on;" y% \" E! m5 Q
for i = 30:y_len+ \/ i/ @+ A$ A! l% t0 v& e- n+ L1 K
  for j=10:t_len
* u) o, {0 F. e/ o' P2 C[ii,jj]=meshgrid(j,i)
$ W1 r$ p% K" k$ e% e* W0 Sarray(i,j)=rhum(x_index,i,z_index,j);
& x, q# p' a+ wcontour(i,j,z,[rhum(x_index,i,z_index,j)])
6 z) [- s: R) r" Q  end
. S: s6 o4 J, J9 m) S7 T; Hend
! e# H3 O2 D5 `6 O2 F/ T0 R& T. F9 z" s( N) V  q
错误使用 contour (line 84)
2 s) L8 E9 @1 s( S3 _3 z" fZ 的大小必须为 2x2 或更大。% {& |1 F; L) q! E
% O8 N1 K  N$ j: ?# g/ Y6 f' Y6 V

# @8 v; b% S' C/ m" M这个contour函数里 i,j很好定义,主要这是这个rhum,也就是contour里的矩阵z,rhum现在是固定两维,两个自变量。麻烦大神指点一下如何定义这个rhum, 成为一个合适的矩阵z?非常感谢!
  • TA的每日心情
    开心
    2019-11-20 15:05
  • 签到天数: 2 天

    [LV.1]初来乍到

    2#
    发表于 2020-6-4 14:33 | 只看该作者
    for i = 30:y_len" z/ ], \, s7 S9 u0 e
      for j=10:t_len& o, t7 O  N5 x( K: g
    [ii,jj]=meshgrid(j,i)
    " B# h  F, n. {; @! U  G8 U1 w3 Qarray(i,j)=rhum(x_index,i,z_index,j);: U0 M4 N$ f0 _5 W1 ^
    contour(i,j,z,[rhum(x_index,i,z_index,j)])4 A0 E. S; {% t8 s# V
      end
    0 ~$ K' w3 s9 |1 K, C% e" }end* s& }" h5 c$ P  ~" U

    ; E0 Y; Y5 v$ H. ?) i这里不对,不应在循环里面嵌套contour,因为对循环每一步而言,i和j都只有一个数值,meshgrid不能把它们展开成矩阵,而且contour(i,j,z)里面的这个z也没赋过值。( J9 Y0 x$ s3 @% @$ ?
    举个正确用法的例子,循环每一步计算Z的一个元素,全部计算完毕后,用meshgrid把横纵坐标向量展开成矩阵,最后在循环外面用contour绘图
    9 ]0 D% n- s5 E1 A9 q$ ^2 |" zdraw_x = 1:1/4:7;
    ( g  W. |( p" @2 p% }draw_y = 2:1/3:6;
    6 y" ]1 g; H" s6 U; Vf = @(x,y) x.^(exp( -y.^2/50 ));
    7 d1 q2 O4 T& m; Ofor ii = 1:1:numel(draw_x)
    , Q/ k9 g/ F: T) B" b; S' F& @7 d" I    for jj = 1:1:numel(draw_y)
    + v7 X& g8 g( `. ?        Z(jj,ii) = f(draw_x(ii),draw_y(jj));: N, ~! T2 t! O& K
        end4 [. d" N% b  U- q! m7 [
    end7 u% U- t  V6 M& J) @
    [draw_x,draw_y] = meshgrid(draw_x,draw_y);
    & I( \/ l2 h) m8 N, x( h+ W. Ycontour (draw_x,draw_y,Z);
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-11-5 15:24 , Processed in 0.156250 second(s), 24 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

    快速回复 返回顶部 返回列表